needs some testing, but it seems to produce sound. The driver was written
by me, but since I don't have the hardware the debugging and testing was
done by Andreas Gustafsson <gson@araneus.fi>, Chuck Cranor
<chuck@maria.wustl.edu>, and Phil Nelson <phil@cs.wwu.edu>. Thanks.
a change marked XXX, where gcc -Wall pointed out a bit of the original
code that looked wrong. The jury's still out on whether or not it was
really wrong, but it looked _very_ suspicious.)
Reference Design NetBSD source code, obtained from the pages under
http://www.research.digital.com/SRC/iag . Some of this code (badly)
needs to be cleaned up, and as-is it doesn't compile. However, getting
it in the tree is a start.
or not rather than orring in a USER bit into the fault code variable.
This simplifies the fault switch statement and some of the addition
checks that are made of the fault code.
Move the printing of data abort information out into a separate function
rather then duplicating a lot of similar printf() statements.
Removed the fault_code variables from the prefetch abort handler as it
is not actually used for anything.
flow, by setting the "can fast forward" flag in the packet header, and
giving a chance for filters to clear the flag. If the flag is still
set after the filters have given it a chance, the packet will be used
to create a fast-forward flow entry.
later incremented correctedly, causing the wrong data to be paged out, which
then caused general lossage later when the data was paged in and the process
tried to use it. found by pk.
Page tables no longer occupy space in the processes vm_map. This
means that page tables can now be allocated from pmap_enter() when the
first entry is made in the page table rather than relying on taking
a section fault and faulting in a page table. This also lowers
the overheads in creating and deleting page tables and simplfies
cpu_fork().
A result of this change is that problems with mapping zero page and
an associated pagetable when execing from a shared vm_map disappear
fixing PR5178.
the burst size allowed, but rather a fixed number of packets, as
described in the Internet Draft. Default allowed burst is 4 packets,
per the Draft.
Make the use of CWM and the allowed burst size tunable via sysctl.