Re: enbd+raid5 problem
[email protected] (Peter T. Breuer)
| Newsgroups | gmane.linux.enbd.general |
|---|---|
| Message-ID | <[email protected]> |
In article <512FA669CAABD711AFC000047581AD0932AA@FORD-PREFECT> you wrote: > The problem starts when I remove one enbd-server. The raid array does not Raid does not know whether a device is there or not. It only finds out when a read or write to the device fails. The fr1 (and fr5?) patches address this problem by installing a callback mechanism into raid that allows it to tell a device when it has been inserted in a raid array, and leave it a "phone number" to phone back with when the state of the device changes significantly. > recognize that one device is missing and still marks all devices online!! > I am using the raid module provided by the kernel. Do I have to compile a > new kernel with another raid module? More or less. Module yes, kernel no. But I don't think the extra interoperability patch exists for fr5 on 2.6 ... I might be able to extract enough to get the mechanism working ... with encouragement. Ahh ... yes, the right stuff is in the fr1 patch for 2.6. I think installing the md.c part of the fr1 (not fr5) patch for 2.6 will be enough. Also md_p.h. And bitmap.h. I.e. provide bitmap support but not enable the bitmap. diffstat linux-2.6.generic.patch ./include/linux/raid/md_k.h | 6 ./include/linux/raid/md_p.h | 23 ./include/linux/raid/raid1.h | 25 + linux-2.6.8.1/drivers/md/Kconfig | 43 + linux-2.6.8.1/drivers/md/Makefile | 1 linux-2.6.8.1/drivers/md/bitmap.c | 887 ++++++++++++++++++++++++++++++++++++++ linux-2.6.8.1/drivers/md/bitmap.h | 62 ++ linux-2.6.8.1/drivers/md/md.c | 346 ++++++++++++++ linux-2.6.8.1/drivers/md/raid1.c | 519 ++++++++++++++++++++++ 9 files changed, 1905 insertions, 7 deletions I can break it out of the patch for you, again, with prompting. ftp://oboe.it.uc3m.es/pub/Programs/fr1-2.17.tgz > Did anybody have the same problem already? I could?nt find it anywhere... Presumably everyone. You might wish to suggest another mechanism to me. I guess I could raise a hotplug event and leave it to you to run raidsetfaulty off of it? Peter