]> git.baikalelectronics.ru Git - kernel.git/commit
md: Allow read error in a single drive raid1 to be passed up.
authorNeilBrown <neilb@suse.de>
Fri, 6 Feb 2009 04:06:47 +0000 (15:06 +1100)
committerNeilBrown <neilb@suse.de>
Fri, 6 Feb 2009 04:06:47 +0000 (15:06 +1100)
commit7f79e3733cc97f2c23d138441dbd4bd89853ad7e
tree86c0ee896722e45e324a97b704c0419fbb968d4a
parent4931a13433a21f4f80ae257d224b63fa4b60c5ce
md: Allow read error in a single drive raid1 to be passed up.

If a raid1 only has a single working device and gets a read error,
we choose to simply return that error up to the filesystem (or whatever)
rather than failing the whole array.

However the codes doesn't quite do that.  We attempt a readbalance
which allocates the same drive, so we retry the read - indefinitely.

Instead:  If read_balance in the error case chooses the same drive that just
failed, treat it as a failure and don't retry.

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