Age | Commit message (Collapse) | Author |
|
for RB_DFLTROOT; ok miod
|
|
instead of using a fixed number for the time base, measure the
"accurate" value based on the rtc.
ok kettenis@ mbalmer@
|
|
and nothing in the MI kernel code (and in the MD arm code) uses these values.
|
|
ok deraadt@
|
|
remove pool_cache code. it was barely used, and quite complex. it's
silly to have both a "fast" and "faster" allocation interface. provide
a ctor/dtor interface, and convert the few cache users to use it. no
caching at this time.
use mutexes to protect pools. they should be initialized with pool_setipl
if the pool may be used in an interrupt context, without existing spl
protection.
ok art deraadt thib
|
|
which are not installed to userland; ok drahn
|
|
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..
|
|
for there be dragons in xscale cache and it would not be cleaned correctly,
leading to wrong pcb data being restored on resume and eventually causing
panics.
|
|
|
|
|
|
- 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
|
|
issues upon resume.
|
|
otherwise just adding M_ZERO to malloc() and removing the immediately
adjacent memset(,0,).
|
|
previously applied to other archs deleting a memset() this time. e.g.
- if ((mapstore = malloc(mapsize, M_DEVBUF,
- (flags & BUS_DMA_NOWAIT) ? M_NOWAIT : M_WAITOK)) == NULL)
+ if ((mapstore = malloc(mapsize, M_DEVBUF, (flags & BUS_DMA_NOWAIT) ?
+ (M_NOWAIT | M_ZERO) : (M_WAITOK | M_ZERO))) == NULL)
return (ENOMEM);
- memset(mapstore, 0, mapsize);
|
|
ok drahn@
|
|
the holes a MMU may have from a given vm_map. This will be automagically
invoked for newly created vmspaces.
On platforms with MMU holes (e.g. sun4, sun4c and vax), this prevents
mmap(2) hints which would end up being in the hole to be accepted as valid,
causing unexpected signals when the process tries to access the hole
(since pmap can not fill the hole anyway).
Unfortunately, the logic mmap() uses to pick a valid address for anonymous
mappings needs work, as it will only try to find an address higher than the
hint, which causes all mmap() with a hint in the hole to fail on vax. This
will be improved later.
|
|
a kernel and setting SDMMC_DEBUG option.
ok deraadt@
|
|
|
|
ok miod@ jmc@
|
|
|
|
|
|
cpu_disklabel can go away, since nothing anymore needs to use it; ok miod
|
|
|
|
might even work now (ie. if it works, it is because finding the label
location is now MI code shared for the read & write paths)
|
|
to support hotplug media on most architectures. disklabel setup and
verification done using new helper functions. Disklabels must *always*
have a correct checksum now. Same code paths are used to learn on-disk
location disklabels, to avoid new errors sneaking in. Tested on almost all
cases, testing help from todd, kettenis, krw, otto, dlg, robert, gwk, drahn
|
|
|
|
need it.
If a USB driver uses timeout(9) functions, the header file sys/timeout.h
must be included.
Tested by me (i386, macppc, sparc64), ckuethe (amd64), & todd (sparc, zaurus).
ok dlg.
|
|
|
|
|
|
|
|
correct and unify; ok thib miod
|
|
(This might look easy, but it was a big diff. Thanks to dlg and especially jsg
for looking over it; we found at least four mistakes in the initial diff.)
ok jsg.
|
|
were used as a layer of confusion^Wabstraction around the timeout(9) API.
No binary change.
ok jsg.
|
|
routines (alpha, vax) prove to be not worth keeping. Move
bounds_check_with_label() into the MI world. Eliminate unreliable and
almost certainly useless checks for overwriting a disklabel.
After discussion with deraadt@
|
|
|
|
implimentations were simply either missing code, or spacing and such.
setdisklabel() can become MI now.
|
|
|
|
size which is the REAL DISK SIZE. always. if a driver fails to set
this right, please fix it. agreed with otto and krw
|
|
there.
'so go to it!' deraadt@
|
|
type of all variables to daddr64_t. this includes the APIs for XXsize()
and XXdump(), all range checks inside bio drivers, internal variables
for disklabel handling, and even uvm's swap offsets. re-read numerous
times by otto, miod, krw, thib to look for errors
|
|
accuracy so that the variious disksubr.c's can be compared easier.
setdisklabel() starts taking an int for openmask.
ok krw, and read by quite a few other people
|
|
to size. tested on almost all machines, double checked by miod and krw
next comes the type handling surrounding these values
|
|
convert version 0 to version 1 disklabels.
Suggested by deraadt@.
ok deraadt@ otto@
|
|
bounds_check_with_label() routines as identical as possible without
changing any code. Code nits and adjustments to come.
|
|
bounds_check_with_label. All callers check for <= 0, so no functional
change.
Feedback from miod@.
ok weingart@
|
|
|
|
for getting and passing calibration values instead of using
sysctl.
Move the scale struct to uts_softc so that each device can have
it's own values instead of using the global one.
Remove the two MD sysctl (ztsscale and ztsrawmode).
ok deraadt@
|
|
|
|
(and part of setroot); ok miod
|
|
This changes nothing on legacy architectures, but is a bit faster (and simpler)
on the interesting ones.
|