md: md_stop_writes() should always freeze recovery.
authorNeilBrown <neilb@suse.de>
Wed, 8 May 2013 23:48:30 +0000 (09:48 +1000)
committerNeilBrown <neilb@suse.de>
Thu, 13 Jun 2013 03:18:15 +0000 (13:18 +1000)
commit6b6204ee92adb53bfd6a77cb5679282ec3820c4b
tree750f1ac85412b93fae4cca92883fd6187380bc74
parent32f9f570d04461a41bdcd5c1d93b41ebc5ce182a
md: md_stop_writes() should always freeze recovery.

__md_stop_writes() will currently sometimes freeze recovery.
So any caller must be ready for that to happen, and indeed they are.

However if __md_stop_writes() doesn't freeze_recovery, then
a recovery could start before mddev_suspend() is called, which
could be awkward.  This can particularly cause problems or dm-raid.

So change __md_stop_writes() to always freeze recovery.  This is safe
and more predicatable.

Reported-by: Brassow Jonathan <jbrassow@redhat.com>
Tested-by: Brassow Jonathan <jbrassow@redhat.com>
Signed-off-by: NeilBrown <neilb@suse.de>
drivers/md/md.c