md: bad blocks shouldn't cause a Blocked status on a Faulty device.
Once a device is marked Faulty the badblocks - whether acknowledged or not - become irrelevant. So they shouldn't cause the device to be marked as Blocked. Without this patch, a process might write "-blocked" to clear the Blocked status, but while that will correctly fail the device, it won't remove the apparent 'blocked' status. Signed-off-by: NeilBrown <neilb@suse.de>
This commit is contained in:
parent
af8a24347f
commit
52c64152a9
@ -2546,7 +2546,8 @@ state_show(struct md_rdev *rdev, char *page)
|
||||
sep = ",";
|
||||
}
|
||||
if (test_bit(Blocked, &rdev->flags) ||
|
||||
rdev->badblocks.unacked_exist) {
|
||||
(rdev->badblocks.unacked_exist
|
||||
&& !test_bit(Faulty, &rdev->flags))) {
|
||||
len += sprintf(page+len, "%sblocked", sep);
|
||||
sep = ",";
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user