From: Philipp Reisner Date: Fri, 1 Jul 2011 15:00:57 +0000 (+0200) Subject: drbd: Fixed state transitions in case reading meta data failes X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=9510b2411d365133ed6990d0bcb42be5876bdb66;p=linux-beck.git drbd: Fixed state transitions in case reading meta data failes Signed-off-by: Philipp Reisner Signed-off-by: Lars Ellenberg --- diff --git a/drivers/block/drbd/drbd_nl.c b/drivers/block/drbd/drbd_nl.c index 838c3cd54cdd..97d1dab045d2 100644 --- a/drivers/block/drbd/drbd_nl.c +++ b/drivers/block/drbd/drbd_nl.c @@ -1645,7 +1645,7 @@ int drbd_adm_attach(struct sk_buff *skb, struct genl_info *info) force_diskless_dec: put_ldev(mdev); force_diskless: - drbd_force_state(mdev, NS(disk, D_FAILED)); + drbd_force_state(mdev, NS(disk, D_DISKLESS)); drbd_md_sync(mdev); fail: conn_reconfig_done(mdev->tconn); diff --git a/drivers/block/drbd/drbd_state.c b/drivers/block/drbd/drbd_state.c index 2cf69b25f1e7..4c13a6f4f184 100644 --- a/drivers/block/drbd/drbd_state.c +++ b/drivers/block/drbd/drbd_state.c @@ -655,13 +655,6 @@ is_valid_transition(union drbd_state os, union drbd_state ns) if (ns.disk == D_FAILED && os.disk == D_DISKLESS) rv = SS_IS_DISKLESS; - /* if we are only D_ATTACHING yet, - * we can (and should) go directly to D_DISKLESS. */ - if (ns.disk == D_FAILED && os.disk == D_ATTACHING) { - printk("TODO: FIX ME\n"); - rv = SS_IS_DISKLESS; - } - return rv; }