From: Lars Ellenberg Date: Tue, 24 Jul 2012 08:13:55 +0000 (+0200) Subject: drbd: take error path in drbd_adm_down if interrupted by signal X-Git-Tag: v3.8-rc1~78^2~18^2~58 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=27012382bc221a8cf6ca67ced19df699b0ba8e78;p=pandora-kernel.git drbd: take error path in drbd_adm_down if interrupted by signal drbd_adm_down() does adm_detach(), which can fail with various error codes, or be interrupted by a signal. The interrupted by signal case was not properly handled, leading to block drbd0: ASSERT( mdev->state.disk == D_DISKLESS && mdev->state.conn == C_STANDALONE ) in drbd/drbd_worker.c and further to destroying objects while still in use, and resulting crashes. Detect the interruption, and take the error path out. Signed-off-by: Philipp Reisner Signed-off-by: Lars Ellenberg --- Reading git-diff-tree failed