linux-stable/drivers/block/drbd
Philipp Reisner a700471bf3 drbd: abort start of resync early, if it raced with connection breakage
We've seen a spurious full resync, because a connection breakage
raced with drbd_start_resync(, C_SYNC_TARGET),
and the resulting state change request intended to start the resync
ended up looking like a local invalidate.

Fix:
Double check the state inside the lock,
and don't even request that state change,
if we had connection or IO problems.

Signed-off-by: Philipp Reisner <philipp.reisner@linbit.com>
Signed-off-by: Lars Ellenberg <lars.ellenberg@linbit.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
2013-03-28 10:10:24 -06:00
..
drbd_actlog.c drbd: consolidate as many updates as possible into one AL transaction 2013-03-22 22:18:09 -06:00
drbd_bitmap.c drbd: cleanup ondisk meta data layout calculations and defines 2013-03-22 18:13:59 -06:00
drbd_int.h drbd: consolidate as many updates as possible into one AL transaction 2013-03-22 22:18:09 -06:00
drbd_interval.c Merge branch 'drbd-8.4_ed6' into for-3.8-drivers-drbd-8.4_ed6 2012-11-09 14:20:23 +01:00
drbd_interval.h drbd: Iterate over all overlapping intervals in a tree 2011-10-14 16:47:37 +02:00
drbd_main.c drbd: prepare to queue write requests on a submit worker 2013-03-22 18:14:40 -06:00
drbd_nl.c drbd: adjust upper limit for activity log extents 2013-03-22 22:18:09 -06:00
drbd_nla.c drbd: Split off netlink mandatory attribute handling into separate file 2012-11-08 16:57:45 +01:00
drbd_nla.h drbd: Split off netlink mandatory attribute handling into separate file 2012-11-08 16:57:45 +01:00
drbd_proc.c drbd: introduce stop-sector to online verify 2012-11-09 14:05:32 +01:00
drbd_receiver.c drbd: reset ap_in_flight counter for new connections 2013-03-28 10:10:24 -06:00
drbd_req.c drbd: try hard to max out the updates per AL transaction 2013-03-22 22:18:09 -06:00
drbd_req.h drbd: fix potential protocol error and resulting disconnect/reconnect 2013-01-21 22:58:36 +01:00
drbd_state.c drbd: fix potential protocol error and resulting disconnect/reconnect 2013-01-21 22:58:36 +01:00
drbd_state.h drbd: Improved logging of state changes 2012-11-08 16:45:06 +01:00
drbd_strings.c drbd: Allow volumes to become primary only on one side 2012-11-04 00:16:31 +01:00
drbd_vli.h Fix common misspellings 2011-03-31 11:26:23 -03:00
drbd_worker.c drbd: abort start of resync early, if it raced with connection breakage 2013-03-28 10:10:24 -06:00
drbd_wrappers.h drbd: Split off netlink mandatory attribute handling into separate file 2012-11-08 16:57:45 +01:00
Kconfig drbd: update Kconfig to match current dependencies 2012-12-06 13:08:29 +01:00
Makefile drbd: Split off netlink mandatory attribute handling into separate file 2012-11-08 16:57:45 +01:00