]> git.baikalelectronics.ru Git - kernel.git/commit
md: don't set md arrays to readonly on shutdown.
authorNeilBrown <neilb@suse.de>
Mon, 19 Mar 2012 01:46:37 +0000 (12:46 +1100)
committerNeilBrown <neilb@suse.de>
Mon, 19 Mar 2012 01:46:37 +0000 (12:46 +1100)
commitd225921ace595a1f0bb5037d51eb83bdf3c9028e
treec76ff42e8f799030636d07c82879cc2bef7798db
parent097e1ac253f46b714c2684ea2b333f78381e5911
md: don't set md arrays to readonly on shutdown.

It seems that with recent kernel, writeback can still be happening
while shutdown is happening, and consequently data can be written
after the md reboot notifier switches all arrays to read-only.
This causes a BUG.

So don't switch them to read-only - just mark them clean and
set 'safemode' to '2' which mean that immediately after any
write the array will be switch back to 'clean'.

This could result in the shutdown happening when array is marked
dirty, thus forcing a resync on reboot.  However if you reboot
without performing a "sync" first, you get to keep both halves.

This is suitable for any stable kernel (though there might be some
conflicts with obvious fixes in earlier kernels).

Cc: stable@vger.kernel.org
Signed-off-by: NeilBrown <neilb@suse.de>
drivers/md/md.c