Remember this exact error message: "read error not correctable"
Seems correct to me...
This line comes BEFORE the other one, right?
[...]
No the error message really comes from MD. Can you read C code? Go into
the kernel source and look this file:
linux_source_dir/drivers/md/raid5.c
(file raid5.c is also for raid6) search for "read error not correctable"
What you see there is the reason for failure. You see the line "if
(conf->mddev->degraded)" just above? I think your mistake was that you
did the DM COW trick only on the last device, or anyway one device only,
instead you should have done it on all 3 devices which were failing.
It did not work for you because at the moment you got the read error on
the last disk, two disks were already dropped from the array, the array
was doubly degraded, and it's not possible to correct a read error if
the array is degraded because you don't have enough parity information
to recover the data for that sector.
You should have prevented also the first two disks from dropping. Do the
DM trick on all of them simultaneously, or at least on 2 of them (if you
are sure only 3 disks have problems), start the array making sure it
starts with all devices online i.e. nondegraded, then start the resync,
and I think it will work.
I don't think there is another way. You need to make this work.
Good luck
--
To unsubscribe from this list: send the line "unsubscribe linux-raid" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html