Home | History | Annotate | only in /src/sys/rump/kern
History log of /src/sys/rump/kern
RevisionDateAuthorComments
 1.1 10-Jun-2010  pooka branches: 1.1.2; 1.1.4; 1.1.6;
Add infrastructure for kern compnents. This is meant for those
components which are too bloaty to be included in rumpkern (where
bloaty means "can be easily left out without anyone missing"), but
generally do not require the support of the dev/fs/net factions to
function. As the first one, add ksems. librumpcrypto will migrate
here too once I get my timeslice to deal with the setlists, as most
likely will tty support.
 1.1.6.2 17-Aug-2010  uebayasi Sync with HEAD.
 1.1.6.1 10-Jun-2010  uebayasi file Makefile was added on branch uebayasi-xip on 2010-08-17 06:47:58 +0000
 1.1.4.2 11-Aug-2010  yamt sync with head.
 1.1.4.1 10-Jun-2010  yamt file Makefile was added on branch yamt-nfs-mp on 2010-08-11 22:55:05 +0000
 1.1.2.2 03-Jul-2010  rmind sync with head
 1.1.2.1 10-Jun-2010  rmind file Makefile was added on branch rmind-uvmplock on 2010-07-03 01:20:01 +0000
 1.14 30-Sep-2021  yamaguchi Added tests for the linear hook APIs
 1.13 22-Sep-2018  rmind Add rumpkern_nv (in-kernel RUMP libnv).
 1.12 15-Nov-2015  pooka branches: 1.12.16; 1.12.18;
Always descend into component directories for rumpdescribe.
 1.11 07-Jan-2015  pooka Move sysproxy support into a separate component, rumpkern_sysproxy,
instead of it being always provided by the rump kernel base. This
move accomplishes two things:

1) it is no longer necessary to provide sysproxy hypercall stubs for
platforms which do not want to use sysproxy
2) it is easier to reason about the security aspects, since configurations
not linking the sysproxy component simply do not support remote
system calls

discussed on rumpkernel-users
 1.10 02-Apr-2014  pooka branches: 1.10.6;
Put nanosleep() and folks in librump instead of maintaining them in
the separate rumpkern_time component. Keeping time-related routines
elsewhere lead to some illogical behavior if you didn't think of linking
in rumpkern_time (hands up everyone who checks the return value of
nanosleep()).

Add warnings if rumpkern_time is linked or used. I'll remove it in a
month or two instead of now since it was part of a buildrump.sh snapshot
and it's nicer if trying to use it gives a warning instead of an error
in the next snapshot.

"everything should be as modular as possible, but no more modular than that"
 1.9 14-Mar-2014  pooka Add rumpkern_time for nanosleep, clock_gettime, setitimer, etc.
 1.8 16-Nov-2013  alnsn Build and install sljit and bpfjit rump components iff ${MKSLJIT} != "no".
 1.7 16-Nov-2013  martin sljit is only available on very few architectures, so do not try to build
it on all.
 1.6 16-Nov-2013  rmind Build rumpkern_sljit and rumpnet_bpfjit; include them into the sets.
 1.5 10-Mar-2012  joerg branches: 1.5.2; 1.5.4;
P1003_1B_SEMAPHORE is no longer optional.
 1.4 05-Mar-2011  joerg branches: 1.4.2; 1.4.6; 1.4.10;
Fix spelling of MKZFS
 1.3 18-Jan-2011  haad branches: 1.3.2;
Add support for compiling ZFS and Solaris modules as RUMP libraries. Add
some locking and rumpcopy primitives and refactor module building Makefiles
to work with both RUMP and kernel modules. This is first part of adding
support for regular test of zfs on NetBSD to hunt some bugs and make it
stable.

Ok by pooka@.
 1.2 05-Dec-2010  pooka branches: 1.2.2;
rumpcrypto should never have been its own faction, so finally make
it a component under kern, i.e. rumpcrypto -> rumpkern_crypto.
 1.1 05-Dec-2010  pooka Make build similar to fs, net & dev.
 1.2.2.1 06-Jun-2011  jruoho Sync with HEAD.
 1.3.2.1 05-Mar-2011  bouyer Sync with HEAD
 1.4.10.1 11-Mar-2012  mrg sync to latest -current
 1.4.6.2 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.4.6.1 17-Apr-2012  yamt sync with head
 1.4.2.2 05-Mar-2011  rmind sync with head
 1.4.2.1 05-Mar-2011  rmind file Makefile.rumpkerncomp was added on branch rmind-uvmplock on 2011-03-05 20:56:13 +0000
 1.5.4.1 18-May-2014  rmind sync with head
 1.5.2.2 03-Dec-2017  jdolecek update from HEAD
 1.5.2.1 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.10.6.2 27-Dec-2015  skrll Sync with HEAD (as of 26th Dec)
 1.10.6.1 06-Apr-2015  skrll Sync with HEAD
 1.12.18.1 10-Jun-2019  christos Sync with HEAD
 1.12.16.1 30-Sep-2018  pgoyette Ssync with HEAD
 1.6 25-Aug-2014  pooka Remove and obsolete rumpkern_time as a separate component.
 1.5 02-Apr-2014  pooka Put nanosleep() and folks in librump instead of maintaining them in
the separate rumpkern_time component. Keeping time-related routines
elsewhere lead to some illogical behavior if you didn't think of linking
in rumpkern_time (hands up everyone who checks the return value of
nanosleep()).

Add warnings if rumpkern_time is linked or used. I'll remove it in a
month or two instead of now since it was part of a buildrump.sh snapshot
and it's nicer if trying to use it gives a warning instead of an error
in the next snapshot.

"everything should be as modular as possible, but no more modular than that"
 1.4 05-Dec-2010  pooka branches: 1.4.8; 1.4.18; 1.4.22;
Make build similar to fs, net & dev.
 1.3 21-Jun-2010  pooka branches: 1.3.2; 1.3.4; 1.3.6;
support zlib
 1.2 14-Jun-2010  pooka Add unadulterated tty support as a rump component.
 1.1 10-Jun-2010  pooka Add infrastructure for kern compnents. This is meant for those
components which are too bloaty to be included in rumpkern (where
bloaty means "can be easily left out without anyone missing"), but
generally do not require the support of the dev/fs/net factions to
function. As the first one, add ksems. librumpcrypto will migrate
here too once I get my timeslice to deal with the setlists, as most
likely will tty support.
 1.3.6.2 17-Aug-2010  uebayasi Sync with HEAD.
 1.3.6.1 21-Jun-2010  uebayasi file Makefile was added on branch uebayasi-xip on 2010-08-17 06:47:59 +0000
 1.3.4.2 11-Aug-2010  yamt sync with head.
 1.3.4.1 21-Jun-2010  yamt file Makefile was added on branch yamt-nfs-mp on 2010-08-11 22:55:05 +0000
 1.3.2.3 05-Mar-2011  rmind sync with head
 1.3.2.2 03-Jul-2010  rmind sync with head
 1.3.2.1 21-Jun-2010  rmind file Makefile was added on branch rmind-uvmplock on 2010-07-03 01:20:02 +0000
 1.4.22.1 18-May-2014  rmind sync with head
 1.4.18.2 03-Dec-2017  jdolecek update from HEAD
 1.4.18.1 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.4.8.1 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.1 10-Jun-2010  pooka branches: 1.1.2; 1.1.4; 1.1.6;
Add infrastructure for kern compnents. This is meant for those
components which are too bloaty to be included in rumpkern (where
bloaty means "can be easily left out without anyone missing"), but
generally do not require the support of the dev/fs/net factions to
function. As the first one, add ksems. librumpcrypto will migrate
here too once I get my timeslice to deal with the setlists, as most
likely will tty support.
 1.1.6.2 17-Aug-2010  uebayasi Sync with HEAD.
 1.1.6.1 10-Jun-2010  uebayasi file Makefile.inc was added on branch uebayasi-xip on 2010-08-17 06:47:59 +0000
 1.1.4.2 11-Aug-2010  yamt sync with head.
 1.1.4.1 10-Jun-2010  yamt file Makefile.inc was added on branch yamt-nfs-mp on 2010-08-11 22:55:05 +0000
 1.1.2.2 03-Jul-2010  rmind sync with head
 1.1.2.1 10-Jun-2010  rmind file Makefile.inc was added on branch rmind-uvmplock on 2010-07-03 01:20:02 +0000
 1.3 18-May-2015  pooka branches: 1.3.16;
Rewrite rules so that makesyscalls.sh will not be executed multiple
times in a parallel make.

Hopefully fixes sporadic build failures reported by Justin
 1.2 09-May-2015  pooka Make the cool syscall autogeneration feature work with the
newfangled r/o src feature.
 1.1 08-Mar-2015  christos branches: 1.1.2;
Add snippet to build syscalls.
 1.1.2.3 06-Jun-2015  skrll Sync with HEAD
 1.1.2.2 06-Apr-2015  skrll Sync with HEAD
 1.1.2.1 08-Mar-2015  skrll file Makefile.sys was added on branch nick-nhusb on 2015-04-06 15:18:29 +0000
 1.3.16.2 03-Dec-2017  jdolecek update from HEAD
 1.3.16.1 18-May-2015  jdolecek file Makefile.sys was added on branch tls-maxphys on 2017-12-03 11:39:14 +0000
 1.24 26-Jul-2024  riastradh sys/crypto/sodium: Add a self-test for IETF ChaCha20/Poly1305 AEAD.

PR kern/58468
 1.23 21-Aug-2021  christos branches: 1.23.4; 1.23.10;
rename glue.c to sodium_module.c
 1.22 21-Aug-2021  christos Add glue.c for libsodium (suggested by riastradh). Tidy up.
 1.21 27-Aug-2020  riastradh Move address hashing from init_main.c to kern_sysctl.c.

This way rump gets it automatically. Make sure blake2s is in
librumpkern.so, not just in librumpkern_crypto.so, for this to work.
 1.20 26-Aug-2020  riastradh Tidy up libsodium makefile and config fragments.
 1.19 21-Aug-2020  riastradh Disable libsodium HAVE_TI_MODE for now.

This may reduce performance by not taking advantage of 64x64->128
multiplications on some platforms, but let's worry about that later
and fix the build on the other platforms instead.
 1.18 21-Aug-2020  riastradh Split flags onto separate lines, sorted, to make diffs easier.
 1.17 21-Aug-2020  riastradh Disable -Wshadow for libsodium.

Evidently ed25519_ref10.c has a global and a local both named `d'.
 1.16 20-Aug-2020  riastradh Missed a spot -- add sys/crypto/blake2 to .PATH here.
 1.15 20-Aug-2020  riastradh Fix vestiges of libb2.
 1.14 20-Aug-2020  riastradh [ozaki-r] Changes to the kernel core for wireguard
 1.13 28-Jul-2020  riastradh Rewrite cprng_fast in terms of new ChaCha API.
 1.12 26-Jul-2020  riastradh Fix more sort order.
 1.11 26-Jul-2020  riastradh Add missing aes_ccm.c, aes_ccm_mbuf.c. Fix sort order.
 1.10 26-Jul-2020  riastradh Add chacha to rump libcrypto.
 1.9 25-Jul-2020  riastradh Remove now-unused legacy rijndael API.
 1.8 29-Jun-2020  riastradh New cgd cipher adiantum.

Adiantum is a wide-block cipher, built out of AES, XChaCha12,
Poly1305, and NH, defined in

Paul Crowley and Eric Biggers, `Adiantum: length-preserving
encryption for entry-level processors', IACR Transactions on
Symmetric Cryptology 2018(4), pp. 39--61.

Adiantum provides better security than a narrow-block cipher with CBC
or XTS, because every bit of each sector affects every other bit,
whereas with CBC each block of plaintext only affects the following
blocks of ciphertext in the disk sector, and with XTS each block of
plaintext only affects its own block of ciphertext and nothing else.

Adiantum generally provides much better performance than
constant-time AES-CBC or AES-XTS software do without hardware
support, and performance comparable to or better than the
variable-time (i.e., leaky) AES-CBC and AES-XTS software we had
before. (Note: Adiantum also uses AES as a subroutine, but only once
per disk sector. It takes only a small fraction of the time spent by
Adiantum, so there's relatively little performance impact to using
constant-time AES software over using variable-time AES software for
it.)

Adiantum naturally scales to essentially arbitrary disk sector sizes;
sizes >=1024-bytes take the most advantage of Adiantum's design for
performance, so 4096-byte sectors would be a natural choice if we
taught cgd to change the disk sector size. (However, it's a
different cipher for each disk sector size, so it _must_ be a cgd
parameter.)

The paper presents a similar construction HPolyC. The salient
difference is that HPolyC uses Poly1305 directly, whereas Adiantum
uses Poly1395(NH(...)). NH is annoying because it requires a
1072-byte key, which means the test vectors are ginormous, and
changing keys is costly; HPolyC avoids these shortcomings by using
Poly1305 directly, but HPolyC is measurably slower, costing about
1.5x what Adiantum costs on 4096-byte sectors.

For the purposes of cgd, we will reuse each key for many messages,
and there will be very few keys in total (one per cgd volume) so --
except for the annoying verbosity of test vectors -- the tradeoff
weighs in the favour of Adiantum, especially if we teach cgd to do
>>512-byte sectors.

For now, everything that Adiantum needs beyond what's already in the
kernel is gathered into a single file, including NH, Poly1305, and
XChaCha12. We can split those out -- and reuse them, and provide MD
tuned implementations, and so on -- as needed; this is just a first
pass to get Adiantum implemented for experimentation.
 1.7 29-Jun-2020  riastradh Rework AES in kernel to finally address CVE-2005-1797.

1. Rip out old variable-time reference implementation.
2. Replace it by BearSSL's constant-time 32-bit logic.
=> Obtained from commit dda1f8a0c46e15b4a235163470ff700b2f13dcc5.
=> We could conditionally adopt the 64-bit logic too, which would
likely give a modest performance boost on 64-bit platforms
without AES-NI, but that's a bit more trouble.
3. Select the AES implementation at boot-time; allow an MD override.
=> Use self-tests to verify basic correctness at boot.
=> The implementation selection policy is rather rudimentary at
the moment but it is isolated to one place so it's easy to
change later on.

This (a) plugs a host of timing attacks on, e.g., cgd, and (b) paves
the way to take advantage of CPU support for AES -- both things we
should've done a decade ago. Downside: Computing AES takes 2-3x the
CPU time. But that's what hardware support will be coming for.

Rudimentary measurement of performance impact done by:

mount -t tmpfs tmpfs /tmp
dd if=/dev/zero of=/tmp/disk bs=1m count=512
vnconfig -cv vnd0 /tmp/disk
cgdconfig -s cgd0 /dev/vnd0 aes-cbc 256 < /dev/zero
dd if=/dev/rcgd0d of=/dev/null bs=64k
dd if=/dev/zero of=/dev/rcgd0d bs=64k

The AES-CBC encryption performance impact is closer to 3x because it
is inherently sequential; the AES-CBC decryption impact is closer to
2x because the bitsliced AES logic can process two blocks at once.

Discussed on tech-kern:

https://mail-index.NetBSD.org/tech-kern/2020/06/18/msg026505.html
 1.6 05-Dec-2019  riastradh Missed a spot in the crypto/arc4 deletion.
 1.5 02-Sep-2019  riastradh Switch from NIST CTR_DRBG with AES to NIST Hash_DRBG with SHA-256.

Benefits:

- larger seeds -- a 128-bit key alone is not enough for `128-bit security'
- better resistance to timing side channels than AES
- a better-understood security story (https://eprint.iacr.org/2018/349)
- no loss in compliance with US government standards that nobody ever
got fired for choosing, at least in the US-dominated western world
- no dirty endianness tricks
- self-tests

Drawbacks:

- performance hit: throughput is reduced to about 1/3 in naive measurements
=> possible to mitigate by using hardware SHA-256 instructions
=> all you really need is 32 bytes to seed a userland PRNG anyway
=> if we just used ChaCha this would go away...

XXX pullup-7
XXX pullup-8
XXX pullup-9
 1.4 19-Oct-2015  pooka branches: 1.4.10; 1.4.18; 1.4.22;
Add a COMMENT describing what each component roughly does.

"make describe" prints the comment.

Requested/inspired by Vincent Schwarzer on rumpkernel-users
 1.3 17-Jan-2014  pooka branches: 1.3.4; 1.3.6; 1.3.8; 1.3.12;
Use subr_cprng.c instead of stub implementation. Rijndael migrates from
rumpkern_crypto to rumpkern due to it being mandatory for cprng.
 1.2 14-Jan-2014  pgoyette Add the MODULE parts for blowfish and des.

Add camellia algorithm. (pooka@ says no lib version change required)
 1.1 05-Dec-2010  pooka branches: 1.1.6; 1.1.10; 1.1.20; 1.1.24;
rumpcrypto should never have been its own faction, so finally make
it a component under kern, i.e. rumpcrypto -> rumpkern_crypto.
 1.1.24.1 18-May-2014  rmind sync with head
 1.1.20.2 03-Dec-2017  jdolecek update from HEAD
 1.1.20.1 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.1.10.1 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.1.6.2 05-Mar-2011  rmind sync with head
 1.1.6.1 05-Dec-2010  rmind file Makefile was added on branch rmind-uvmplock on 2011-03-05 20:56:13 +0000
 1.3.12.1 03-Sep-2019  martin Pull up following revision(s) (requested by riastradh in ticket #1705):

sys/crypto/nist_hash_drbg/nist_hash_drbg.c: revision 1.1
sys/crypto/nist_hash_drbg/nist_hash_drbg.h: revision 1.1
sys/rump/kern/lib/libcrypto/Makefile: revision 1.5
sys/crypto/nist_hash_drbg/files.nist_hash_drbg: revision 1.1
sys/rump/librump/rumpkern/Makefile.rumpkern: revision 1.176
sys/crypto/nist_ctr_drbg/nist_ctr_drbg_aes256.h: file removal
sys/crypto/nist_ctr_drbg/nist_ctr_drbg_config.h: file removal
sys/conf/files: revision 1.1238
sys/dev/rndpseudo.c: revision 1.38
sys/crypto/nist_ctr_drbg/nist_ctr_drbg.c: file removal
sys/sys/cprng.h: revision 1.13 - 1.15
sys/crypto/nist_ctr_drbg/nist_ctr_drbg.h: file removal
sys/crypto/nist_ctr_drbg/nist_ctr_aes_rijndael.h: file removal
sys/crypto/nist_ctr_drbg/files.nist_ctr_drbg: file removal
sys/kern/subr_cprng.c: revision 1.31
sys/crypto/nist_ctr_drbg/nist_ctr_drbg_aes128.h: file removal

cprng.h: use static __inline for consistency with other include
headers and remove an unused function.

-

Switch from NIST CTR_DRBG with AES to NIST Hash_DRBG with SHA-256.

Benefits:
- larger seeds -- a 128-bit key alone is not enough for `128-bit security'
- better resistance to timing side channels than AES
- a better-understood security story (<a rel="nofollow" href="https://eprint.iacr.org/2018/349">https://eprint.iacr.org/2018/349</a>)
- no loss in compliance with US government standards that nobody ever
got fired for choosing, at least in the US-dominated western world
- no dirty endianness tricks
- self-tests

Drawbacks:
- performance hit: throughput is reduced to about 1/3 in naive measurements
=> possible to mitigate by using hardware SHA-256 instructions
=> all you really need is 32 bytes to seed a userland PRNG anyway
=> if we just used ChaCha this would go away...
 1.3.8.1 03-Sep-2019  martin Pull up following revision(s) (requested by riastradh in ticket #1705):

sys/crypto/nist_hash_drbg/nist_hash_drbg.c: revision 1.1
sys/crypto/nist_hash_drbg/nist_hash_drbg.h: revision 1.1
sys/rump/kern/lib/libcrypto/Makefile: revision 1.5
sys/crypto/nist_hash_drbg/files.nist_hash_drbg: revision 1.1
sys/rump/librump/rumpkern/Makefile.rumpkern: revision 1.176
sys/crypto/nist_ctr_drbg/nist_ctr_drbg_aes256.h: file removal
sys/crypto/nist_ctr_drbg/nist_ctr_drbg_config.h: file removal
sys/conf/files: revision 1.1238
sys/dev/rndpseudo.c: revision 1.38
sys/crypto/nist_ctr_drbg/nist_ctr_drbg.c: file removal
sys/sys/cprng.h: revision 1.13 - 1.15
sys/crypto/nist_ctr_drbg/nist_ctr_drbg.h: file removal
sys/crypto/nist_ctr_drbg/nist_ctr_aes_rijndael.h: file removal
sys/crypto/nist_ctr_drbg/files.nist_ctr_drbg: file removal
sys/kern/subr_cprng.c: revision 1.31
sys/crypto/nist_ctr_drbg/nist_ctr_drbg_aes128.h: file removal

cprng.h: use static __inline for consistency with other include
headers and remove an unused function.

-

Switch from NIST CTR_DRBG with AES to NIST Hash_DRBG with SHA-256.

Benefits:
- larger seeds -- a 128-bit key alone is not enough for `128-bit security'
- better resistance to timing side channels than AES
- a better-understood security story (<a rel="nofollow" href="https://eprint.iacr.org/2018/349">https://eprint.iacr.org/2018/349</a>)
- no loss in compliance with US government standards that nobody ever
got fired for choosing, at least in the US-dominated western world
- no dirty endianness tricks
- self-tests

Drawbacks:
- performance hit: throughput is reduced to about 1/3 in naive measurements
=> possible to mitigate by using hardware SHA-256 instructions
=> all you really need is 32 bytes to seed a userland PRNG anyway
=> if we just used ChaCha this would go away...
 1.3.6.1 27-Dec-2015  skrll Sync with HEAD (as of 26th Dec)
 1.3.4.1 03-Sep-2019  martin Pull up following revision(s) (requested by riastradh in ticket #1705):

sys/crypto/nist_hash_drbg/nist_hash_drbg.c: revision 1.1
sys/crypto/nist_hash_drbg/nist_hash_drbg.h: revision 1.1
sys/rump/kern/lib/libcrypto/Makefile: revision 1.5
sys/crypto/nist_hash_drbg/files.nist_hash_drbg: revision 1.1
sys/rump/librump/rumpkern/Makefile.rumpkern: revision 1.176
sys/crypto/nist_ctr_drbg/nist_ctr_drbg_aes256.h: file removal
sys/crypto/nist_ctr_drbg/nist_ctr_drbg_config.h: file removal
sys/conf/files: revision 1.1238
sys/dev/rndpseudo.c: revision 1.38
sys/crypto/nist_ctr_drbg/nist_ctr_drbg.c: file removal
sys/sys/cprng.h: revision 1.13 - 1.15
sys/crypto/nist_ctr_drbg/nist_ctr_drbg.h: file removal
sys/crypto/nist_ctr_drbg/nist_ctr_aes_rijndael.h: file removal
sys/crypto/nist_ctr_drbg/files.nist_ctr_drbg: file removal
sys/kern/subr_cprng.c: revision 1.31
sys/crypto/nist_ctr_drbg/nist_ctr_drbg_aes128.h: file removal

cprng.h: use static __inline for consistency with other include
headers and remove an unused function.

-

Switch from NIST CTR_DRBG with AES to NIST Hash_DRBG with SHA-256.

Benefits:
- larger seeds -- a 128-bit key alone is not enough for `128-bit security'
- better resistance to timing side channels than AES
- a better-understood security story (<a rel="nofollow" href="https://eprint.iacr.org/2018/349">https://eprint.iacr.org/2018/349</a>)
- no loss in compliance with US government standards that nobody ever
got fired for choosing, at least in the US-dominated western world
- no dirty endianness tricks
- self-tests

Drawbacks:
- performance hit: throughput is reduced to about 1/3 in naive measurements
=> possible to mitigate by using hardware SHA-256 instructions
=> all you really need is 32 bytes to seed a userland PRNG anyway
=> if we just used ChaCha this would go away...
 1.4.22.1 03-Sep-2019  martin Pull up following revision(s) (requested by riastradh in ticket #173):

sys/crypto/nist_hash_drbg/nist_hash_drbg.c: revision 1.1
sys/crypto/nist_hash_drbg/nist_hash_drbg.h: revision 1.1
sys/rump/kern/lib/libcrypto/Makefile: revision 1.5
sys/crypto/nist_hash_drbg/files.nist_hash_drbg: revision 1.1
sys/rump/librump/rumpkern/Makefile.rumpkern: revision 1.176
sys/crypto/nist_ctr_drbg/nist_ctr_drbg_aes256.h: file removal
sys/crypto/nist_ctr_drbg/nist_ctr_drbg_config.h: file removal
sys/conf/files: revision 1.1238
sys/dev/rndpseudo.c: revision 1.38
sys/crypto/nist_ctr_drbg/nist_ctr_drbg.c: file removal
sys/sys/cprng.h: revision 1.15
sys/crypto/nist_ctr_drbg/nist_ctr_drbg.h: file removal
sys/crypto/nist_ctr_drbg/nist_ctr_aes_rijndael.h: file removal
sys/crypto/nist_ctr_drbg/files.nist_ctr_drbg: file removal
sys/kern/subr_cprng.c: revision 1.31
sys/crypto/nist_ctr_drbg/nist_ctr_drbg_aes128.h: file removal

Switch from NIST CTR_DRBG with AES to NIST Hash_DRBG with SHA-256.

Benefits:
- larger seeds -- a 128-bit key alone is not enough for `128-bit security'
- better resistance to timing side channels than AES
- a better-understood security story (<a rel="nofollow" href="https://eprint.iacr.org/2018/349">https://eprint.iacr.org/2018/349</a>)
- no loss in compliance with US government standards that nobody ever
got fired for choosing, at least in the US-dominated western world
- no dirty endianness tricks
- self-tests

Drawbacks:
- performance hit: throughput is reduced to about 1/3 in naive measurements
=> possible to mitigate by using hardware SHA-256 instructions
=> all you really need is 32 bytes to seed a userland PRNG anyway
=> if we just used ChaCha this would go away...

XXX pullup-7
XXX pullup-8
XXX pullup-9
 1.4.18.2 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.4.18.1 08-Apr-2020  martin Merge changes from current as of 20200406
 1.4.10.1 03-Sep-2019  martin Pull up following revision(s) (requested by riastradh in ticket #1365):

sys/crypto/nist_hash_drbg/nist_hash_drbg.c: revision 1.1
sys/crypto/nist_hash_drbg/nist_hash_drbg.h: revision 1.1
sys/rump/kern/lib/libcrypto/Makefile: revision 1.5
sys/crypto/nist_hash_drbg/files.nist_hash_drbg: revision 1.1
sys/rump/librump/rumpkern/Makefile.rumpkern: revision 1.176
sys/crypto/nist_ctr_drbg/nist_ctr_drbg_aes256.h: file removal
sys/crypto/nist_ctr_drbg/nist_ctr_drbg_config.h: file removal
sys/conf/files: revision 1.1238
sys/dev/rndpseudo.c: revision 1.38
sys/crypto/nist_ctr_drbg/nist_ctr_drbg.c: file removal
sys/sys/cprng.h: revision 1.13 - 1.15
sys/crypto/nist_ctr_drbg/nist_ctr_drbg.h: file removal
sys/crypto/nist_ctr_drbg/nist_ctr_aes_rijndael.h: file removal
sys/crypto/nist_ctr_drbg/files.nist_ctr_drbg: file removal
sys/kern/subr_cprng.c: revision 1.31
sys/crypto/nist_ctr_drbg/nist_ctr_drbg_aes128.h: file removal

cprng.h: use static __inline for consistency with other include
headers and remove an unused function.

-

Switch from NIST CTR_DRBG with AES to NIST Hash_DRBG with SHA-256.

Benefits:
- larger seeds -- a 128-bit key alone is not enough for `128-bit security'
- better resistance to timing side channels than AES
- a better-understood security story (<a rel="nofollow" href="https://eprint.iacr.org/2018/349">https://eprint.iacr.org/2018/349</a>)
- no loss in compliance with US government standards that nobody ever
got fired for choosing, at least in the US-dominated western world
- no dirty endianness tricks
- self-tests

Drawbacks:
- performance hit: throughput is reduced to about 1/3 in naive measurements
=> possible to mitigate by using hardware SHA-256 instructions
=> all you really need is 32 bytes to seed a userland PRNG anyway
=> if we just used ChaCha this would go away...
 1.23.10.1 02-Aug-2025  perseant Sync with HEAD
 1.23.4.1 09-Oct-2024  martin Pull up following revision(s) (requested by riastradh in ticket #933):

sys/external/isc/libsodium/src/sodium_module.c: revision 1.2
sys/external/isc/libsodium/include/core.h: revision 1.2
sys/external/isc/libsodium/include/stdlib.h: revision 1.2
sys/modules/sodium/Makefile.sodmod: revision 1.4
sys/external/isc/libsodium/include/crypto_verify_16.h: revision 1.2
sys/external/isc/libsodium/include/errno.h: file removal
sys/crypto/sodium/sodium_selftest.h: revision 1.1
sys/external/isc/libsodium/include/stdint.h: revision 1.2
sys/crypto/sodium/sodium_selftest.h: revision 1.2
sys/external/isc/libsodium/include/assert.h: file removal
sys/external/isc/libsodium/conf/files.libsodium: revision 1.7
sys/rump/kern/lib/libcrypto/Makefile: revision 1.24
sys/external/isc/libsodium/src/sodium_selftest.c: revision 1.1
sys/external/isc/libsodium/src/sodium_selftest.c: revision 1.2
sys/external/isc/libsodium/include/string.h: revision 1.2

sys/crypto/sodium: Add a self-test for IETF ChaCha20/Poly1305 AEAD.
PR kern/58468

sys/crypto/sodium: Fill out crypto_verify_16 stub.

Without this change, libsodium silently accepts forgeries.

This one's a doozy, and it's a sobering reminder that:
(a) wg(4) is still experimental (only user of libsodium in kernel;
both are available only through default-off optional modules).
(b) Known-answer test vectors are critical, including negative tests
(test that forgeries are rejected), and must be mandatory for all
new crypto code -- and should be added to old crypto code too.
(c) Crypto code must also have self-tests that run in the same
environment, not just the same code in a different build or test
environment -- the libsodium code itself is fine, but we built it
differently and need to exercise it differently from upstream's
automatic tests.

It's my fault for not catching this earlier. What happened is:
1. ozaki-r@ adapted libsodium to build in the kernel with various
glue to build code meant for standard userland C, like errno.h and
string.h.
2. Since libsodium's crypto_verify_16.c uses various SIMD intrinsics
on various architectures, it couldn't be used directly in the
kernel build, because -- at the time -- we hadn't wired up any
header files for SIMD intrinsics or any runtime support for saving
and restoring SIMD state appropriately in the kernel.
3. ozaki-r@ put a similar glue header file crypto_verify_16.h to
override libsodium's, with a stub to be implemented later, and
presumably forgot to remind me about it.
4. I missed the stub in crypto_verify_16.h when reviewing the
libsodium import and wg(4) code because it was in the same
directory as various other simple glue code that I deemed
low-risk.
(I did make one change to that glue code, to replace cprng_fast by
cprng_strong, but I suspect I found that by searching for
cprng_fast users rather than by reviewing this code.)
5. I broke my own rule about always having known-answer test vectors
for crypto code because I figured libsodium was well-enough
exercised that we could skimp on it for now, and my focus was more
on the state machine and synchronization logic than on the crypto.
6. I had not yet written known-answer test vectors for the
higher-level wg(4) protocol messages.

Before we can remove the `experimental' tag from wg(4) we will need
to (among other things):
i. Write self-tests for the rest of (what we use from) libsodium.
ii. Write extensive known-answer test vectors for all the wg(4)
protocol messages (and ideally state machine transitions).
iii. Write self-tests for a reasonable subset of the wg(4) KATs.
iv. Review all of the libsodium glue code I neglected to review.
PR kern/58468

sys/crypto/sodium: Simplify string.h stub.

Not sure of any particular problem with the previous stub, but let's
make sure to use the same prototypes for memset/memcpy/memmove as
everything else in the kernel.
PR kern/58468

sys/crypto/sodium: Nix unused assert.h stub.

Maybe this was a vestige of an earlier draft of the libsodium import,
but it doesn't appear to be needed now by any libsodium files we use.
PR kern/58468

sys/crypto/sodium: Nix risky defines from core.h stub.

These are risky not because they might cause crypto flaws, but
because they might cause usage of the SIMD unit in the kernel along
paths where we haven't made it safe.

That said -- no change to the amd64 module .o and .kmod files, so
this doesn't currently make a difference; it's just risky to have
around in case we later include other parts of libsodium that it does
affect, like the Salsa20 code.
PR kern/58468

sys/crypto/sodium: Nix unused errno.h.

Maybe this was a vestige of an earlier draft of the libsodium import,
but it doesn't appear to be needed now by any libsodium files we use.
PR kern/58468

sys/crypto/sodium: Simplify stdint.h stub.
No change to the .o or .kmod files; just the .d make dependency files
change.
PR kern/58468

sys/crypto/sodium: Tighten stdlib.h glue.
1. Make sure nothing uses malloc and free. All of the routines we
need should work in fixed-size, caller-allocated buffers and
reasonable stack space.
2. Make panic message for abort() stub clearer. There are calls to
it, but they imply internal errors inside libsodium which should
not happen unless there is an unrecoverable software bug in
libsodium.
PR kern/58468

sys/crypto/sodium: Add self-test for XChaCha20/Poly1305 AEAD.
PR kern/58468
 1.2 02-Dec-2014  pooka Remove shlib_version files and just use Makefile SHLIB_MAJOR/MINOR,
with the default provided by Makefile.rump (they're all 0.0 anyway)
 1.1 05-Dec-2010  pooka branches: 1.1.6; 1.1.20; 1.1.38;
rumpcrypto should never have been its own faction, so finally make
it a component under kern, i.e. rumpcrypto -> rumpkern_crypto.
 1.1.38.1 06-Apr-2015  skrll Sync with HEAD
 1.1.20.1 03-Dec-2017  jdolecek update from HEAD
 1.1.6.2 05-Mar-2011  rmind sync with head
 1.1.6.1 05-Dec-2010  rmind file shlib_version was added on branch rmind-uvmplock on 2011-03-05 20:56:13 +0000
 1.1 22-Sep-2018  rmind branches: 1.1.2; 1.1.6;
Add rumpkern_nv (in-kernel RUMP libnv).
 1.1.6.2 10-Jun-2019  christos Sync with HEAD
 1.1.6.1 22-Sep-2018  christos file Makefile was added on branch phil-wifi on 2019-06-10 22:09:52 +0000
 1.1.2.2 30-Sep-2018  pgoyette Ssync with HEAD
 1.1.2.1 22-Sep-2018  pgoyette file Makefile was added on branch pgoyette-compat on 2018-09-30 01:45:57 +0000
 1.1 30-Sep-2021  yamaguchi Added tests for the linear hook APIs
 1.2 10-Apr-2022  andvar fix various typos in comments and output/log messages.
 1.1 30-Sep-2021  yamaguchi Added tests for the linear hook APIs
 1.6 21-Jan-2019  alnsn Add sljit rump glue for aarch64.

XXX arm_icache_sync_range() and mips_icache_sync_range() call

(void)rumpcomp_sync_icache((void *)va, (uint64_t)sz);

but linking fails if I do the same on aarch64 (I suspect it also
fails on 32bit arm and mips).

As a workaround, I call __builtin___clear_cache().
 1.5 05-Jan-2016  christos branches: 1.5.16; 1.5.18;
- Change LDADD/DPADD in library dependencies to LIBDPLIBS
- Fix some LDADD abuse and remove useless dependencies
- include <bsd.init.mk> in the right place where appropriate
From Rin Okuyama
 1.4 19-Oct-2015  pooka Add a COMMENT describing what each component roughly does.

"make describe" prints the comment.

Requested/inspired by Vincent Schwarzer on rumpkernel-users
 1.3 23-Jul-2014  alnsn branches: 1.3.4; 1.3.6;
Implement rumpcomp_sync_icache() hyprecall for arm and add
a barebone implementation of arm cache ops to librumpkern_sljit.
 1.2 22-Jul-2014  alnsn Implement rumpcomp_sync_icache() hyprecall for mips and add
a barebone implementation if mips cache ops to librumpkern_sljit.
 1.1 16-Nov-2013  rmind branches: 1.1.2; 1.1.4; 1.1.6;
Add rumpkern_sljit and rumpnet_bpfjit modules.
 1.1.6.2 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.1.6.1 16-Nov-2013  yamt file Makefile was added on branch yamt-pagecache on 2014-05-22 11:41:14 +0000
 1.1.4.2 18-May-2014  rmind sync with head
 1.1.4.1 16-Nov-2013  rmind file Makefile was added on branch rmind-smpnet on 2014-05-18 17:46:17 +0000
 1.1.2.1 10-Aug-2014  tls Rebase.
 1.3.6.2 19-Mar-2016  skrll Sync with HEAD
 1.3.6.1 27-Dec-2015  skrll Sync with HEAD (as of 26th Dec)
 1.3.4.3 03-Dec-2017  jdolecek update from HEAD
 1.3.4.2 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.3.4.1 23-Jul-2014  tls file Makefile was added on branch tls-maxphys on 2014-08-20 00:04:40 +0000
 1.5.18.1 10-Jun-2019  christos Sync with HEAD
 1.5.16.1 26-Jan-2019  pgoyette Sync with HEAD
 1.2 02-Dec-2014  pooka Remove shlib_version files and just use Makefile SHLIB_MAJOR/MINOR,
with the default provided by Makefile.rump (they're all 0.0 anyway)
 1.1 16-Nov-2013  rmind branches: 1.1.4; 1.1.6; 1.1.10; 1.1.12;
Add rumpkern_sljit and rumpnet_bpfjit modules.
 1.1.12.1 06-Apr-2015  skrll Sync with HEAD
 1.1.10.3 03-Dec-2017  jdolecek update from HEAD
 1.1.10.2 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.1.10.1 16-Nov-2013  tls file shlib_version was added on branch tls-maxphys on 2014-08-20 00:04:40 +0000
 1.1.6.2 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.1.6.1 16-Nov-2013  yamt file shlib_version was added on branch yamt-pagecache on 2014-05-22 11:41:14 +0000
 1.1.4.2 18-May-2014  rmind sync with head
 1.1.4.1 16-Nov-2013  rmind file shlib_version was added on branch rmind-smpnet on 2014-05-18 17:46:17 +0000
 1.1 22-Jul-2014  alnsn branches: 1.1.2; 1.1.6;
Implement rumpcomp_sync_icache() hyprecall for mips and add
a barebone implementation if mips cache ops to librumpkern_sljit.
 1.1.6.2 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.1.6.1 22-Jul-2014  tls file sljit_rump.h was added on branch tls-maxphys on 2014-08-20 00:04:40 +0000
 1.1.2.2 10-Aug-2014  tls Rebase.
 1.1.2.1 22-Jul-2014  tls file sljit_rump.h was added on branch tls-earlyentropy on 2014-08-10 06:56:50 +0000
 1.1 21-Jan-2019  alnsn branches: 1.1.2; 1.1.6;
Add sljit rump glue for aarch64.

XXX arm_icache_sync_range() and mips_icache_sync_range() call

(void)rumpcomp_sync_icache((void *)va, (uint64_t)sz);

but linking fails if I do the same on aarch64 (I suspect it also
fails on 32bit arm and mips).

As a workaround, I call __builtin___clear_cache().
 1.1.6.2 10-Jun-2019  christos Sync with HEAD
 1.1.6.1 21-Jan-2019  christos file cpufunc.c was added on branch phil-wifi on 2019-06-10 22:09:52 +0000
 1.1.2.2 26-Jan-2019  pgoyette Sync with HEAD
 1.1.2.1 21-Jan-2019  pgoyette file cpufunc.c was added on branch pgoyette-compat on 2019-01-26 22:00:37 +0000
 1.1 21-Jan-2019  alnsn branches: 1.1.2; 1.1.6;
Add sljit rump glue for aarch64.

XXX arm_icache_sync_range() and mips_icache_sync_range() call

(void)rumpcomp_sync_icache((void *)va, (uint64_t)sz);

but linking fails if I do the same on aarch64 (I suspect it also
fails on 32bit arm and mips).

As a workaround, I call __builtin___clear_cache().
 1.1.6.2 10-Jun-2019  christos Sync with HEAD
 1.1.6.1 21-Jan-2019  christos file sljit_rump.c was added on branch phil-wifi on 2019-06-10 22:09:52 +0000
 1.1.2.2 26-Jan-2019  pgoyette Sync with HEAD
 1.1.2.1 21-Jan-2019  pgoyette file sljit_rump.c was added on branch pgoyette-compat on 2019-01-26 22:00:37 +0000
 1.1 23-Jul-2014  alnsn branches: 1.1.2; 1.1.6;
Implement rumpcomp_sync_icache() hyprecall for arm and add
a barebone implementation of arm cache ops to librumpkern_sljit.
 1.1.6.2 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.1.6.1 23-Jul-2014  tls file cpufunc.c was added on branch tls-maxphys on 2014-08-20 00:04:40 +0000
 1.1.2.2 10-Aug-2014  tls Rebase.
 1.1.2.1 23-Jul-2014  tls file cpufunc.c was added on branch tls-earlyentropy on 2014-08-10 06:56:51 +0000
 1.1 23-Jul-2014  alnsn branches: 1.1.2; 1.1.6;
Implement rumpcomp_sync_icache() hyprecall for arm and add
a barebone implementation of arm cache ops to librumpkern_sljit.
 1.1.6.2 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.1.6.1 23-Jul-2014  tls file sljit_rump.c was added on branch tls-maxphys on 2014-08-20 00:04:40 +0000
 1.1.2.2 10-Aug-2014  tls Rebase.
 1.1.2.1 23-Jul-2014  tls file sljit_rump.c was added on branch tls-earlyentropy on 2014-08-10 06:56:51 +0000
 1.3 22-Jan-2019  alnsn Cast register_t to uintptr_t before casting to void *.

Not sure what's going on here but evbmips64-el build fails
without this cast.
 1.2 22-Jan-2019  alnsn Sync the first argument type with mco_icache_sync_range.
 1.1 22-Jul-2014  alnsn branches: 1.1.2; 1.1.6; 1.1.30; 1.1.32;
Implement rumpcomp_sync_icache() hyprecall for mips and add
a barebone implementation if mips cache ops to librumpkern_sljit.
 1.1.32.1 10-Jun-2019  christos Sync with HEAD
 1.1.30.1 26-Jan-2019  pgoyette Sync with HEAD
 1.1.6.2 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.1.6.1 22-Jul-2014  tls file cache.c was added on branch tls-maxphys on 2014-08-20 00:04:40 +0000
 1.1.2.2 10-Aug-2014  tls Rebase.
 1.1.2.1 22-Jul-2014  tls file cache.c was added on branch tls-earlyentropy on 2014-08-10 06:56:51 +0000
 1.1 22-Jul-2014  alnsn branches: 1.1.2; 1.1.6;
Implement rumpcomp_sync_icache() hyprecall for mips and add
a barebone implementation if mips cache ops to librumpkern_sljit.
 1.1.6.2 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.1.6.1 22-Jul-2014  tls file sljit_rump.c was added on branch tls-maxphys on 2014-08-20 00:04:40 +0000
 1.1.2.2 10-Aug-2014  tls Rebase.
 1.1.2.1 22-Jul-2014  tls file sljit_rump.c was added on branch tls-earlyentropy on 2014-08-10 06:56:51 +0000
 1.6 15-Apr-2021  christos fix reversed comment
 1.5 15-Apr-2021  christos - Define NEED_ISYSTEM here
- include <bsd.init.mk> now that we can do it, because we need Makefile.rump
to be included first, so that NOLINT gets defined, so that we don't end up
building lint modules just for this.
 1.4 28-May-2018  chs branches: 1.4.16;
merge a new version of the CDDL dtrace and ZFS code.
this changes the upstream vendor from OpenSolaris to FreeBSD,
and this version is based on FreeBSD svn r315983.

in addition to the 10 years of improvements from upstream,
this version also has these NetBSD-specific enhancements:
- dtrace FBT probes can now be placed in kernel modules.
- ZFS now supports mmap().
 1.3 19-Oct-2015  pooka branches: 1.3.16;
Add a COMMENT describing what each component roughly does.

"make describe" prints the comment.

Requested/inspired by Vincent Schwarzer on rumpkernel-users
 1.2 06-Dec-2011  njoly branches: 1.2.6; 1.2.24;
Remove the unneeded rump component; the library already includes the
module code that will be initialised by rump.

Fix PR/44708, t_zpool:create test failure for RUMP_LOCKDEBUG=yes
builds.
 1.1 18-Jan-2011  haad branches: 1.1.4; 1.1.8; 1.1.10; 1.1.14;
Add support for compiling ZFS and Solaris modules as RUMP libraries. Add
some locking and rumpcopy primitives and refactor module building Makefiles
to work with both RUMP and kernel modules. This is first part of adding
support for regular test of zfs on NetBSD to hunt some bugs and make it
stable.

Ok by pooka@.
 1.1.14.1 18-Feb-2012  mrg merge to -current.
 1.1.10.1 17-Apr-2012  yamt sync with head
 1.1.8.2 06-Jun-2011  jruoho Sync with HEAD.
 1.1.8.1 18-Jan-2011  jruoho file Makefile was added on branch jruoho-x86intr on 2011-06-06 09:10:06 +0000
 1.1.4.2 05-Mar-2011  rmind sync with head
 1.1.4.1 18-Jan-2011  rmind file Makefile was added on branch rmind-uvmplock on 2011-03-05 20:56:13 +0000
 1.2.24.1 27-Dec-2015  skrll Sync with HEAD (as of 26th Dec)
 1.2.6.1 03-Dec-2017  jdolecek update from HEAD
 1.3.16.1 25-Jun-2018  pgoyette Sync with HEAD
 1.4.16.1 17-Apr-2021  thorpej Sync with HEAD.
 1.2 06-Dec-2011  njoly Remove the unneeded rump component; the library already includes the
module code that will be initialised by rump.

Fix PR/44708, t_zpool:create test failure for RUMP_LOCKDEBUG=yes
builds.
 1.1 18-Jan-2011  haad branches: 1.1.4; 1.1.8; 1.1.10; 1.1.14;
Add support for compiling ZFS and Solaris modules as RUMP libraries. Add
some locking and rumpcopy primitives and refactor module building Makefiles
to work with both RUMP and kernel modules. This is first part of adding
support for regular test of zfs on NetBSD to hunt some bugs and make it
stable.

Ok by pooka@.
 1.1.14.1 18-Feb-2012  mrg merge to -current.
 1.1.10.1 17-Apr-2012  yamt sync with head
 1.1.8.2 06-Jun-2011  jruoho Sync with HEAD.
 1.1.8.1 18-Jan-2011  jruoho file component.c was added on branch jruoho-x86intr on 2011-06-06 09:10:06 +0000
 1.1.4.2 05-Mar-2011  rmind sync with head
 1.1.4.1 18-Jan-2011  rmind file component.c was added on branch rmind-uvmplock on 2011-03-05 20:56:13 +0000
 1.2 02-Dec-2014  pooka Remove shlib_version files and just use Makefile SHLIB_MAJOR/MINOR,
with the default provided by Makefile.rump (they're all 0.0 anyway)
 1.1 18-Jan-2011  haad branches: 1.1.4; 1.1.8; 1.1.20; 1.1.38;
Add support for compiling ZFS and Solaris modules as RUMP libraries. Add
some locking and rumpcopy primitives and refactor module building Makefiles
to work with both RUMP and kernel modules. This is first part of adding
support for regular test of zfs on NetBSD to hunt some bugs and make it
stable.

Ok by pooka@.
 1.1.38.1 06-Apr-2015  skrll Sync with HEAD
 1.1.20.1 03-Dec-2017  jdolecek update from HEAD
 1.1.8.2 06-Jun-2011  jruoho Sync with HEAD.
 1.1.8.1 18-Jan-2011  jruoho file shlib_version was added on branch jruoho-x86intr on 2011-06-06 09:10:07 +0000
 1.1.4.2 05-Mar-2011  rmind sync with head
 1.1.4.1 18-Jan-2011  rmind file shlib_version was added on branch rmind-uvmplock on 2011-03-05 20:56:13 +0000
 1.6 26-Jan-2016  pooka Put the kernelside rump kernel headers into <rump-sys> instead of
sprinkling them around the faction directories. Avoids having
to add a CPPFLAGS (or several) to pretty much every component
Makefile.

Leave compat headers around in the old locations.

The commit changes some autogenerated files, but I'll fix the
generators shortly and regen.
 1.5 19-Oct-2015  pooka Add a COMMENT describing what each component roughly does.

"make describe" prints the comment.

Requested/inspired by Vincent Schwarzer on rumpkernel-users
 1.4 09-May-2015  pooka Make the cool syscall autogeneration feature work with the
newfangled r/o src feature.
 1.3 08-Mar-2015  christos regen
 1.2 13-Mar-2014  pooka branches: 1.2.4; 1.2.8;
rename component.c -> sys_cygwin_component.c
 1.1 10-Apr-2013  pooka branches: 1.1.4; 1.1.6;
cygwin compat
 1.1.6.1 18-May-2014  rmind sync with head
 1.1.4.4 03-Dec-2017  jdolecek update from HEAD
 1.1.4.3 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.1.4.2 23-Jun-2013  tls resync from head
 1.1.4.1 10-Apr-2013  tls file Makefile was added on branch tls-maxphys on 2013-06-23 06:20:27 +0000
 1.2.8.4 19-Mar-2016  skrll Sync with HEAD
 1.2.8.3 27-Dec-2015  skrll Sync with HEAD (as of 26th Dec)
 1.2.8.2 06-Jun-2015  skrll Sync with HEAD
 1.2.8.1 06-Apr-2015  skrll Sync with HEAD
 1.2.4.2 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.2.4.1 13-Mar-2014  yamt file Makefile was added on branch yamt-pagecache on 2014-05-22 11:41:14 +0000
 1.2 13-Mar-2014  pooka rename component.c -> sys_cygwin_component.c
 1.1 10-Apr-2013  pooka branches: 1.1.4; 1.1.6;
cygwin compat
 1.1.6.1 18-May-2014  rmind sync with head
 1.1.4.3 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.1.4.2 23-Jun-2013  tls resync from head
 1.1.4.1 10-Apr-2013  tls file component.c was added on branch tls-maxphys on 2013-06-23 06:20:27 +0000
 1.3 27-Jan-2019  pgoyette Merge the [pgoyette-compat] branch
 1.2 12-Dec-2018  alnsn Add missing RCSIDs.
 1.1 10-Apr-2013  pooka branches: 1.1.4; 1.1.12; 1.1.38; 1.1.40;
cygwin compat
 1.1.40.1 10-Jun-2019  christos Sync with HEAD
 1.1.38.1 26-Dec-2018  pgoyette Sync with HEAD, resolve a few conflicts
 1.1.12.2 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.1.12.1 10-Apr-2013  yamt file rump_cygwin_compat.c was added on branch yamt-pagecache on 2014-05-22 11:41:14 +0000
 1.1.4.2 23-Jun-2013  tls resync from head
 1.1.4.1 10-Apr-2013  tls file rump_cygwin_compat.c was added on branch tls-maxphys on 2013-06-23 06:20:27 +0000
 1.4 09-May-2015  pooka remove files which are autogenerated in every build
 1.3 08-Mar-2015  christos regen
 1.2 15-May-2013  pooka branches: 1.2.2; 1.2.10; 1.2.14;
regen
 1.1 10-Apr-2013  pooka gen
 1.2.14.2 06-Jun-2015  skrll Sync with HEAD
 1.2.14.1 06-Apr-2015  skrll Sync with HEAD
 1.2.10.2 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.2.10.1 15-May-2013  yamt file rump_cygwin_syscall.h was added on branch yamt-pagecache on 2014-05-22 11:41:14 +0000
 1.2.2.3 03-Dec-2017  jdolecek update from HEAD
 1.2.2.2 23-Jun-2013  tls resync from head
 1.2.2.1 15-May-2013  tls file rump_cygwin_syscall.h was added on branch tls-maxphys on 2013-06-23 06:20:27 +0000
 1.4 09-May-2015  pooka remove files which are autogenerated in every build
 1.3 08-Mar-2015  christos regen
 1.2 15-May-2013  pooka branches: 1.2.2; 1.2.10; 1.2.14;
regen
 1.1 10-Apr-2013  pooka gen
 1.2.14.2 06-Jun-2015  skrll Sync with HEAD
 1.2.14.1 06-Apr-2015  skrll Sync with HEAD
 1.2.10.2 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.2.10.1 15-May-2013  yamt file rump_cygwin_syscallargs.h was added on branch yamt-pagecache on 2014-05-22 11:41:14 +0000
 1.2.2.3 03-Dec-2017  jdolecek update from HEAD
 1.2.2.2 23-Jun-2013  tls resync from head
 1.2.2.1 15-May-2013  tls file rump_cygwin_syscallargs.h was added on branch tls-maxphys on 2013-06-23 06:20:27 +0000
 1.4 09-May-2015  pooka remove files which are autogenerated in every build
 1.3 08-Mar-2015  christos regen
 1.2 15-May-2013  pooka branches: 1.2.2; 1.2.10; 1.2.14;
regen
 1.1 10-Apr-2013  pooka gen
 1.2.14.2 06-Jun-2015  skrll Sync with HEAD
 1.2.14.1 06-Apr-2015  skrll Sync with HEAD
 1.2.10.2 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.2.10.1 15-May-2013  yamt file rump_cygwin_syscalls.c was added on branch yamt-pagecache on 2014-05-22 11:41:14 +0000
 1.2.2.3 03-Dec-2017  jdolecek update from HEAD
 1.2.2.2 23-Jun-2013  tls resync from head
 1.2.2.1 15-May-2013  tls file rump_cygwin_syscalls.c was added on branch tls-maxphys on 2013-06-23 06:20:27 +0000
 1.4 09-May-2015  pooka remove files which are autogenerated in every build
 1.3 08-Mar-2015  christos regen
 1.2 15-May-2013  pooka branches: 1.2.2; 1.2.10; 1.2.14;
regen
 1.1 10-Apr-2013  pooka gen
 1.2.14.2 06-Jun-2015  skrll Sync with HEAD
 1.2.14.1 06-Apr-2015  skrll Sync with HEAD
 1.2.10.2 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.2.10.1 15-May-2013  yamt file rump_cygwin_sysent.c was added on branch yamt-pagecache on 2014-05-22 11:41:14 +0000
 1.2.2.3 03-Dec-2017  jdolecek update from HEAD
 1.2.2.2 23-Jun-2013  tls resync from head
 1.2.2.1 15-May-2013  tls file rump_cygwin_sysent.c was added on branch tls-maxphys on 2013-06-23 06:20:27 +0000
 1.2 02-Dec-2014  pooka Remove shlib_version files and just use Makefile SHLIB_MAJOR/MINOR,
with the default provided by Makefile.rump (they're all 0.0 anyway)
 1.1 10-Apr-2013  pooka branches: 1.1.4; 1.1.12; 1.1.16;
cygwin compat
 1.1.16.1 06-Apr-2015  skrll Sync with HEAD
 1.1.12.2 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.1.12.1 10-Apr-2013  yamt file shlib_version was added on branch yamt-pagecache on 2014-05-22 11:41:14 +0000
 1.1.4.3 03-Dec-2017  jdolecek update from HEAD
 1.1.4.2 23-Jun-2013  tls resync from head
 1.1.4.1 10-Apr-2013  tls file shlib_version was added on branch tls-maxphys on 2013-06-23 06:20:27 +0000
 1.6 27-Jan-2019  rin Fix merge botches. I hope there's no more left...
 1.5 27-Jan-2019  pgoyette Merge the [pgoyette-compat] branch
 1.4 12-Dec-2018  alnsn Add missing RCSIDs.
 1.3 10-Aug-2018  pgoyette Allow syscall_establish() to install new syscalls when the existing
entry-point is either sys_nomodule or sys_nosys. Update the
makesyscalls.sh script to create a const array of bits to allow
syscall_disestablish() to properly restore the original entry-point.
Update all the initializers of struct emul to initialize the pointer
to the bit array struct emul.

XXX Regen of all files created by makesyscalls.sh will come soon,
XXX followed by a kernel version bump (since struct emul is being
XXX modified).

This commit should address PR kern/45781 and also removes the need
for the work-around for that PR in file

sys/arch/usermode/modules/syscallemu/syscallemu.c
 1.2 26-Jan-2016  pooka branches: 1.2.16; 1.2.18;
Put the kernelside rump kernel headers into <rump-sys> instead of
sprinkling them around the faction directories. Avoids having
to add a CPPFLAGS (or several) to pretty much every component
Makefile.

Leave compat headers around in the old locations.

The commit changes some autogenerated files, but I'll fix the
generators shortly and regen.
 1.1 13-Mar-2014  pooka branches: 1.1.4; 1.1.6; 1.1.10; 1.1.12;
rename component.c -> sys_cygwin_component.c
 1.1.12.1 19-Mar-2016  skrll Sync with HEAD
 1.1.10.3 03-Dec-2017  jdolecek update from HEAD
 1.1.10.2 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.1.10.1 13-Mar-2014  tls file sys_cygwin_component.c was added on branch tls-maxphys on 2014-08-20 00:04:40 +0000
 1.1.6.2 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.1.6.1 13-Mar-2014  yamt file sys_cygwin_component.c was added on branch yamt-pagecache on 2014-05-22 11:41:14 +0000
 1.1.4.2 18-May-2014  rmind sync with head
 1.1.4.1 13-Mar-2014  rmind file sys_cygwin_component.c was added on branch rmind-smpnet on 2014-05-18 17:46:17 +0000
 1.2.18.1 10-Jun-2019  christos Sync with HEAD
 1.2.16.2 26-Dec-2018  pgoyette Sync with HEAD, resolve a few conflicts
 1.2.16.1 06-Sep-2018  pgoyette Sync with HEAD

Resolve a couple of conflicts (result of the uimin/uimax changes)
 1.2 11-Sep-2019  bad define sysautoload here too, to catch up with kern/makesyscalls.sh r1.173
XXX: This needs to be re-thought
 1.1 10-Apr-2013  pooka branches: 1.1.4; 1.1.12; 1.1.40;
cygwin compat
 1.1.40.1 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.1.12.2 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.1.12.1 10-Apr-2013  yamt file syscalls.conf was added on branch yamt-pagecache on 2014-05-22 11:41:14 +0000
 1.1.4.2 23-Jun-2013  tls resync from head
 1.1.4.1 10-Apr-2013  tls file syscalls.conf was added on branch tls-maxphys on 2013-06-23 06:20:27 +0000
 1.2 15-May-2013  pooka branches: 1.2.2; 1.2.10;
Support utimes/futimes. Makes at least fsu_touch work on these platforms.
 1.1 10-Apr-2013  pooka cygwin compat
 1.2.10.2 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.2.10.1 15-May-2013  yamt file syscalls.master was added on branch yamt-pagecache on 2014-05-22 11:41:14 +0000
 1.2.2.2 23-Jun-2013  tls resync from head
 1.2.2.1 15-May-2013  tls file syscalls.master was added on branch tls-maxphys on 2013-06-23 06:20:27 +0000
 1.11 26-Jan-2016  pooka Put the kernelside rump kernel headers into <rump-sys> instead of
sprinkling them around the faction directories. Avoids having
to add a CPPFLAGS (or several) to pretty much every component
Makefile.

Leave compat headers around in the old locations.

The commit changes some autogenerated files, but I'll fix the
generators shortly and regen.
 1.10 19-Oct-2015  pooka Add a COMMENT describing what each component roughly does.

"make describe" prints the comment.

Requested/inspired by Vincent Schwarzer on rumpkernel-users
 1.9 09-May-2015  pooka Make the cool syscall autogeneration feature work with the
newfangled r/o src feature.
 1.8 08-Mar-2015  christos factor out the syscall building code
 1.7 08-Mar-2015  christos regen and add a build target.
 1.6 13-Mar-2014  pooka branches: 1.6.6;
rename component.c -> sys_linux_component.c
 1.5 28-Jan-2014  njoly Build with IPv6 support.
 1.4 25-Jan-2014  njoly Add now needed linux_pipe.c sources.
 1.3 14-Dec-2013  njoly Add syscall wrapper for mknodat(2) to deal with PAD argument difference
between rump and linux versions.
 1.2 07-Mar-2013  pooka branches: 1.2.6; 1.2.8;
If linux syscall emulation is linked in to a rump kernel, use it as the
default emulation.
 1.1 19-Sep-2012  pooka branches: 1.1.2;
Add the first attempt at rump kernel support for Linux clients. This has
been lightly tested with unmodified networking applications with both
the client and server on a 64bit le host. Unlike the standard Linux
compat libs where args and syscalls are swizzled around, this compat
lib only massages the arg data types due to the assumption that syscall
numbers come from librumpclient (via librumphijack) and therefore match
the native NetBSD numbers.
 1.1.2.3 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.1.2.2 30-Oct-2012  yamt sync with head
 1.1.2.1 19-Sep-2012  yamt file Makefile was added on branch yamt-pagecache on 2012-10-30 17:22:53 +0000
 1.2.8.1 18-May-2014  rmind sync with head
 1.2.6.4 03-Dec-2017  jdolecek update from HEAD
 1.2.6.3 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.2.6.2 07-Mar-2013  pooka If linux syscall emulation is linked in to a rump kernel, use it as the
default emulation.
 1.2.6.1 07-Mar-2013  pooka file Makefile was added on branch tls-maxphys on 2013-03-07 18:53:40 +0000
 1.6.6.4 19-Mar-2016  skrll Sync with HEAD
 1.6.6.3 27-Dec-2015  skrll Sync with HEAD (as of 26th Dec)
 1.6.6.2 06-Jun-2015  skrll Sync with HEAD
 1.6.6.1 06-Apr-2015  skrll Sync with HEAD
 1.12 13-Mar-2014  pooka rename component.c -> sys_linux_component.c
 1.11 18-Feb-2014  pooka remove stub now provided by rump kernel base
 1.10 17-Dec-2013  pooka fix tyop
 1.9 16-Dec-2013  pooka Translate return values for emulations, e.g. Linux. For ports without
__HAVE_MINIMAL_EMUL, we simply look up the values from p->p_emul->e_errno.
For ports which cannot afford to keep an extra pointer per emul structure
around, we hope there is __HAVE_SYSCALL_INTERN support and thread the
errno values through p_emuldata. Notably, we cannot alter the syscall
method like most ports do with syscall_intern, since they do it via
p_mdproc, so MI code is not possible there.
 1.8 03-Apr-2013  pooka branches: 1.8.4; 1.8.6;
i386 has a special way to handle uname. We don't really care about
satisfying uname in a rump kernel, but attempt to return something
sane anyway.
 1.7 03-Apr-2013  pooka add a few arch-specific stubs to make this link on arm
 1.6 07-Mar-2013  pooka set e_nsysent
 1.5 07-Mar-2013  pooka implement linux_fakedev: silly in, silly out, silly inside out
 1.4 07-Mar-2013  pooka If linux syscall emulation is linked in to a rump kernel, use it as the
default emulation.
 1.3 17-Nov-2012  pooka include correct header
 1.2 20-Sep-2012  pooka branches: 1.2.2;
sort stubs, remove autonamespacing and add some signal-related ones
I missed yesterday
 1.1 19-Sep-2012  pooka Add the first attempt at rump kernel support for Linux clients. This has
been lightly tested with unmodified networking applications with both
the client and server on a 64bit le host. Unlike the standard Linux
compat libs where args and syscalls are swizzled around, this compat
lib only massages the arg data types due to the assumption that syscall
numbers come from librumpclient (via librumphijack) and therefore match
the native NetBSD numbers.
 1.2.2.4 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.2.2.3 16-Jan-2013  yamt sync with (a bit old) head
 1.2.2.2 30-Oct-2012  yamt sync with head
 1.2.2.1 20-Sep-2012  yamt file component.c was added on branch yamt-pagecache on 2012-10-30 17:22:53 +0000
 1.8.6.1 18-May-2014  rmind sync with head
 1.8.4.3 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.8.4.2 03-Apr-2013  pooka i386 has a special way to handle uname. We don't really care about
satisfying uname in a rump kernel, but attempt to return something
sane anyway.
 1.8.4.1 03-Apr-2013  pooka file component.c was added on branch tls-maxphys on 2013-04-03 23:51:21 +0000
 1.5 27-Jan-2019  rin Fix merge botches. I hope there's no more left...
 1.4 27-Jan-2019  pgoyette Merge the [pgoyette-compat] branch
 1.3 12-Dec-2018  alnsn Add missing RCSIDs.
 1.2 10-Jan-2014  njoly branches: 1.2.4; 1.2.6; 1.2.10; 1.2.34; 1.2.36;
Do not redefine linux syscalls arguments, just use compat ones
instead.
Include linux_socketcall.h to bring missing socket syscall
arguments/prototypes on arches that have socketcall(2).
Finally, cleanup rump linux syscall wrapper, to remove linux syscall
argument/prototype local copy.
 1.1 14-Dec-2013  njoly Add syscall wrapper for mknodat(2) to deal with PAD argument difference
between rump and linux versions.
 1.2.36.1 10-Jun-2019  christos Sync with HEAD
 1.2.34.1 26-Dec-2018  pgoyette Sync with HEAD, resolve a few conflicts
 1.2.10.2 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.2.10.1 10-Jan-2014  tls file linux_rump.c was added on branch tls-maxphys on 2014-08-20 00:04:40 +0000
 1.2.6.2 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.2.6.1 10-Jan-2014  yamt file linux_rump.c was added on branch yamt-pagecache on 2014-05-22 11:41:14 +0000
 1.2.4.2 18-May-2014  rmind sync with head
 1.2.4.1 10-Jan-2014  rmind file linux_rump.c was added on branch rmind-smpnet on 2014-05-18 17:46:17 +0000
 1.16 09-May-2015  pooka remove files which are autogenerated in every build
 1.15 08-Mar-2015  christos regen and add a build target.
 1.14 29-May-2014  njoly branches: 1.14.4;
Regen for utimes(2).
 1.13 04-May-2014  njoly branches: 1.13.2;
Regen for pread/pwrite signature.
 1.12 04-Apr-2014  njoly branches: 1.12.2;
Regen.
 1.11 25-Jan-2014  njoly Regen for pipe2 and lchown.
 1.10 10-Jan-2014  njoly Regen.
 1.9 10-Jan-2014  njoly Regen.
 1.8 14-Dec-2013  njoly Regen.
 1.7 14-Dec-2013  njoly Regen.
 1.6 08-Dec-2013  njoly Regen.
 1.5 07-Dec-2013  njoly Regen.
 1.4 07-Dec-2013  njoly Regen.
 1.3 05-Oct-2013  njoly Regen for utimensat(2).
 1.2 08-Apr-2013  pooka branches: 1.2.4; 1.2.6;
regen for utimes
 1.1 07-Mar-2013  pooka regen
 1.2.6.1 18-May-2014  rmind sync with head
 1.2.4.4 03-Dec-2017  jdolecek update from HEAD
 1.2.4.3 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.2.4.2 23-Jun-2013  tls resync from head
 1.2.4.1 08-Apr-2013  tls file rump_linux_syscall.h was added on branch tls-maxphys on 2013-06-23 06:20:28 +0000
 1.12.2.1 10-Aug-2014  tls Rebase.
 1.13.2.2 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.13.2.1 04-May-2014  yamt file rump_linux_syscall.h was added on branch yamt-pagecache on 2014-05-22 11:41:14 +0000
 1.14.4.2 06-Jun-2015  skrll Sync with HEAD
 1.14.4.1 06-Apr-2015  skrll Sync with HEAD
 1.19 09-May-2015  pooka remove files which are autogenerated in every build
 1.18 08-Mar-2015  christos regen and add a build target.
 1.17 29-May-2014  njoly branches: 1.17.4;
Regen for utimes(2).
 1.16 04-May-2014  njoly Regen for pread/pwrite signature.
 1.15 04-Apr-2014  njoly branches: 1.15.2;
Regen.
 1.14 25-Jan-2014  njoly Regen for pipe2 and lchown.
 1.13 10-Jan-2014  njoly Regen.
 1.12 10-Jan-2014  njoly Regen.
 1.11 14-Dec-2013  njoly Regen.
 1.10 14-Dec-2013  njoly Regen.
 1.9 08-Dec-2013  njoly Regen.
 1.8 07-Dec-2013  njoly Regen.
 1.7 07-Dec-2013  njoly Regen.
 1.6 05-Oct-2013  njoly Regen for utimensat(2).
 1.5 08-Apr-2013  pooka branches: 1.5.4; 1.5.6;
regen for utimes
 1.4 07-Mar-2013  pooka regen
 1.3 04-Mar-2013  stacktic Regen to use getdents64 instead of getdents
 1.2 17-Feb-2013  stacktic Regen to add lstat64
 1.1 19-Sep-2012  pooka branches: 1.1.2;
gen (without re)
 1.1.2.3 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.1.2.2 30-Oct-2012  yamt sync with head
 1.1.2.1 19-Sep-2012  yamt file rump_linux_syscallargs.h was added on branch yamt-pagecache on 2012-10-30 17:22:53 +0000
 1.5.6.1 18-May-2014  rmind sync with head
 1.5.4.4 03-Dec-2017  jdolecek update from HEAD
 1.5.4.3 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.5.4.2 08-Apr-2013  pooka regen for utimes
 1.5.4.1 08-Apr-2013  pooka file rump_linux_syscallargs.h was added on branch tls-maxphys on 2013-04-08 20:58:28 +0000
 1.15.2.1 10-Aug-2014  tls Rebase.
 1.17.4.2 06-Jun-2015  skrll Sync with HEAD
 1.17.4.1 06-Apr-2015  skrll Sync with HEAD
 1.19 09-May-2015  pooka remove files which are autogenerated in every build
 1.18 08-Mar-2015  christos regen and add a build target.
 1.17 29-May-2014  njoly branches: 1.17.4;
Regen for utimes(2).
 1.16 04-May-2014  njoly Regen for pread/pwrite signature.
 1.15 04-Apr-2014  njoly branches: 1.15.2;
Regen.
 1.14 25-Jan-2014  njoly Regen for pipe2 and lchown.
 1.13 10-Jan-2014  njoly Regen.
 1.12 10-Jan-2014  njoly Regen.
 1.11 14-Dec-2013  njoly Regen.
 1.10 14-Dec-2013  njoly Regen.
 1.9 08-Dec-2013  njoly Regen.
 1.8 07-Dec-2013  njoly Regen.
 1.7 07-Dec-2013  njoly Regen.
 1.6 05-Oct-2013  njoly Regen for utimensat(2).
 1.5 08-Apr-2013  pooka branches: 1.5.4; 1.5.6;
regen for utimes
 1.4 07-Mar-2013  pooka regen
 1.3 04-Mar-2013  stacktic Regen to use getdents64 instead of getdents
 1.2 17-Feb-2013  stacktic Regen to add lstat64
 1.1 19-Sep-2012  pooka branches: 1.1.2;
gen (without re)
 1.1.2.3 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.1.2.2 30-Oct-2012  yamt sync with head
 1.1.2.1 19-Sep-2012  yamt file rump_linux_syscalls.c was added on branch yamt-pagecache on 2012-10-30 17:22:53 +0000
 1.5.6.1 18-May-2014  rmind sync with head
 1.5.4.4 03-Dec-2017  jdolecek update from HEAD
 1.5.4.3 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.5.4.2 08-Apr-2013  pooka regen for utimes
 1.5.4.1 08-Apr-2013  pooka file rump_linux_syscalls.c was added on branch tls-maxphys on 2013-04-08 20:58:28 +0000
 1.15.2.1 10-Aug-2014  tls Rebase.
 1.17.4.2 06-Jun-2015  skrll Sync with HEAD
 1.17.4.1 06-Apr-2015  skrll Sync with HEAD
 1.19 09-May-2015  pooka remove files which are autogenerated in every build
 1.18 08-Mar-2015  christos regen and add a build target.
 1.17 29-May-2014  njoly branches: 1.17.4;
Regen for utimes(2).
 1.16 04-May-2014  njoly Regen for pread/pwrite signature.
 1.15 04-Apr-2014  njoly branches: 1.15.2;
Regen.
 1.14 25-Jan-2014  njoly Regen for pipe2 and lchown.
 1.13 10-Jan-2014  njoly Regen.
 1.12 10-Jan-2014  njoly Regen.
 1.11 14-Dec-2013  njoly Regen.
 1.10 14-Dec-2013  njoly Regen.
 1.9 08-Dec-2013  njoly Regen.
 1.8 07-Dec-2013  njoly Regen.
 1.7 07-Dec-2013  njoly Regen.
 1.6 05-Oct-2013  njoly Regen for utimensat(2).
 1.5 08-Apr-2013  pooka branches: 1.5.4; 1.5.6;
regen for utimes
 1.4 07-Mar-2013  pooka regen
 1.3 04-Mar-2013  stacktic Regen to use getdents64 instead of getdents
 1.2 17-Feb-2013  stacktic Regen to add lstat64
 1.1 19-Sep-2012  pooka branches: 1.1.2;
gen (without re)
 1.1.2.3 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.1.2.2 30-Oct-2012  yamt sync with head
 1.1.2.1 19-Sep-2012  yamt file rump_linux_sysent.c was added on branch yamt-pagecache on 2012-10-30 17:22:53 +0000
 1.5.6.1 18-May-2014  rmind sync with head
 1.5.4.4 03-Dec-2017  jdolecek update from HEAD
 1.5.4.3 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.5.4.2 08-Apr-2013  pooka regen for utimes
 1.5.4.1 08-Apr-2013  pooka file rump_linux_sysent.c was added on branch tls-maxphys on 2013-04-08 20:58:28 +0000
 1.15.2.1 10-Aug-2014  tls Rebase.
 1.17.4.2 06-Jun-2015  skrll Sync with HEAD
 1.17.4.1 06-Apr-2015  skrll Sync with HEAD
 1.2 02-Dec-2014  pooka Remove shlib_version files and just use Makefile SHLIB_MAJOR/MINOR,
with the default provided by Makefile.rump (they're all 0.0 anyway)
 1.1 19-Sep-2012  pooka branches: 1.1.2; 1.1.16;
Add the first attempt at rump kernel support for Linux clients. This has
been lightly tested with unmodified networking applications with both
the client and server on a 64bit le host. Unlike the standard Linux
compat libs where args and syscalls are swizzled around, this compat
lib only massages the arg data types due to the assumption that syscall
numbers come from librumpclient (via librumphijack) and therefore match
the native NetBSD numbers.
 1.1.16.1 06-Apr-2015  skrll Sync with HEAD
 1.1.2.2 30-Oct-2012  yamt sync with head
 1.1.2.1 19-Sep-2012  yamt file shlib_version was added on branch yamt-pagecache on 2012-10-30 17:22:53 +0000
 1.7 27-Jan-2019  rin Fix merge botches. I hope there's no more left...
 1.6 27-Jan-2019  pgoyette Merge the [pgoyette-compat] branch
 1.5 12-Dec-2018  alnsn Add missing RCSIDs.
 1.4 10-Aug-2018  pgoyette Allow syscall_establish() to install new syscalls when the existing
entry-point is either sys_nomodule or sys_nosys. Update the
makesyscalls.sh script to create a const array of bits to allow
syscall_disestablish() to properly restore the original entry-point.
Update all the initializers of struct emul to initialize the pointer
to the bit array struct emul.

XXX Regen of all files created by makesyscalls.sh will come soon,
XXX followed by a kernel version bump (since struct emul is being
XXX modified).

This commit should address PR kern/45781 and also removes the need
for the work-around for that PR in file

sys/arch/usermode/modules/syscallemu/syscallemu.c
 1.3 26-Jan-2016  pooka branches: 1.3.16; 1.3.18;
Put the kernelside rump kernel headers into <rump-sys> instead of
sprinkling them around the faction directories. Avoids having
to add a CPPFLAGS (or several) to pretty much every component
Makefile.

Leave compat headers around in the old locations.

The commit changes some autogenerated files, but I'll fix the
generators shortly and regen.
 1.2 04-Apr-2014  njoly branches: 1.2.4; 1.2.6; 1.2.10; 1.2.12;
Add support for timing syscalls.
 1.1 13-Mar-2014  pooka rename component.c -> sys_linux_component.c
 1.2.12.1 19-Mar-2016  skrll Sync with HEAD
 1.2.10.3 03-Dec-2017  jdolecek update from HEAD
 1.2.10.2 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.2.10.1 04-Apr-2014  tls file sys_linux_component.c was added on branch tls-maxphys on 2014-08-20 00:04:40 +0000
 1.2.6.2 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.2.6.1 04-Apr-2014  yamt file sys_linux_component.c was added on branch yamt-pagecache on 2014-05-22 11:41:14 +0000
 1.2.4.2 18-May-2014  rmind sync with head
 1.2.4.1 04-Apr-2014  rmind file sys_linux_component.c was added on branch rmind-smpnet on 2014-05-18 17:46:17 +0000
 1.3.18.1 10-Jun-2019  christos Sync with HEAD
 1.3.16.2 26-Dec-2018  pgoyette Sync with HEAD, resolve a few conflicts
 1.3.16.1 06-Sep-2018  pgoyette Sync with HEAD

Resolve a couple of conflicts (result of the uimin/uimax changes)
 1.3 11-Sep-2019  bad define sysautoload here too, to catch up with kern/makesyscalls.sh r1.173
XXX: This needs to be re-thought
 1.2 07-Mar-2013  pooka branches: 1.2.6; 1.2.40;
generate sysnumhdr so that we get NSYSENT
 1.1 19-Sep-2012  pooka branches: 1.1.2;
Add the first attempt at rump kernel support for Linux clients. This has
been lightly tested with unmodified networking applications with both
the client and server on a 64bit le host. Unlike the standard Linux
compat libs where args and syscalls are swizzled around, this compat
lib only massages the arg data types due to the assumption that syscall
numbers come from librumpclient (via librumphijack) and therefore match
the native NetBSD numbers.
 1.1.2.3 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.1.2.2 30-Oct-2012  yamt sync with head
 1.1.2.1 19-Sep-2012  yamt file syscalls.conf was added on branch yamt-pagecache on 2012-10-30 17:22:53 +0000
 1.2.40.1 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.2.6.2 07-Mar-2013  pooka generate sysnumhdr so that we get NSYSENT
 1.2.6.1 07-Mar-2013  pooka file syscalls.conf was added on branch tls-maxphys on 2013-03-07 19:08:55 +0000
 1.16 29-May-2014  njoly Ajust for compat linux utimes(2) change.
 1.15 04-May-2014  njoly Adjust pread/pwrite signature to match reality.
 1.14 04-Apr-2014  njoly branches: 1.14.2;
Add support for timing syscalls.
 1.13 25-Jan-2014  njoly Add pipe2 and lchown syscalls.
 1.12 10-Jan-2014  njoly Add NetBSD futimes/lutimes syscalls which does not exists on Linux.
 1.11 10-Jan-2014  njoly Do not redefine linux syscalls arguments, just use compat ones
instead.
Include linux_socketcall.h to bring missing socket syscall
arguments/prototypes on arches that have socketcall(2).
Finally, cleanup rump linux syscall wrapper, to remove linux syscall
argument/prototype local copy.
 1.10 14-Dec-2013  njoly Use native/rump syscalls for pread/pwrite instead of linux ones
which only exist to deal with PAD argument.
 1.9 14-Dec-2013  njoly Add syscall wrapper for mknodat(2) to deal with PAD argument difference
between rump and linux versions.
 1.8 08-Dec-2013  njoly Add support for *at syscalls.
 1.7 07-Dec-2013  njoly Add dup3 support.
 1.6 07-Dec-2013  njoly Remove liutimes(2) that linux never had.
 1.5 05-Oct-2013  njoly Add utimensat(2) support.
 1.4 08-Apr-2013  pooka branches: 1.4.4; 1.4.6;
support utimes on non-alpha linux platforms
 1.3 04-Mar-2013  stacktic Regen to use getdents64 instead of getdents
 1.2 17-Feb-2013  stacktic Regen to add lstat64
 1.1 19-Sep-2012  pooka branches: 1.1.2;
Add the first attempt at rump kernel support for Linux clients. This has
been lightly tested with unmodified networking applications with both
the client and server on a 64bit le host. Unlike the standard Linux
compat libs where args and syscalls are swizzled around, this compat
lib only massages the arg data types due to the assumption that syscall
numbers come from librumpclient (via librumphijack) and therefore match
the native NetBSD numbers.
 1.1.2.3 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.1.2.2 30-Oct-2012  yamt sync with head
 1.1.2.1 19-Sep-2012  yamt file syscalls.master was added on branch yamt-pagecache on 2012-10-30 17:22:53 +0000
 1.4.6.1 18-May-2014  rmind sync with head
 1.4.4.3 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.4.4.2 08-Apr-2013  pooka support utimes on non-alpha linux platforms
 1.4.4.1 08-Apr-2013  pooka file syscalls.master was added on branch tls-maxphys on 2013-04-08 20:54:48 +0000
 1.14.2.1 10-Aug-2014  tls Rebase.
 1.7 26-Jan-2016  pooka Put the kernelside rump kernel headers into <rump-sys> instead of
sprinkling them around the faction directories. Avoids having
to add a CPPFLAGS (or several) to pretty much every component
Makefile.

Leave compat headers around in the old locations.

The commit changes some autogenerated files, but I'll fix the
generators shortly and regen.
 1.6 19-Oct-2015  pooka Add a COMMENT describing what each component roughly does.

"make describe" prints the comment.

Requested/inspired by Vincent Schwarzer on rumpkernel-users
 1.5 09-May-2015  pooka Make the cool syscall autogeneration feature work with the
newfangled r/o src feature.
 1.4 08-Mar-2015  christos regen
 1.3 16-Mar-2014  pooka branches: 1.3.4; 1.3.8;
fix tyop
 1.2 13-Mar-2014  pooka rename component.c -> sys_sunos_component.c
 1.1 09-Apr-2013  pooka branches: 1.1.4; 1.1.6;
Add enough syscall compat for fs-utils to work on modern Solaris
and derivatives.
 1.1.6.1 18-May-2014  rmind sync with head
 1.1.4.4 03-Dec-2017  jdolecek update from HEAD
 1.1.4.3 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.1.4.2 23-Jun-2013  tls resync from head
 1.1.4.1 09-Apr-2013  tls file Makefile was added on branch tls-maxphys on 2013-06-23 06:20:28 +0000
 1.3.8.4 19-Mar-2016  skrll Sync with HEAD
 1.3.8.3 27-Dec-2015  skrll Sync with HEAD (as of 26th Dec)
 1.3.8.2 06-Jun-2015  skrll Sync with HEAD
 1.3.8.1 06-Apr-2015  skrll Sync with HEAD
 1.3.4.2 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.3.4.1 16-Mar-2014  yamt file Makefile was added on branch yamt-pagecache on 2014-05-22 11:41:14 +0000
 1.2 13-Mar-2014  pooka rename component.c -> sys_sunos_component.c
 1.1 09-Apr-2013  pooka branches: 1.1.4; 1.1.6;
Add enough syscall compat for fs-utils to work on modern Solaris
and derivatives.
 1.1.6.1 18-May-2014  rmind sync with head
 1.1.4.3 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.1.4.2 23-Jun-2013  tls resync from head
 1.1.4.1 09-Apr-2013  tls file component.c was added on branch tls-maxphys on 2013-06-23 06:20:28 +0000
 1.4 27-Jan-2019  pgoyette Merge the [pgoyette-compat] branch
 1.3 12-Dec-2018  alnsn Add missing RCSIDs.
 1.2 28-Jul-2017  riastradh branches: 1.2.2; 1.2.4;
Fail, don't panic, on bad dirents from file system.

Controllable via puffs from userland.

From Ilja Van Sprundel.
 1.1 09-Apr-2013  pooka branches: 1.1.4; 1.1.12; 1.1.14; 1.1.16; 1.1.18; 1.1.26; 1.1.32;
Add enough syscall compat for fs-utils to work on modern Solaris
and derivatives.
 1.1.32.1 09-Aug-2017  snj Pull up following revision(s) (requested by spz in ticket #193):
sys/compat/common/vfs_syscalls_12.c: revision 1.34
sys/rump/kern/lib/libsys_sunos/rump_sunos_compat.c: revision 1.2
sys/compat/svr4_32/svr4_32_misc.c: revision 1.78
sys/compat/sunos32/sunos32_misc.c: revision 1.78
sys/compat/linux/common/linux_misc.c: revision 1.239
sys/compat/osf1/osf1_file.c: revision 1.44
sys/compat/common/vfs_syscalls_43.c: revision 1.60
sys/compat/svr4/svr4_misc.c: revision 1.158
sys/compat/ibcs2/ibcs2_misc.c: revision 1.114
sys/compat/linux/common/linux_file64.c: revision 1.59
sys/compat/linux32/common/linux32_dirent.c: revision 1.18
sys/compat/sunos/sunos_misc.c: revision 1.171
Fail, don't panic, on bad dirents from file system.
Controllable via puffs from userland.
From Ilja Van Sprundel.
 1.1.26.1 12-Aug-2017  snj Pull up following revision(s) (requested by mrg in ticket #1479):
sys/compat/common/vfs_syscalls_12.c: revision 1.34
sys/rump/kern/lib/libsys_sunos/rump_sunos_compat.c: revision 1.2
sys/compat/svr4_32/svr4_32_misc.c: revision 1.78
sys/compat/sunos32/sunos32_misc.c: revision 1.78
sys/compat/linux/common/linux_misc.c: revision 1.239
sys/compat/osf1/osf1_file.c: revision 1.44
sys/compat/common/vfs_syscalls_43.c: revision 1.60
sys/compat/svr4/svr4_misc.c: revision 1.158
sys/compat/ibcs2/ibcs2_misc.c: revision 1.114
sys/compat/linux/common/linux_file64.c: revision 1.59
sys/compat/linux32/common/linux32_dirent.c: revision 1.18
sys/compat/sunos/sunos_misc.c: revision 1.171
Fail, don't panic, on bad dirents from file system.
Controllable via puffs from userland.
From Ilja Van Sprundel.
 1.1.18.1 12-Aug-2017  snj Pull up following revision(s) (requested by mrg in ticket #1479):
sys/compat/common/vfs_syscalls_12.c: revision 1.34
sys/rump/kern/lib/libsys_sunos/rump_sunos_compat.c: revision 1.2
sys/compat/svr4_32/svr4_32_misc.c: revision 1.78
sys/compat/sunos32/sunos32_misc.c: revision 1.78
sys/compat/linux/common/linux_misc.c: revision 1.239
sys/compat/osf1/osf1_file.c: revision 1.44
sys/compat/common/vfs_syscalls_43.c: revision 1.60
sys/compat/svr4/svr4_misc.c: revision 1.158
sys/compat/ibcs2/ibcs2_misc.c: revision 1.114
sys/compat/linux/common/linux_file64.c: revision 1.59
sys/compat/linux32/common/linux32_dirent.c: revision 1.18
sys/compat/sunos/sunos_misc.c: revision 1.171
Fail, don't panic, on bad dirents from file system.
Controllable via puffs from userland.
From Ilja Van Sprundel.
 1.1.16.1 28-Aug-2017  skrll Sync with HEAD
 1.1.14.1 12-Aug-2017  snj Pull up following revision(s) (requested by mrg in ticket #1479):
sys/compat/common/vfs_syscalls_12.c: revision 1.34
sys/rump/kern/lib/libsys_sunos/rump_sunos_compat.c: revision 1.2
sys/compat/svr4_32/svr4_32_misc.c: revision 1.78
sys/compat/sunos32/sunos32_misc.c: revision 1.78
sys/compat/linux/common/linux_misc.c: revision 1.239
sys/compat/osf1/osf1_file.c: revision 1.44
sys/compat/common/vfs_syscalls_43.c: revision 1.60
sys/compat/svr4/svr4_misc.c: revision 1.158
sys/compat/ibcs2/ibcs2_misc.c: revision 1.114
sys/compat/linux/common/linux_file64.c: revision 1.59
sys/compat/linux32/common/linux32_dirent.c: revision 1.18
sys/compat/sunos/sunos_misc.c: revision 1.171
Fail, don't panic, on bad dirents from file system.
Controllable via puffs from userland.
From Ilja Van Sprundel.
 1.1.12.2 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.1.12.1 09-Apr-2013  yamt file rump_sunos_compat.c was added on branch yamt-pagecache on 2014-05-22 11:41:14 +0000
 1.1.4.3 03-Dec-2017  jdolecek update from HEAD
 1.1.4.2 23-Jun-2013  tls resync from head
 1.1.4.1 09-Apr-2013  tls file rump_sunos_compat.c was added on branch tls-maxphys on 2013-06-23 06:20:28 +0000
 1.2.4.1 10-Jun-2019  christos Sync with HEAD
 1.2.2.1 26-Dec-2018  pgoyette Sync with HEAD, resolve a few conflicts
 1.4 09-May-2015  pooka remove files which are autogenerated in every build
 1.3 08-Mar-2015  christos regen
 1.2 15-May-2013  pooka branches: 1.2.2; 1.2.10; 1.2.14;
regen
 1.1 09-Apr-2013  pooka gen
 1.2.14.2 06-Jun-2015  skrll Sync with HEAD
 1.2.14.1 06-Apr-2015  skrll Sync with HEAD
 1.2.10.2 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.2.10.1 15-May-2013  yamt file rump_sunos_syscall.h was added on branch yamt-pagecache on 2014-05-22 11:41:14 +0000
 1.2.2.3 03-Dec-2017  jdolecek update from HEAD
 1.2.2.2 23-Jun-2013  tls resync from head
 1.2.2.1 15-May-2013  tls file rump_sunos_syscall.h was added on branch tls-maxphys on 2013-06-23 06:20:28 +0000
 1.4 09-May-2015  pooka remove files which are autogenerated in every build
 1.3 08-Mar-2015  christos regen
 1.2 15-May-2013  pooka branches: 1.2.2; 1.2.10; 1.2.14;
regen
 1.1 09-Apr-2013  pooka gen
 1.2.14.2 06-Jun-2015  skrll Sync with HEAD
 1.2.14.1 06-Apr-2015  skrll Sync with HEAD
 1.2.10.2 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.2.10.1 15-May-2013  yamt file rump_sunos_syscallargs.h was added on branch yamt-pagecache on 2014-05-22 11:41:14 +0000
 1.2.2.3 03-Dec-2017  jdolecek update from HEAD
 1.2.2.2 23-Jun-2013  tls resync from head
 1.2.2.1 15-May-2013  tls file rump_sunos_syscallargs.h was added on branch tls-maxphys on 2013-06-23 06:20:28 +0000
 1.4 09-May-2015  pooka remove files which are autogenerated in every build
 1.3 08-Mar-2015  christos regen
 1.2 15-May-2013  pooka branches: 1.2.2; 1.2.10; 1.2.14;
regen
 1.1 09-Apr-2013  pooka gen
 1.2.14.2 06-Jun-2015  skrll Sync with HEAD
 1.2.14.1 06-Apr-2015  skrll Sync with HEAD
 1.2.10.2 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.2.10.1 15-May-2013  yamt file rump_sunos_syscalls.c was added on branch yamt-pagecache on 2014-05-22 11:41:14 +0000
 1.2.2.3 03-Dec-2017  jdolecek update from HEAD
 1.2.2.2 23-Jun-2013  tls resync from head
 1.2.2.1 15-May-2013  tls file rump_sunos_syscalls.c was added on branch tls-maxphys on 2013-06-23 06:20:28 +0000
 1.4 09-May-2015  pooka remove files which are autogenerated in every build
 1.3 08-Mar-2015  christos regen
 1.2 15-May-2013  pooka branches: 1.2.2; 1.2.10; 1.2.14;
regen
 1.1 09-Apr-2013  pooka gen
 1.2.14.2 06-Jun-2015  skrll Sync with HEAD
 1.2.14.1 06-Apr-2015  skrll Sync with HEAD
 1.2.10.2 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.2.10.1 15-May-2013  yamt file rump_sunos_sysent.c was added on branch yamt-pagecache on 2014-05-22 11:41:14 +0000
 1.2.2.3 03-Dec-2017  jdolecek update from HEAD
 1.2.2.2 23-Jun-2013  tls resync from head
 1.2.2.1 15-May-2013  tls file rump_sunos_sysent.c was added on branch tls-maxphys on 2013-06-23 06:20:28 +0000
 1.2 02-Dec-2014  pooka Remove shlib_version files and just use Makefile SHLIB_MAJOR/MINOR,
with the default provided by Makefile.rump (they're all 0.0 anyway)
 1.1 09-Apr-2013  pooka branches: 1.1.4; 1.1.12; 1.1.16;
Add enough syscall compat for fs-utils to work on modern Solaris
and derivatives.
 1.1.16.1 06-Apr-2015  skrll Sync with HEAD
 1.1.12.2 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.1.12.1 09-Apr-2013  yamt file shlib_version was added on branch yamt-pagecache on 2014-05-22 11:41:14 +0000
 1.1.4.3 03-Dec-2017  jdolecek update from HEAD
 1.1.4.2 23-Jun-2013  tls resync from head
 1.1.4.1 09-Apr-2013  tls file shlib_version was added on branch tls-maxphys on 2013-06-23 06:20:28 +0000
 1.6 27-Jan-2019  rin Fix merge botches. I hope there's no more left...
 1.5 27-Jan-2019  pgoyette Merge the [pgoyette-compat] branch
 1.4 12-Dec-2018  alnsn Add missing RCSIDs.
 1.3 10-Aug-2018  pgoyette Allow syscall_establish() to install new syscalls when the existing
entry-point is either sys_nomodule or sys_nosys. Update the
makesyscalls.sh script to create a const array of bits to allow
syscall_disestablish() to properly restore the original entry-point.
Update all the initializers of struct emul to initialize the pointer
to the bit array struct emul.

XXX Regen of all files created by makesyscalls.sh will come soon,
XXX followed by a kernel version bump (since struct emul is being
XXX modified).

This commit should address PR kern/45781 and also removes the need
for the work-around for that PR in file

sys/arch/usermode/modules/syscallemu/syscallemu.c
 1.2 26-Jan-2016  pooka branches: 1.2.16; 1.2.18;
Put the kernelside rump kernel headers into <rump-sys> instead of
sprinkling them around the faction directories. Avoids having
to add a CPPFLAGS (or several) to pretty much every component
Makefile.

Leave compat headers around in the old locations.

The commit changes some autogenerated files, but I'll fix the
generators shortly and regen.
 1.1 13-Mar-2014  pooka branches: 1.1.4; 1.1.6; 1.1.10; 1.1.12;
rename component.c -> sys_sunos_component.c
 1.1.12.1 19-Mar-2016  skrll Sync with HEAD
 1.1.10.3 03-Dec-2017  jdolecek update from HEAD
 1.1.10.2 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.1.10.1 13-Mar-2014  tls file sys_sunos_component.c was added on branch tls-maxphys on 2014-08-20 00:04:40 +0000
 1.1.6.2 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.1.6.1 13-Mar-2014  yamt file sys_sunos_component.c was added on branch yamt-pagecache on 2014-05-22 11:41:14 +0000
 1.1.4.2 18-May-2014  rmind sync with head
 1.1.4.1 13-Mar-2014  rmind file sys_sunos_component.c was added on branch rmind-smpnet on 2014-05-18 17:46:18 +0000
 1.2.18.1 10-Jun-2019  christos Sync with HEAD
 1.2.16.2 26-Dec-2018  pgoyette Sync with HEAD, resolve a few conflicts
 1.2.16.1 06-Sep-2018  pgoyette Sync with HEAD

Resolve a couple of conflicts (result of the uimin/uimax changes)
 1.2 11-Sep-2019  bad define sysautoload here too, to catch up with kern/makesyscalls.sh r1.173
XXX: This needs to be re-thought
 1.1 09-Apr-2013  pooka branches: 1.1.4; 1.1.12; 1.1.40;
Add enough syscall compat for fs-utils to work on modern Solaris
and derivatives.
 1.1.40.1 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.1.12.2 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.1.12.1 09-Apr-2013  yamt file syscalls.conf was added on branch yamt-pagecache on 2014-05-22 11:41:14 +0000
 1.1.4.2 23-Jun-2013  tls resync from head
 1.1.4.1 09-Apr-2013  tls file syscalls.conf was added on branch tls-maxphys on 2013-06-23 06:20:28 +0000
 1.2 15-May-2013  pooka branches: 1.2.2; 1.2.10;
Support utimes/futimes. Makes at least fsu_touch work on these platforms.
 1.1 09-Apr-2013  pooka Add enough syscall compat for fs-utils to work on modern Solaris
and derivatives.
 1.2.10.2 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.2.10.1 15-May-2013  yamt file syscalls.master was added on branch yamt-pagecache on 2014-05-22 11:41:14 +0000
 1.2.2.2 23-Jun-2013  tls resync from head
 1.2.2.1 15-May-2013  tls file syscalls.master was added on branch tls-maxphys on 2013-06-23 06:20:28 +0000
 1.3 26-Jan-2016  pooka branches: 1.3.16;
Put the kernelside rump kernel headers into <rump-sys> instead of
sprinkling them around the faction directories. Avoids having
to add a CPPFLAGS (or several) to pretty much every component
Makefile.

Leave compat headers around in the old locations.

The commit changes some autogenerated files, but I'll fix the
generators shortly and regen.
 1.2 19-Oct-2015  pooka Add a COMMENT describing what each component roughly does.

"make describe" prints the comment.

Requested/inspired by Vincent Schwarzer on rumpkernel-users
 1.1 07-Jan-2015  pooka branches: 1.1.2;
Move sysproxy support into a separate component, rumpkern_sysproxy,
instead of it being always provided by the rump kernel base. This
move accomplishes two things:

1) it is no longer necessary to provide sysproxy hypercall stubs for
platforms which do not want to use sysproxy
2) it is easier to reason about the security aspects, since configurations
not linking the sysproxy component simply do not support remote
system calls

discussed on rumpkernel-users
 1.1.2.4 19-Mar-2016  skrll Sync with HEAD
 1.1.2.3 27-Dec-2015  skrll Sync with HEAD (as of 26th Dec)
 1.1.2.2 06-Apr-2015  skrll Sync with HEAD
 1.1.2.1 07-Jan-2015  skrll file Makefile was added on branch nick-nhusb on 2015-04-06 15:18:30 +0000
 1.3.16.2 03-Dec-2017  jdolecek update from HEAD
 1.3.16.1 26-Jan-2016  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:39:15 +0000
 1.10 16-Jul-2023  riastradh rump: Use l_sched.info, not l_private, for cv waits.

- l_sched is scheduler-private, used only by sched_m2.c, should be safe
- l_private is lwp-private, used by tls in user threads, would like to
reuse for kthreads too
 1.9 21-Aug-2022  riastradh rump libsysproxy: More workarounds for pmap abuse.
 1.8 06-Oct-2019  uwe xc_barrier - convenience function to xc_broadcast() a nop.

Make the intent more clear and also avoid a bunch of (xcfunc_t)nullop
casts that gcc 8 -Wcast-function-type is not happy about.
 1.7 17-May-2019  ozaki-r Implement an aggressive psref leak detector

It is yet another psref leak detector that enables to tell where a leak occurs
while a simpler version that is already committed just tells an occurrence of a
leak.

Investigating of psref leaks is hard because once a leak occurs a percpu list of
psref that tracks references can be corrupted. A reference to a tracking object
is memorized in the list via an intermediate object (struct psref) that is
normally allocated on a stack of a thread. Thus, the intermediate object can be
overwritten on a leak resulting in corruption of the list.

The tracker makes a shadow entry to an intermediate object and stores some hints
into it (currently it's a caller address of psref_acquire). We can detect a
leak by checking the entries on certain points where any references should be
released such as the return point of syscalls and the end of each softint
handler.

The feature is expensive and enabled only if the kernel is built with
PSREF_DEBUG.

Proposed on tech-kern
 1.6 19-Apr-2019  ozaki-r Implement a simple psref leak detector

It detects leaks by counting up the number of held psref by an LWP and checking
its zeroness at the end of syscalls and softint handlers. For the counter, a
unused field of struct lwp is reused.

The detector runs only if DIAGNOSTIC is turned on.
 1.5 18-Apr-2019  ozaki-r rump: add missing sanity checks at the end of syscalls
 1.4 26-Jan-2016  pooka branches: 1.4.16; 1.4.20;
Put the kernelside rump kernel headers into <rump-sys> instead of
sprinkling them around the faction directories. Avoids having
to add a CPPFLAGS (or several) to pretty much every component
Makefile.

Leave compat headers around in the old locations.

The commit changes some autogenerated files, but I'll fix the
generators shortly and regen.
 1.3 18-Apr-2015  pooka Give remote clients struct pmap storage. Although the pmap is unused,
that way we can sure that the pmap macro framework doesn't access all
the wrong places.
 1.2 03-Apr-2015  pooka branches: 1.2.2;
Use a different vmspace for rump kernel proc0 and local clients.
While the rump kernel and local clients are by definition in the same
host vmspace, there are subtle differences in how in-kernel code works
in case accessing the kernel vmspace or a user process vmspace.

Problem discovered by riastradh's "read(fd, NULL, 1)" test.
 1.1 07-Jan-2015  pooka Move sysproxy support into a separate component, rumpkern_sysproxy,
instead of it being always provided by the rump kernel base. This
move accomplishes two things:

1) it is no longer necessary to provide sysproxy hypercall stubs for
platforms which do not want to use sysproxy
2) it is easier to reason about the security aspects, since configurations
not linking the sysproxy component simply do not support remote
system calls

discussed on rumpkernel-users
 1.2.2.4 19-Mar-2016  skrll Sync with HEAD
 1.2.2.3 06-Jun-2015  skrll Sync with HEAD
 1.2.2.2 06-Apr-2015  skrll Sync with HEAD
 1.2.2.1 03-Apr-2015  skrll file sysproxy.c was added on branch nick-nhusb on 2015-04-06 15:18:30 +0000
 1.4.20.2 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.4.20.1 10-Jun-2019  christos Sync with HEAD
 1.4.16.2 03-Dec-2017  jdolecek update from HEAD
 1.4.16.1 26-Jan-2016  jdolecek file sysproxy.c was added on branch tls-maxphys on 2017-12-03 11:39:15 +0000
 1.8 26-Jan-2016  pooka Put the kernelside rump kernel headers into <rump-sys> instead of
sprinkling them around the faction directories. Avoids having
to add a CPPFLAGS (or several) to pretty much every component
Makefile.

Leave compat headers around in the old locations.

The commit changes some autogenerated files, but I'll fix the
generators shortly and regen.
 1.7 19-Oct-2015  pooka Add a COMMENT describing what each component roughly does.

"make describe" prints the comment.

Requested/inspired by Vincent Schwarzer on rumpkernel-users
 1.6 20-Aug-2015  christos use ioconf.h for pseudo-device attach prototypes
 1.5 23-Apr-2015  pooka Rename RUMP_COMPAT to RUMP_NBCOMBAT to better signify what the
variable does.
 1.4 22-Apr-2015  pooka Build compat code only when specified by RUMP_COMPAT
 1.3 13-Mar-2014  pooka branches: 1.3.6;
rename component.c -> tty_component.c
 1.2 16-Jul-2013  pooka COMPAT_60 for rump kernels.

Requested via github (buildrump.sh)
 1.1 14-Jun-2010  pooka branches: 1.1.2; 1.1.4; 1.1.6; 1.1.14; 1.1.24; 1.1.28;
Add unadulterated tty support as a rump component.
 1.1.28.2 18-May-2014  rmind sync with head
 1.1.28.1 28-Aug-2013  rmind sync with head
 1.1.24.2 03-Dec-2017  jdolecek update from HEAD
 1.1.24.1 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.1.14.1 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.1.6.2 17-Aug-2010  uebayasi Sync with HEAD.
 1.1.6.1 14-Jun-2010  uebayasi file Makefile was added on branch uebayasi-xip on 2010-08-17 06:47:59 +0000
 1.1.4.2 11-Aug-2010  yamt sync with head.
 1.1.4.1 14-Jun-2010  yamt file Makefile was added on branch yamt-nfs-mp on 2010-08-11 22:55:06 +0000
 1.1.2.2 03-Jul-2010  rmind sync with head
 1.1.2.1 14-Jun-2010  rmind file Makefile was added on branch rmind-uvmplock on 2010-07-03 01:20:02 +0000
 1.3.6.4 19-Mar-2016  skrll Sync with HEAD
 1.3.6.3 27-Dec-2015  skrll Sync with HEAD (as of 26th Dec)
 1.3.6.2 22-Sep-2015  skrll Sync with HEAD
 1.3.6.1 06-Jun-2015  skrll Sync with HEAD
 1.1 20-Aug-2015  christos branches: 1.1.2; 1.1.18;
use ioconf.h for pseudo-device attach prototypes
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 20-Aug-2015  jdolecek file TTY.ioconf was added on branch tls-maxphys on 2017-12-03 11:39:15 +0000
 1.1.2.2 22-Sep-2015  skrll Sync with HEAD
 1.1.2.1 20-Aug-2015  skrll file TTY.ioconf was added on branch nick-nhusb on 2015-09-22 12:06:15 +0000
 1.3 13-Mar-2014  pooka rename component.c -> tty_component.c
 1.2 07-Jan-2011  pooka branches: 1.2.8; 1.2.18; 1.2.22;
Avoid double init of tty_lock if rumpkern_tty is included. LOCKDEBUG
does not tolerate double inits.

pointed out by njoly
 1.1 14-Jun-2010  pooka branches: 1.1.2; 1.1.4; 1.1.6;
Add unadulterated tty support as a rump component.
 1.1.6.2 17-Aug-2010  uebayasi Sync with HEAD.
 1.1.6.1 14-Jun-2010  uebayasi file component.c was added on branch uebayasi-xip on 2010-08-17 06:47:59 +0000
 1.1.4.2 11-Aug-2010  yamt sync with head.
 1.1.4.1 14-Jun-2010  yamt file component.c was added on branch yamt-nfs-mp on 2010-08-11 22:55:06 +0000
 1.1.2.3 05-Mar-2011  rmind sync with head
 1.1.2.2 03-Jul-2010  rmind sync with head
 1.1.2.1 14-Jun-2010  rmind file component.c was added on branch rmind-uvmplock on 2010-07-03 01:20:02 +0000
 1.2.22.1 18-May-2014  rmind sync with head
 1.2.18.1 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.2.8.1 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.1 14-Jun-2010  pooka branches: 1.1.2; 1.1.4; 1.1.6;
Add unadulterated tty support as a rump component.
 1.1.6.2 17-Aug-2010  uebayasi Sync with HEAD.
 1.1.6.1 14-Jun-2010  uebayasi file opt_ptm.h was added on branch uebayasi-xip on 2010-08-17 06:47:59 +0000
 1.1.4.2 11-Aug-2010  yamt sync with head.
 1.1.4.1 14-Jun-2010  yamt file opt_ptm.h was added on branch yamt-nfs-mp on 2010-08-11 22:55:06 +0000
 1.1.2.2 03-Jul-2010  rmind sync with head
 1.1.2.1 14-Jun-2010  rmind file opt_ptm.h was added on branch rmind-uvmplock on 2010-07-03 01:20:02 +0000
 1.2 02-Dec-2014  pooka Remove shlib_version files and just use Makefile SHLIB_MAJOR/MINOR,
with the default provided by Makefile.rump (they're all 0.0 anyway)
 1.1 14-Jun-2010  pooka branches: 1.1.2; 1.1.4; 1.1.6; 1.1.24; 1.1.42;
Add unadulterated tty support as a rump component.
 1.1.42.1 06-Apr-2015  skrll Sync with HEAD
 1.1.24.1 03-Dec-2017  jdolecek update from HEAD
 1.1.6.2 17-Aug-2010  uebayasi Sync with HEAD.
 1.1.6.1 14-Jun-2010  uebayasi file shlib_version was added on branch uebayasi-xip on 2010-08-17 06:47:59 +0000
 1.1.4.2 11-Aug-2010  yamt sync with head.
 1.1.4.1 14-Jun-2010  yamt file shlib_version was added on branch yamt-nfs-mp on 2010-08-11 22:55:06 +0000
 1.1.2.2 03-Jul-2010  rmind sync with head
 1.1.2.1 14-Jun-2010  rmind file shlib_version was added on branch rmind-uvmplock on 2010-07-03 01:20:02 +0000
 1.4 26-Jan-2016  pooka Put the kernelside rump kernel headers into <rump-sys> instead of
sprinkling them around the faction directories. Avoids having
to add a CPPFLAGS (or several) to pretty much every component
Makefile.

Leave compat headers around in the old locations.

The commit changes some autogenerated files, but I'll fix the
generators shortly and regen.
 1.3 07-Jan-2016  pooka Initialize non-VFS parts of tty subsystem already at RUMP_COMPONENT_KERN.

That way components under RUMP__FACTION_DEV can call tty routines.
 1.2 20-Aug-2015  christos use ioconf.h for pseudo-device attach prototypes
 1.1 13-Mar-2014  pooka branches: 1.1.4; 1.1.6; 1.1.10; 1.1.12;
rename component.c -> tty_component.c
 1.1.12.2 19-Mar-2016  skrll Sync with HEAD
 1.1.12.1 22-Sep-2015  skrll Sync with HEAD
 1.1.10.3 03-Dec-2017  jdolecek update from HEAD
 1.1.10.2 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.1.10.1 13-Mar-2014  tls file tty_component.c was added on branch tls-maxphys on 2014-08-20 00:04:40 +0000
 1.1.6.2 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.1.6.1 13-Mar-2014  yamt file tty_component.c was added on branch yamt-pagecache on 2014-05-22 11:41:15 +0000
 1.1.4.2 18-May-2014  rmind sync with head
 1.1.4.1 13-Mar-2014  rmind file tty_component.c was added on branch rmind-smpnet on 2014-05-18 17:46:18 +0000
 1.5 03-Jun-2023  lukem adapt to ${CC_WNO_IMPLICIT_FALLTHROUGH}

Use ${CC_WNO_IMPLICIT_FALLTHROUGH} instead of
the older style more complex expressions.
 1.4 29-Sep-2019  mrg convert HAVE_GCC == 7 to HAVE_GCC >= 7.
 1.3 05-Feb-2019  mrg be sure to only apply zlib.c's -Wno-error=implicit-fallthrough to GCC 7.
push the setting into the rump and module version too.
 1.2 19-Oct-2015  pooka branches: 1.2.18;
Add a COMMENT describing what each component roughly does.

"make describe" prints the comment.

Requested/inspired by Vincent Schwarzer on rumpkernel-users
 1.1 21-Jun-2010  pooka branches: 1.1.2; 1.1.4; 1.1.6; 1.1.24; 1.1.42;
support zlib
 1.1.42.1 27-Dec-2015  skrll Sync with HEAD (as of 26th Dec)
 1.1.24.1 03-Dec-2017  jdolecek update from HEAD
 1.1.6.2 17-Aug-2010  uebayasi Sync with HEAD.
 1.1.6.1 21-Jun-2010  uebayasi file Makefile was added on branch uebayasi-xip on 2010-08-17 06:48:00 +0000
 1.1.4.2 11-Aug-2010  yamt sync with head.
 1.1.4.1 21-Jun-2010  yamt file Makefile was added on branch yamt-nfs-mp on 2010-08-11 22:55:06 +0000
 1.1.2.2 03-Jul-2010  rmind sync with head
 1.1.2.1 21-Jun-2010  rmind file Makefile was added on branch rmind-uvmplock on 2010-07-03 01:20:02 +0000
 1.2.18.2 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.2.18.1 10-Jun-2019  christos Sync with HEAD
 1.2 02-Dec-2014  pooka Remove shlib_version files and just use Makefile SHLIB_MAJOR/MINOR,
with the default provided by Makefile.rump (they're all 0.0 anyway)
 1.1 21-Jun-2010  pooka branches: 1.1.2; 1.1.4; 1.1.6; 1.1.24; 1.1.42;
support zlib
 1.1.42.1 06-Apr-2015  skrll Sync with HEAD
 1.1.24.1 03-Dec-2017  jdolecek update from HEAD
 1.1.6.2 17-Aug-2010  uebayasi Sync with HEAD.
 1.1.6.1 21-Jun-2010  uebayasi file shlib_version was added on branch uebayasi-xip on 2010-08-17 06:48:00 +0000
 1.1.4.2 11-Aug-2010  yamt sync with head.
 1.1.4.1 21-Jun-2010  yamt file shlib_version was added on branch yamt-nfs-mp on 2010-08-11 22:55:06 +0000
 1.1.2.2 03-Jul-2010  rmind sync with head
 1.1.2.1 21-Jun-2010  rmind file shlib_version was added on branch rmind-uvmplock on 2010-07-03 01:20:02 +0000

RSS XML Feed