Age | Commit message (Collapse) | Author |
|
|
|
ensure 'c' always has the correct size as the rest of the kernel
assumes. Thus prevent dd'ing causing a SCSI out-of-bounds error.
ok miod@
|
|
What happened was that the output of mkdep was fed to a sed expression
that trimmed a bit more than required and also failed to work when
attempting to do make depend with pcc.
Example:
genassym_c.o: /tmp/genassym.whatever ../../../../../sys/param.h \
was changed to:
assym.h: \
but what was intended was:
assym.h: ../../../../../sys/param.h \
For the pcc -M output things were a bit different and after the make
depend the genassym entry would still remain and make would fail. This
affected all platforms except amd64 and sgi.
Okay miod@.
|
|
ok miod@
|
|
from the individual drivers now that ether_ioctl() handles this.
Shrinks the i386 kernels by..
RAMDISK - 2176 bytes
RAMDISKB - 1504 bytes
RAMDISKC - 736 bytes
Tested by naddy@/okan@/sthen@/brad@/todd@/jmc@ and lots of users.
Build tested on almost all archs by todd@/brad@
ok naddy@
|
|
"looks sane to me" marco@
|
|
ok espie, jmc
|
|
|
|
Move calling ether_ioctl() from the top of the ioctl function, which
at the moment does absolutely nothing, to the default switch case.
Thus allowing drivers to define their own ioctl handlers and then
falling back on ether_ioctl(). The only functional change this results
in at the moment is having all Ethernet drivers returning the proper
errno of ENOTTY instead of EINVAL/ENXIO when encountering unknown
ioctl's.
Shrinks the i386 kernels by..
RAMDISK - 1024 bytes
RAMDISKB - 1120 bytes
RAMDISKC - 832 bytes
Tested by martin@/jsing@/todd@/brad@
Build tested on almost all archs by todd@/brad@
ok jsing@
|
|
ok marco@ no objection miod@ need this for regress djm@ no objection krw@
|
|
Right now when mi_switch picks up the same proc, we didn't clear the
flag which would mean that every time we service an AST we would attempt
a context switch. For some architectures, amd64 being probably the
most extreme, that meant attempting to context switch for every
trap and interrupt.
Now we clear_resched explicitly after every context switch, even if it
didn't do anything. Which also allows us to remove some more code
in cpu_switchto (not done yet).
miod@ ok
|
|
|
|
Not sure what's more surprising: how long it took for NetBSD to
catch up to the rest of the BSDs (including UCB), or the amount of
code that NetBSD has claimed for itself without attributing to the
actual authors.
OK deraadt@
|
|
ok thib beck art
|
|
file copies to nfsv2 causes the system to eventually peg the console.
On the console ^T indicates that the load is increasing rapidly, ddb
indicates many calls to getbuf, there is some very slow nfs traffic
making none (or extremely slow) progress. Eventually some machines
seize up entirely.
|
|
biowait() reads that do *not* come from the buffer cache - we use the
B_RAW flag to identify these at art's suggestion - since it makes sense
and the flag was not being used. this just flags all these buffers with
B_RAW - biodone already ignores returned buffers marked B_RAW.
ok art@
|
|
|
|
|
|
free() calls; prodded by chl@, ok krw@
|
|
sgi.
|
|
|
|
|
|
bpf(4) are different enough so that the split makes sense -- this is necessary
to make bpf(4) cloneable.
requested deraadt@, OK thib@
|
|
ok jsing@
|
|
the hp300 related ones currently in use. CN_NORMAL becomes CN_LOWPRI,
CN_INTERNAL becomes CN_MIDPRI and CN_REMOTE becomes CN_HIGHPRI.
ok miod@
|
|
While there, compute the physical memory size in a much simpler way on mac68k.
|
|
|
|
prompted by krw@
|
|
|
|
|
|
directive can select between MI and MD versions of these files. At
the same time, adjust the boot programs to pick exactly what they need,
instead of the 7 or 8 mechanisms previously used.
There will be some fallout from this, but testing it all by myself is a
ridiculously slow process; it will be finished in-tree.
Various developers were very nice and avoided making fun of me when I
was gibbering in the corner..
|
|
|
|
decide which files must be pulled into the kernel. Also conditionalize
the pulling of those files based on the COMPAT_* options.
|
|
ok miod
|
|
|
|
as its implementation may vary accross platforms (and will very soon).
|
|
|
|
ok miod@
|
|
|
|
|
|
- Move the functionality of choosing a process from cpu_switch into
a much simpler function: cpu_switchto. Instead of having the locore
code walk the run queues, let the MI code choose the process we
want to run and only implement the context switching itself in MD
code.
- Let MD context switching run without worrying about spls or locks.
- Instead of having the idle loop implemented with special contexts
in MD code, implement one idle proc for each cpu. make the idle
loop MI with MD hooks.
- Change the proc lists from the old style vax queues to TAILQs.
- Change the sleep queue from vax queues to TAILQs. This makes
wakeup() go from O(n^2) to O(n)
there will be some MD fallout, but it will be fixed shortly.
There's also a few cleanups to be done after this.
deraadt@, kettenis@ ok
|
|
ok art@
|
|
MALLOC/FREE, etc. Just adding M_ZERO to malloc() and deleting an
immediately adjacent bzero().
|
|
handler is invoked with spl raised to the given level, otherwise all nubus
interrupts are processed at level 2.
|
|
with heavy NFS usage.
|
|
kernel builds locally this doesnt change much but over NFS this
cuts about 12% of the build time on my setup (i386).
OK miod@, deraadt@.
|
|
|
|
too, so we can make these constants.
|
|
This fixes infrequent hangs on reboot due to the ethernet interface interrupting
on machines configured to use A/UX style interrupts.
|
|
MBR-like partitions.
|