I said:
> * raid5_make_request: added a block to test for failed_disks > 1, clear
> needed flags in buffer_head and return early
> * raid5_error: a simple failed_disks > 1 check to keep the "md:
> bug in file raid5.c, line 659" from appearing
> [...]
> You can get the patch at
> http://volition.org/~tsl/raid/raid5-clean-failure.patch.gz It applies
> cleanly to linux-2.2.12 + raid0145-19990824-2.2.11, but it should apply to
> most other revisions as well.
When making this patch, I made an error and didn't include everything that
needed to be in there. I've re-made the patch, this time with one more line
in raid5_make_request, and a #if 0 changed to #if 1 in md.c. Both of these
changes are necessary to get the MD device error passed back to the calling
program as -EIO. I made a new patch which can be found in the same place:
http://volition.org/~tsl/raid/raid5-clean-failure.patch.gz
I've tested & retested this patch and it fails correctly, lets you unmount,
reboot etc. So this one should be good.
Let me know if you have any feedback.
Tom