which happen to have a TCB in TIME_WAIT, where an mbuf which had been
advanced past the IP+TCP headers and TCP options would be reused as if
it had not been advanced. Problem found by Juergen Hannken-Illjes, who
also suggested a work-around on which this fix is based.
- It is now possible to handle devices that want "looping" DMA,
e.g. the SoundBlaster correctly. The WSS and SB drivers use this.
To do this several new methods were introduced in audio_hw_if.
- Different silence handling (forced by previous change).
- The audio driver can now be mmap()-ed, but due to problems in
the VM system only for writing for now.
- The OSS (Linux) audio emulation takes advantage of some of the
new features.
faults. Use curpcb, which always points to the current pcb. If curproc
was NULL when the kernel faulted, the trap handling would fault recursively
and the kernel stack would overflow.
1) register variables have been killed, except for the ones in the
generated skeleton (which should probably also be killed soon).
2) __P(())ified prototypes for all functions.
3) new style __RCSID's, and #include <sys/cdefs.h>'s.
4) all warnings generated with WARNS=1 (i.e. all warnings you get from
gcc with -Wall -Wstrict-prototypes -Wmissing-prototypes) have been
fixed, although not always in the best possible way.
in particular on #4, in a couple of places I got "control reaches end
of non-void function" errors, and sadly __dead doesn't seem to really
work, so I inserted a couple of exit() calls in strategic
places. These should be nuked if someone can get __dead to Do The
Right Thing.
There were also a couple of places where "while (foo = bar)" things
cropped up and I didn't do the best conceivable thing, but I usually
did.
These fixes should probably go back to the byacc maintainers.
at least 8-). Add structure offssets for structure members, so we
know how much space we're using. Make the version in the bootinfo
structure be a u_long, so there's no implicit padding in the structure.
Add a few more pointers to the bootinfo v1 structure, which will all
be set to NULL for now.
- Allow BUGCHK and BPT instruction faults in kernel mode if DDB is enabled,
since they are used to invoke the debugger.
- Add a comment about how we'd like to invoke DDB on a trap panic condition,
in a perfect world.
pointer to boot program's bootinfo structure. If the bootinfo magic
matches, save a copy of the bootinfo structure, and use it to determine
booted kernel name, the boot flags, and the location of the kernel symbol
table. If the magic number does not match, revert to the old method
of finding this information (sans symbol table info).
- Add some additonal DDB glue.