|
@@ -1640,7 +1640,8 @@ static void raid1d(mddev_t *mddev)
|
|
|
}
|
|
|
|
|
|
bio = r1_bio->bios[r1_bio->read_disk];
|
|
|
- if ((disk=read_balance(conf, r1_bio)) == -1) {
|
|
|
+ if ((disk=read_balance(conf, r1_bio)) == -1 ||
|
|
|
+ disk == r1_bio->read_disk) {
|
|
|
printk(KERN_ALERT "raid1: %s: unrecoverable I/O"
|
|
|
" read error for block %llu\n",
|
|
|
bdevname(bio->bi_bdev,b),
|