diff --git a/drivers/block/drbd/drbd_receiver.c b/drivers/block/drbd/drbd_receiver.c index 280735da1963e1af82f71014a8c1fb11ba02a794..55c359a1a05202282d03e4a42a0ee7c06abf9171 100644 --- a/drivers/block/drbd/drbd_receiver.c +++ b/drivers/block/drbd/drbd_receiver.c @@ -763,8 +763,6 @@ static int drbd_connect(struct drbd_conf *mdev) if (drbd_request_state(mdev, NS(conn, C_WF_CONNECTION)) < SS_SUCCESS) return -2; - clear_bit(DISCARD_CONCURRENT, &mdev->flags); - sock = NULL; msock = NULL; @@ -784,6 +782,7 @@ static int drbd_connect(struct drbd_conf *mdev) sock = s; s = NULL; } else if (!msock) { + clear_bit(DISCARD_CONCURRENT, &mdev->flags); drbd_send_fp(mdev, s, P_HAND_SHAKE_M); msock = s; s = NULL;