6ddce9039b
Overhaul of the attach/detach code and structures, there were some nasty bugs in the old implementation. This made it possible to collapse the ATA/ATAPI device control structures into one generic structure. A note here, the kernel is NOT ready for detach of active devices, it fails all over in random places, but for inactive devices it works. However for ATA RAID this works, since the RAID abstration layer insulates the buggy^H^H^H^H^H^Hfragile device subsystem from the physical disks. Proberly detect the RAID's from the BIOS, and mark critical RAID1 arrays as such, but continue if there is enough of the mirror left to do so. Properly fail arrays on a live system. For RAID0 that means return EIO, and for RAID1 it means continue on the still working part of the mirror if possible, else return EIO. If the state changes, log this to the console. Allow for Promise & Highpoint controllers/arrays to coexist on the same machine. It is not possible to distribute arrays over different makes of controllers though. If Promise SuperSwap enclosures are used, signal disk state on the status LED on the front. Misc fixes that I had lying around for various minor bugs. Sponsored by: Advanis Inc. |
||
---|---|---|
.. | ||
ata-all.c | ||
ata-all.h | ||
ata-card.c | ||
ata-disk.c | ||
ata-disk.h | ||
ata-dma.c | ||
ata-isa.c | ||
ata-pci.c | ||
ata-raid.c | ||
ata-raid.h | ||
atapi-all.c | ||
atapi-all.h | ||
atapi-cd.c | ||
atapi-cd.h | ||
atapi-fd.c | ||
atapi-fd.h | ||
atapi-tape.c | ||
atapi-tape.h |