freebsd with flexible iflib nic queues
768e8947c6
o merged and fixed timeout code from sos. o merged DOS partition support from sos. o fixed "extra" interrupts. o check if malloc retuns NULL :-(. o print drive size as in NetBSD o after an error, return the residual count, not 0. o give up early for > 16 heads. o cleaned up the old-drive detection in wdgetctlr(). o rewrote wddump(). I'd been putting this off because I'd had the dump disabled since 0.0 and had no idea if even the standard version worked. It didn't: (0) syscons' sgetc() interface broke some keyboard stuff. (1) CADDR1 is mapped using pmap() and pmap got a NULL pointer trap (at least when I got to wddump() using call diediedie from ddb) because the pte for CADDR1 is only supposed to be hacked on directly (e.g. in physcopyseg()). (2) bad144 handling was not done. (3) it was slooow (3600 sectors/minute) because my controller doesn't cache writes. o miscellaneous other cleanups, e.g., removed scattered patchkit/terry dates. o lots of reformatting. To be done: o Merge/fix TIH/NetBSD bad144 code (doesn't belong in any particular driver. Why aren't we using i386/dkbad.c?). o Merge/fix Dyson/NetBSD clustering code (large parts should be shared). o Fix/extend the partition in use bits. Support extended partitions. This should be shared by all disk drivers. Swap to a DOS partition so that the swap space can be shared with linux. o Don't use polling except for initialization. Need to reorganise the state machine. Then "extra" interrupts shouldn't happen (except maybe one for initialization). o Fix disklabel, boot and driver inconsistencies with bad144 in standard versions. o Look at latest linux clustering methods. Our disksort() gets in the way of clustering. o cleaned up the ATA changes (needs more work. I think the ATA specs say that the only thing really wrong with the original version of wx is that there was no test for drive-ready before some commands. 400 nsec delay suffices for almost everything and 400 nsec delay is usually "free"). |
||
---|---|---|
bin | ||
etc | ||
gnu | ||
include | ||
lib | ||
libexec | ||
sbin | ||
share/man/man4 | ||
sys | ||
usr.bin | ||
usr.sbin |