]> git.baikalelectronics.ru Git - kernel.git/commit
md/raid1: avoid reading known bad blocks during resync
authorNeilBrown <neilb@suse.de>
Thu, 28 Jul 2011 01:31:48 +0000 (11:31 +1000)
committerNeilBrown <neilb@suse.de>
Thu, 28 Jul 2011 01:31:48 +0000 (11:31 +1000)
commitb4d20184756cd31f458180039b24e5661eaddb6a
tree49a7f239a9c2de4bf97d998f161b229a565e33cd
parent70352d2ee297db7bf42c5867cc64aca2d4743754
md/raid1: avoid reading known bad blocks during resync

When performing resync/etc, keep the size of the request
small enough that it doesn't overlap any known bad blocks.
Devices with badblocks at the start of the request are completely
excluded.
If there is nowhere to read from due to bad blocks, record
a bad block on each target device.

Now that we never read from known-bad-blocks we can allow devices with
known-bad-blocks into a RAID1.

Signed-off-by: NeilBrown <neilb@suse.de>
drivers/md/raid1.c