aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/block
diff options
context:
space:
mode:
authorPhilipp Reisner <philipp.reisner@linbit.com>2010-11-22 08:18:47 -0500
committerPhilipp Reisner <philipp.reisner@linbit.com>2011-03-10 05:35:07 -0500
commit1fc80cf37810d6b00cac27a219b8ecab2010adac (patch)
tree9d844dcb200a49f3bb94f66238278e4827537d99 /drivers/block
parent3719094ec2dec411b3151f10048316d787e086f9 (diff)
drbd: Becoming sync target may not happen out of < C_WF_REPORT_PARAMS
This patch is acutally a necessary addendum to the patch "fix for spurious full sync (becoming sync target looked like invalidate)" Signed-off-by: Philipp Reisner <philipp.reisner@linbit.com> Signed-off-by: Lars Ellenberg <lars.ellenberg@linbit.com>
Diffstat (limited to 'drivers/block')
-rw-r--r--drivers/block/drbd/drbd_main.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/block/drbd/drbd_main.c b/drivers/block/drbd/drbd_main.c
index 14afbd4e53a5..8b8a38dc6492 100644
--- a/drivers/block/drbd/drbd_main.c
+++ b/drivers/block/drbd/drbd_main.c
@@ -800,6 +800,10 @@ static int is_valid_state_transition(struct drbd_conf *mdev,
800 os.conn < C_CONNECTED) 800 os.conn < C_CONNECTED)
801 rv = SS_NEED_CONNECTION; 801 rv = SS_NEED_CONNECTION;
802 802
803 if ((ns.conn == C_SYNC_TARGET || ns.conn == C_SYNC_SOURCE)
804 && os.conn < C_WF_REPORT_PARAMS)
805 rv = SS_NEED_CONNECTION; /* No NetworkFailure -> SyncTarget etc... */
806
803 return rv; 807 return rv;
804} 808}
805 809