This means that we will not have to have a bpf and a non-bpf version
of our driver modules.
This does not open any security hole, because the bpf core isn't loadable
The drivers left unchanged are the "cross platform" drivers where the respective
maintainers are urged to DTRT, whatever that may be.
Add a couple of missing FreeBSD tags.
for you to be told there was an error [during verbose boot].
I poked him for the fix, he poked me to get it committed.
Submitted by: Jason Young <doogie@anet-stl.com>
Enhance MIRROR code. Add a few more sanity checks and implement
a zone-based disk selector to make use of both disks when reading.
Also implement a read fail-over. If a read error occurs on one
disk, the I/O is retried on the other.
NOTE: CCD's mirroring support cannot deal with write errors properly
in regards to recovery, meaning that 'old' data under a write error may
be read non-deterministically if you reboot after a write error, and CCD
certainly cannot deal with a disk changeout. And it still can't. Use
vinum if you are really serious about mirroring. CCD basically just
implements a poor-man's mirror.
sum the total amount of I/O issued to determine when all the I/O
has completed. This fails when the EOF boundry occurs in the middle
of an I/O. Using cbp->cb_buf.b_bufsize works better.
there are stubs compiled into the kernel if BPF support is not enabled,
there aren't any problems with unresolved symbols. The modules in /modules
are compiled with BPF support enabled anyway, so the most this will do is
bloat GENERIC a little.
d_maxio is replaced by the dev->si_iosize_max field which the driver
should be set in all calls to cdevsw->d_open if it has a better
idea than the system wide default.
The field is a generic dev_t field (ie: not disk specific) so that
tapes and other devices can use physio as well.
The lun is not incremented in the ata-disk driver when ATA_STATIC_ID
is not defined, thanks to Kenneth Wayne Culver <culverk@wam.umd.edu>
for finding that one.
PHK pointed at the & problem in atapi-cd in devstat_end_transaction_buf.
Too little sleep I guess...
Phase 1) move the driver
Phase 2)
Phase 3) Profit, by splitting the driver into smaller files like
bktr_tuner, bktr_card, bktr_audio, bktr_<osname>
making it easier to maintain and understand.
declaration for the interface driver from "foo" to "if_foo" but leave the
declaration for the miibus attached to the interface driver alone. This
lets the internal module name be "if_foo" while still allowing the miibus
instances to attach to "foo."
This should allow ifconfig to autoload driver modules again without
breaking the miibus attach.
be set by a kernel conf option due to the struct buf structural
dependancy (sizing of b_pages[]) creating a conflict with modules
(which are not compiled with kernel config options overrides).
We'll be able to sysctl these two later on when the buffer subsystem
is revamped.
for the AN985 "Centaur" chip, which is apparently the next genetation
of the "Comet." The AN985 is also a tulip clone and is similar to the
AL981 except that it uses a 99C66 EEPROM and a serial MII interface
(instead of direct access to the PHY registers).
Also updated various documentation to mention the AN985 and created
a loadable module.
I don't think there are any cards that use this chip on the market yet:
the datasheet I got from ADMtek has boxes with big X's in them where the
diagrams should be, and the sample boards I got have chips without any
artwork on them.