Age | Commit message (Collapse) | Author |
|
|
|
Not due to testing... but because they can't fit side by side.
ok kettenis
|
|
native size, so eliminate the #defines.
ok miod@
|
|
|
|
ok kettenis@
|
|
archs have instrutions that can do this, and the rest that dont get
to use wrappers around the byteswap(3) api.
this provides MI backends for sparc64 and powerpc which get a big
benefit from this because byteswapping in registers is really hard
for them.
the intended use case is for reading and writing bits of dma memory
handed to and from hardware.
discussed with miod@ guenther@ deraadt@
ok miod@ kettenis@
|
|
|
|
fairer access to the kernel lock (which suffers very heavy contention
at the moment).
i wrote this at n2k14 and reworked it shortly after to use the mi
atomic ops api when that was agreed on. ive been running it on my
systems ever since.
the version before the atomic op tweaks was tested by kettenis@
n2k14 (deraadt@ and kettenis@ in particular if i recall correctly)
oked this going in after 5.5
|
|
"mainbus" device. this breaks when mpath is enabled because it
attaches before mainbus and therefore takes the head position.
have autoconf provide device_mainbus() which looks up mainbus_cd,
and use that instead.
discussed with deraadt who just wants mpath stuff to move forward
despite there being many ways to shine this particular turd.
|
|
|
|
namespace, so stop changing behavior when it's #defined
ok beck@ krw@
|
|
|
|
|
|
qle in GENERIC on i386, amd64 and sparc64, where it's reasonably well tested
and likely to be useful.
requested by deraadt@ and kettenis@, ok dlg@
|
|
While there, afnsify the inittodr() prototype.
|
|
<machine/pmap.h> where it belongs, and compensate in <uvm/uvm_extern.h>
by including <uvm/uvm_pmap.h> before <uvm/uvm_page.h>. Tested on all
MACHINE_ARCH but amd64 and i386 (and hppa64).
|
|
|
|
this basically replaces sparc64_cas and sparc64_casx with atomic_cas_uint
and atomic_cas_ulong respectively. it then builds atomic_add and
atomic_sub out of those. this avoids the gcc atomic builtins that
the MI atomic_foo api uses by default, so we dont get the extra
membars that the builtins do but the atomic_foo api doesnt promise.
it also fixes up the code that used to use sparc64_{cas,casx} to
use the atomic_cas api instead.
use of the sparc64 membar() macros are left untouched for now.
ok kettenis@
|
|
the descriptor. This seems to be what Solaris does in such a case.
|
|
|
|
|
|
|
|
|
|
|
|
a bit further about.
|
|
clean up and return without ACKing any descriptors. That means the client
probably hangs. Some thought is needed on what the correct way to handle
these conditions is. Made me spot a small memory leak, which is fixed asi
a bonus.
|
|
|
|
page aligned.
|
|
|
|
as the resource the iopool is managing, but gated by the availability
of the service domain. it takes advantage of the newly available
scsi_iopool_run() interface to restart io when the domain providing
a disk comes back.
ok kettenis@
|
|
and bus_dmamap_unload(9) "mpsafe".
|
|
kettenis@ told me where to put these lines
|
|
directly.
ok kettenis@
|
|
libkern srandom() API since it is not suitable for this use.
ok kettenis miod
|
|
ok miod@
|
|
the ELF openbsd.randomdata of the kernel, so that it has entropy right from
the start.
|
|
we want to initialize with randomness. It covered exactly nothing before!
|
|
Having a seperate rodata segment won't work anyway without significant pmap
changes.
|
|
|
|
script (note that the amd64 linker script is currently not used).
Discussed with deraadt@
|
|
|
|
|
|
|
|
"sure" deraadt@
|
|
OK pirofti@ krw@ miod@
|
|
resurrection of the bad idiom in the tree.
sufficient review by miod, kettenis, tedu
|
|
overloading of that thing.
the only hardware that seems to care about cylinders in our tree
are floppy drives, and the drivers for those calculate their own
cylinders from logical block addresses and ignore whatever the rest
of the kernel thought b_cylinders should be.
most of this diff is moving the floppy drivers to using b_resid as
a resid and using that as part of the calculation for real cylinder
values.
the rest of the diff is getting rid of the useless assignments to
b_cylinder that dont get used by anything (now that disksort is
gone).
ok miod@
|
|
USB host-to-host link cable. This driver is derived from upl(4).
|
|
ok kettenis@
|
|
DL_[GET|SET]PSIZE(), DL_[GET|SET]POFFSET(), DL_[GET|SET]DSIZE() in
order to get|set correct value that includes the high bits of the
value.
|