Make /dev/crypto properly cloning.  Leave CRIOGET in place but note that
it is deprecated, no longer required, and will be removed in a future
release of NetBSD.

Dramatically reduce the size of the session structure by removing an
IOV_MAX array of iovecs where only the first was use.  Saves an 8k
bzero on each session creation.

Convert fixed-size allocations in cryptodev.c to pools.
Add support to support code for Kinetic card.  The kernel is loaded into
the Processor local memory, so that should provide a speed up.

Currently DMA won't work, as we only tell the kernel about the kinetic
memory, and exclude the motherboard memory. I'll look at fixing this over
the weekend.

Add support for kernels > 4MiB.  The -current INSTALL kernel has now hit
25KiB over 4MiB and we were only adding L1 mappings for 4MiB.

Also added lots of tracing which I used to work out what boot32 was doing,
and so what the kernel was meant to be doing.  This is disabled by default.

Out of paranoia also become a client of all domains before setting the ttb,
just in case RISC-OS ever decides to use domains.

All of this has been tested on my Kinetic Risc-PC.  I've carried out a full
install onto it, and hope to use it for testing out the interrupt work I've
been doing.
Add arm version of cpu_in_cksum.  Based on previous in_cksum4 code.

In fact it's mostly the same code, with a different stub on it.

On a cats the regress/sys/net/in_cksum tests show that it takes around
50-60% of the time the C version takes.  In some cases it takes as low as
20%.
Fix typo, assum.h -> assym.h
Add some aligned tests for the more "normal" cases.  Even though this is
primarily a regression tool, it's still a useful benchmark tool so we
might as well try relatively real-world tests as well.

Ok joerg@.
Add a wrapper for posix_fadvise()
regen
Don't try to bound the return value for pread/pwrite/pathconf by casting
an 'ssize_t' or 'long' variable to 'register_t'.
If the sizes were different it would either overwrite stack or return
uninitialised stack.  On big-endian systems things would be worse!
g/c an unused variable.

From Donald T Hayford on port-arm@
Fix include.
Fix for 32-bit kernels.
Also account idepth in clock interrupt handlers
(which are registered directly by isr_add_custom())
and use the idepth value for CLKF_INTR().
Wakeup some newer chips from powerdown mode. From FreeBSD/Linux driver
via OpenBSD.

Tested by wiz@ in PR kern/37868.
rw_write_held: return true only if held by the current LWP.
Document that cv_timedwait with a ticks argument of zero behaves like
cv_wait.
Add a wakeup instruction which is taken from Realtek driver.
Untested on newer chips, but no bad side effect on my 8169S.
- Fix several problems with the inode hash.
- Replace use of lockmgr().
Sort options. Remove superfluous .Pp. Grammar improvements.
Simplify macro usage. Use more macros.
- call mec_reset() to make sure DMA stopped (inspired by OpenBSD)
- also stop DMA in mec_reset() before resetting chip
- set MAC address to MAC_STATION reg in mec_attach(), not in mec_reset()

Possibly fixes occasional interrupt storm from mec(4) (i.e. hangup) at boot.
lockstat: no longer track lockmgr() events.