Home | History | Annotate | only in /src/sys/modules
History log of /src/sys/modules
RevisionDateAuthorComments
 1.298 21-Oct-2025  pgoyette Add MODULE glue and build infrasructure.

XXX We won't actually build or install it due to kern/59716 but
XXX it can be manually built and installed if you want.
 1.297 21-Oct-2025  pgoyette Disable a few modules that need serious work to build.

Add if_rge to the list of {bus,attachment}-specific modules
 1.296 11-Mar-2025  brad A driver and userland utility for a couple of families of the
Microchip Technology / SMSC fan controller chips.

The driver and utility supports the:

o EMC2101 and EMC2101-R
o EMC2103-1, EMC2102-2 and EMC2103-4
o EMC2104
o EMC2106
o EMC2301
o EMC2302
o EMC2303
o EMC2305

The EMC210X family supports 1 or 2 fans with tachometer. Depending on
the chip, it may support 2 additional fans without tach and might
support a high side attachment (i.e. a fan, usually 5v, driven
directly from the chip and not PWM or DAC). All versions of EMC210X
support internal temperature measurements, and depending on the chip,
may support up to 5 additional temperature zones. The tachometers and
temperature measurements are provided to the system via the envsys(4)
framework. Some chip types support GPIO pins and support is provided
via the gpio(4) framework.

The EMC230X family supports 1, 2, 3 or 5 fans with the same number of
tachometers. No temperature zone or GPIO support. The tachometers
are provided to the system via the envsys(4) framework. The fan
support can be provided by PWM signaling or DAC.

The two chip families mostly do PWM signaling for the fan speed, but a
number of them support DAC output, a 0 to 3v or so voltage. When the
chip supports external temperature zones, this is done usually by a
bipolar NPN or PNP transister configured as a diode, but some of the
chip varients support thermistors.

The emcfan(4) kernel driver provides a simple read / write / seek
device in /dev/ to the register set in the chip. The heavy lifting is
done in the userland utility emcfanctl(8) which provides the ability
to read and write to any valid register and provides some basic higher
level commands to control fan behavior. The output is simple text
lines, or JSON.

The kernel driver does not reset or other mess with the chip, aside
from reading registers. It is entirely possible that something else
in any particular system is the major manager of the fan controller
and it would not do for the kernel driver to mess too much with the
attached device. All interactions are intentional via the userland
utility.

It is known that a EMC2301 is present on the Raspberry PI 4 Compute IO
module (not to be confused with the Raspberry PI 4 Compute module
itself) and there is a breakout board from Adafruit with a EMC2101 on
it. The chips themselves are pretty inexpensive from Mouser or
Digi-key and can be soldered using the simpler SMD soldering
techniques. A number of the variants are QFN packages, but the pads
are exposed to the side of the chip. No other external components are
required to use these fan controllers.
 1.295 23-Jan-2025  brad A driver for the DS28E17 1-Wire to I2C bridge chip.

This chip acts like a 1-Wire slave device and provides a iic(4) master
at the end of the 1-Wire bus. More or less it is the polar opposite
of the DS2482 [ds2482ow(4)] chip.

This device couples well with ds2482ow(4) and can be used to provide a
I2C bus at very great lengths from the controlling computer.

All features of the chip are supported, except for 1-Wire overdrive
support, which requires more work from the onewire(4) infrastructure.

The chip does not support Read without Stop. Attempts to do this will
get turned into a Read with Stop and one will have to hope for the
best. The chip also does not support zero length I2C reads or zero
length I2C writes. This has the side effect of making the default
mode, a zero length I2C write, for i2scan(8) return false positives.
The alternative mode that i2cscan(8) can use, the single byte read,
should work as expected.

The chip has automatic support for end devices that do I2C clock
stretching.

It was noticed that this chip does not work with the gpioow(4) driver.
That might be an interesting thing to debug if one has a good logic
analyzer on hand. While the presence pulse is detected, the gpioow(4)
driver is not able to complete the initial ROM enumeration. The
DS28E17 works flawlessly when driven by a DS2482 [ds2482ow(4)] driver
chip. Poke me if you want any more details.

The chip is pretty inexpensive and only requires a single cap to get
it hooked up. However, the package it comes in is only a 16-QFN
package, so it could provide to be hard to solider onto a board for
some. There are side tabs, so it was possible with a very small iron
and lots of flux. There is a slightly expensive breakout board sold
by Mikroe that probably works well -> https://www.mikroe.com/1-wire-i2c-click
 1.294 20-Jan-2025  maya Add ncm(4) a driver for USB Network Control Model

Seen on my Google Pixel 8, which implements ncm instead of urndis.
 1.293 04-Nov-2024  brad Add a driver for the Maxim DS2482-100 and DS2482-800 I2C to 1-Wire
bridge.

This chip provides a I2C device that then has 1 or 8 1-Wire busses on
the other side. The 1-Wire buses show up as onewire(4) buses in the
NetBSD.

The chip can be used in situations where:

* You have a I2C bus extended a long distance, say with a LTC4311
active terminator / extender or one of the differential I2C
extenders and you would like to have a 1-Wire device on the far end
and it isn't possible to add wiring to get to the far end.

* You are either out of GPIO pins or the GPIO pins are not reliable
enough to use gpioow(4), but you do have working I2C.

The DS2482 does all of the 1-Wire signals in hardware and provides for
a couple of pullup options for the 1-Wire devices.

All of the functions of the DS2482-100 and -800 are supported except
for overdrive speed support. To do this will likely require some API
changes to onewire(4).

Breakout boards exist for the DS2482 for both variants, but they
appear to be more expensive than expected. The chip itself is quiet
cheap and wasn't all that hard to SMD solder to a board. No other
components are really needed.

There are other members in the same family, the DS2482-101, DS2484 and
DS2485. The DS2482-101 has a sleep pin, but from the datasheet
appears to program the same as the -100 variant. The DS2484 has a
slightly different way to set configuration information and probably
won't quite work with the driver, but isn't far off. The DS2485 is
very different and would require a new driver to function.
 1.292 26-Aug-2024  riastradh acpivmgenid(4): New driver for virtual machine generation ID.

Added to amd64/ALL and i386/ALL kernel configurations, and made
available as a loadable module acpivmgenid.kmod on x86, for now.

TBD: Add to all ACPI-supporting GENERIC kernels.

PR kern/58632: getentropy(2) and arc4random(3) do not reseed on VM
fork
 1.291 18-Jul-2024  rin modules: Build `ipl` module only if MKIPFILTER is enabled
 1.290 20-May-2024  pgoyette branches: 1.290.2;
Oooppss remove some local change that was accidentally committed
 1.289 20-May-2024  pgoyette Don't build the compat_110 module yet - there's no release_110 with which
we can be compatable.
 1.288 20-May-2024  riastradh sys/modules: Don't make compat_110.

Eventually we'll need this but it doesn't make sense until 11.0 is
released.
 1.287 19-May-2024  christos version dup3
 1.286 09-May-2024  pho port-arm/58194: Resurrect vmt(4) from bitrot

On this architecture vmt(4) used to search for a node "/hypervisor" in the
FDT and probed the VMware hypervisor call only when the node was
found. However, things appear to have changed and VMware no longer provides
the FDT node.

Since vmt(4) doesn't actually need to read anything from FDT, and the
hypervisor call logically resides in virtual CPUs themselves, it would be
better to attach it directly to cpu, just like how it's probed on x86.
 1.285 02-Apr-2024  riastradh bsd.own.mk: Enable MKLSJIT on aarch64.

Make sure there's only one copy of the conditional, in bsd.own.mk;
just make sys/modules/Makefile conditional on MKSLJIT so we don't
have to keep these in sync.

As a workaround for PR 58106, tweak the conditional definition of
SLJIT_CACHE_FLUSH to use cpu_icache_sync_range only in _HARDKERNEL,
and use __builtin___clear_cache in userland and in rump kernels.

PR 58103: bpfjit.kmod is not built on aarch64
 1.284 21-Mar-2024  riastradh acpihed(4): New driver for PNP0C33 to notify apei(4).

PNP0C33 denotes the ACPI Hardware Error Device, which exists only to
be a vector for event notifications.

PR kern/58046
 1.283 20-Mar-2024  riastradh apei(4): New driver for ACPI Platform Error Interfaces.

For now it is wired up only in x86 ALL kernels, and built as a module
for x86 and Arm. Once it gets a little more testing on machines with
APEI, I would like to flip it on by default.

PR kern/58046
 1.282 09-Mar-2024  mrg skip this subdir for "make includes".

it's excessively slow and does nothing (nor should it.)
 1.281 26-Dec-2023  pgoyette Unhook radeondrm module from the build; it doesn't work, and
it's just tempting someone to try it. Leave the files around
in case someone wants to pursue making this work.

Should address kern/57793

XXX Related modules from the same legacy era should probably be
XXX removed, too, but so far only radeondrm has been reported
XXX as an issue. Kep an eye out for sisdrm, savagedrm, tdfxdrm,
XXX and r128drm.
 1.280 27-Aug-2023  kardel make owtemp a module
 1.279 09-Aug-2023  andvar viadrmums(4): build legacy VIA DRM UMS driver module for amd64.

This driver is not built-in by default, thus loadable module can help (un)lucky
owners of 64-bit capable VIA (Nano/Eden) systems or early AMD/Intel systems
with some VIA chipsets, which include VIA integrated graphics.
I also boldly added product IDs for few later models from VX8xx/VX9xx chipsets
without 3D support (DX9_0) to "expand" the driver support to more systems.
Tested successfully basic functionality on VX800, and partially successfully
on VX900 (on VX900 Xorg failed to initialize due to openchrome related issues,
viadrmums attaches and it is by used the driver).
Didn't test on VX855, I don't have one.

Pull up to netbsd-10 is needed.
 1.278 07-May-2023  skrll RISC-V support that works on QEMU with a single hart.

Thanks for Simon Burge for plic(4).
 1.277 13-Apr-2023  riastradh sys/modules/Makefile: Use MACHINE_CPU, not MACHINE_ARCH, for aarch64.

This way it covers both little-endian and big-endian.
 1.276 11-Apr-2023  riastradh aarch64: Build drm modules.
 1.275 19-Dec-2022  pgoyette Create compat_100 module infrastructure now that we have branched
for NetBSD-10
 1.274 03-Dec-2022  brad branches: 1.274.2;


Split the BMP280 / BME280 driver into common code and create I2C and
SPI attachments.
 1.273 21-Nov-2022  brad A driver for the Bosch BMP280 / BME280 temperature, humidity and
atmospheric pressure sensor. This is an inexpensive to moderately
expensive chip available from a large number of places. The driver
supports all aspects of the two chips, except for the repeating read
mode which would allow for sub-second queries, such as fall detection
or perhaps even as an altimeter. This driver also only supports the
I2C interface and not the SPI interface.

The BME280, the one with humidity, is not fully tested at this point,
awaiting upon a breakout board and may not show proper humidity.
 1.272 17-Nov-2022  brad A driver for the Aosong AHT20 temperature and humidity sensor. While
slow for an I2C sensor it is inexpensive and should work well enough
in most indoor conditions. All features of the chip are supported.
 1.271 07-Sep-2022  martin Move emuxki from i386/amd64 specific modules to attachment specific
modules (effectively disabling it for the build for now, as it needs
setlist fixes and breaks the build).
 1.270 07-Sep-2022  khorben emuxki(4): allow building as a module

Tested on NetBSD/amd64 with a Sound Blaster Live! Value (CT4870)

Note that this required setting outputs.master to the maximum value
allowed (255) to get sound out, and then cranking the volume pretty
high.

Additional sound cards sponsored by the NetBSD Foundation; thanks!
 1.269 28-Jul-2022  riastradh drm: Hook up the drmkms modules to the build.
 1.268 27-Jul-2022  maya Enable amdgpu module & firmware on x86

Make it easier to test this one out, add `load amdgpu` before boot netbsd.

XXX there should probably be a drm block in sys/modules/Makefile which
includes aarch64.
 1.267 17-Jul-2022  riastradh drm: Modularize ttm.
 1.266 04-Jun-2022  pgoyette Combine the midi and sequencer modules into a single midi_seq module
to avoid a circular dependency as noted in kern/56772. Retain minimal
modules of the original names to accomodate auto-loading upon access
to the /dev/xxx nodes.
 1.265 14-Apr-2022  pgoyette Split some common stuff into scsi_subr module. This enables loading
of the iscsi module whether or not there are any scsi things built
into the kernel.

Addresses the iscsi portion of kern/56772
 1.264 01-Apr-2022  pgoyette Create a loaable adiantum module, and make cgd require it.

This enablees use of a loadable cgd module, rather thtan requiring
it to be built-in.

Partially resolves kern/56772
 1.263 01-Apr-2022  pgoyette Split i2c_subr.c into a separate module rather than including it in
the iic module. There are valid configurations where i2c_subr code
can be both built-in and part of a loaded module (eg, piixpm is in
the kernel, but the iic module is loaded later). This causes the
in-kernel linker to detect a duplicate symbol.
 1.262 07-Dec-2021  brad A driver and user land utility for the Sparkfun Serial Controlled Motor
Driver module as illustrated here:

https://www.sparkfun.com/products/13911

A SCMD module is a ARM SOC simular to a Arduino in front of a motor
driver chip. The single SCMD module can control two motors and up to
16 additional modules can be chained together using an internal I2C
bus. One can interface with the SCMD using tty uart commands, SPI or
I2C. The driver in this commit adds a kernel driver for the I2C and
SPI interfaces. The command line utility provides a set of
convenience commands that support most of the functions of the SCMD
and is able to use the tty uart mode, SPI user land or the included
kernel driver in a uniform manor.

The use of the SCMD module is mostly for small robots and the like,
but it can control anything that is controllable by voltage.
 1.261 25-Nov-2021  ryo add support COMPAT_LINUX32 for aarch64
 1.260 06-Nov-2021  brad Driver for the Sensirion SHT30/SHT31/SHT35 temperature and humidity
sensor such as:

https://www.adafruit.com/product/2857

This is a higher priced sensor with a lot of features, including the
ability to do sub-second periodic updates. The driver supports
everything about the sensor except for the alert pin.
 1.259 14-Oct-2021  brad A driver for the Sensirion SGP40 MOx gas sensor. An example of this
chip from Adafruit is:

https://www.adafruit.com/product/4829

This is a moderately priced gas sensor that can detect volatile
organic compounds in the air. The driver uses the 3-clause BSD
licensed VOC algorithm provided by Sensirion to turn the raw sensor
metric into a VOC index which can indicate the quality of the air in a
particular indoor environment. All published functions of the chip
are supported and one unpublished feature.
 1.258 09-Oct-2021  ryo Modularize compat_linux(8) for aarch64.
 1.257 03-Oct-2021  brad A driver for the Sensirion SHT40/SHT41/SHT45 temperature and humidity
sensor. An example of this chip is:

https://www.adafruit.com/product/4885

This is a lower cost chip that provides higher then usual precision
according to the data sheet. This driver supports all of the published
functions that the chip has.
 1.256 25-Sep-2021  maya Disable drmkms module builds.

They haven't been functional (and won't be before fixing genfb abi).
In a new drm update, we haven't prioritized fixing the build either.
 1.255 11-Sep-2021  pgoyette Build and install the if_run module. run(4) is not necessarily included
in all GENERIC kernels (as reported on libera IRC).
 1.254 18-Aug-2021  christos Fix broken name
 1.253 17-Aug-2021  kre s/blake2s/blakes2s/ to match the directory that exists
 1.252 17-Aug-2021  christos modules for blake2s libsodium and if_wg
 1.251 09-Aug-2021  andvar fix various typos in compatibility, mainly in comments.
 1.250 17-May-2021  yamaguchi Add a new link-aggregation pseudo interface named lagg(4)

- FreeBSD's lagg(4) based implementation
- MP-safe and MP-scalable
 1.249 25-Mar-2021  nia branches: 1.249.2; 1.249.4;
don't restrict pad module to i386 and amd64.

- module build tested on amiga, vax, i386, amd64, evbarm.
- build.sh release tested on i386.
- pad module functionality tested on aarch64.
 1.248 01-Nov-2020  pgoyette branches: 1.248.2;
Separate the compat_netbsd32_coredump from the compat_netbsd32 and
coredump modules, into its own module.

Welcome to 7.99.75 !!!
 1.247 14-Oct-2020  ryo branches: 1.247.2;
modularize, and fix build error
 1.246 26-Sep-2020  jmcneill Add HAVE_NVMM and use it to control the build of NVMM related components.
Defined to "yes" on amd64, "no" everywhere else.
 1.245 08-Sep-2020  yamaguchi Added iavf(4) that is based on OpenBSD's iavf(4) implementation

reviewed by msaitoh@n.o and knakahara@n.o
 1.244 04-Apr-2020  jdolecek remove SMBFS and nsmb(4) - kernel part

it's unmaintained and supports only obsolete SMB1
 1.243 12-Mar-2020  pgoyette Split out the quota code from the rest of compat_netbsd32 module. This
allows loading of compat_netbsd32 on kernels that don't have ``options
QUOTA'' enabled.
 1.242 11-Mar-2020  skrll Fixup the evbarm PCI modules
 1.241 29-Feb-2020  skrll Disable hifn again
 1.240 29-Feb-2020  skrll Group some PCI only modules together and only build them on a subset of
platforms. The list is not complete.
 1.239 27-Feb-2020  yamaguchi Make ixl(4) be able to build as a module
 1.238 09-Feb-2020  jmcneill Retire azalia(4).
 1.237 21-Jan-2020  pgoyette Split the compat_50 module into two, separating the QUOTA-related
stuff from the rest of the module. This allows loading of the
(main) compat_50 module on kernels that don't include ``options
QUOTA''.

Welcome to 9.99.40 !

Addresses PR kern/54875
 1.236 19-Jan-2020  riastradh Remove filemon(4).

Discussed on tech-kern:
https://mail-index.NetBSD.org/tech-kern/2020/01/13/msg025938.html

This was never (intentionally) enabled by default, and the design has
some shortcomings. You can get mostly the same results with ktrace,
as in usr.bin/make/filemon/filemon_ktrace.c which is now used instead
of filemon for make's meta mode.

If applications require higher performance than ktrace, or nesting
that ktrace doesn't support, we might consider adding something back
into the vfs system calls themselves, without hijacking the syscall
table. (Might want a more reliable output format too, e.g. one that
can handle newlines in file names.)
 1.235 19-Jan-2020  thorpej Remove the strip(4) - Starmode Radio IP - pseudo-device driver. It is
long since obsolete.
 1.234 01-Jan-2020  ryo branches: 1.234.2;
Add module build for aq(4)
 1.233 23-Dec-2019  maxv Revert the removal of filemon.
 1.232 18-Dec-2019  maxv Retire filemon, discussed on tech-kern@.
 1.231 10-Dec-2019  yamaguchi Ported driver for Intel Ethernet 700 series

reviewed by msaitoh and knakahara
 1.230 28-Oct-2019  pgoyette Continue to build the filemon module, but don't install it. Hopefully
this will help us detect any additional bit-rot that might occur.

XXX It might be a good idea to modify the file permissions on /dev/filemon
XXX to prevent auto-loading of the driver module by non-privileged users.
 1.229 28-Oct-2019  maya Disable filemon.

It isn't suited for general use (that is, it poses security risks),
but the existence of the module means it is auto-loaded when /dev/filemon
is opened, which can be done by any user.

Thanks Ilja van Sprundel for the heads up.
 1.228 28-Oct-2019  ozaki-r Implement a front-end driver of virtio-9p called vio9p

In conjunction with mount_9p, it enables a NetBSD system running as a VM guest
to mount an exported filesystem by the host via virtio-9p. It exports a 9p
end-point of virtio-9p via a character device file for mount_9p.

Reviewed by yamaguchi@
 1.227 22-Sep-2019  christos Add a new member to struct vfsstat and grow the unused members
The new member is caled f_mntfromlabel and it is the dkw_wname
of the corresponding wedge. This is now used by df -W to display
the mountpoint name as NAME=
 1.226 17-Sep-2019  mrg enable building modules for if_aue(4), if_cdce(4), if_cue(4),
if_kue(4), if_upl(4), if_url(4), and if_urndis(4)
 1.225 17-Sep-2019  mrg build exec_elf32 module on arm64.
 1.224 08-Aug-2019  skrll Build an if_udav module (untested)
 1.223 31-Jul-2019  mrg introduce a library of common code / backends to share code between
USB ethernet drivers.

usbnet.h introduces a new set of APIs to provide common solutions
for these driver features:
- USB endpoint pipe handling
- rx and tx chain handling
- generic handlers or support for several struct ifnet callbacks
- MII bus locking
- interrupt handling
- partial autoconf handling: much of attach, and detach/activate
can use common versions directly.

currently, only axen(4) and cdce(4) are converted. the reductions
in these drivers are quite significant: if_cdce.c is reduced from
1000 lines to 320 lines, and if_axen is reduced from 1902 lines
to 1021 lines.

add a "usbnet" module and make the if_axen module depend upon it.
 1.222 20-Jun-2019  pgoyette branches: 1.222.2;
Split the ufs code out of the ffs module and into its own module.

Adapt chfs and ext2fs modules accordingly.
 1.221 26-Mar-2019  pgoyette Now that the if_srt module has a chance of working (ie, it now
actually attaches/detaches the cdevsw!), add the required srt
module to allow module autoload triggered by opening /dev/srtN

XXX As noted in the recent commit to if_srt.c, someone(tm) needs
XXX to create the /dev/srt* device nodes with major 179. :)
 1.220 24-Mar-2019  pgoyette Add a loadable module for tap(4).

The code was already modularized, we simply didn't build the loadable
module.

Note also that since the tap(4) device can be reasonably accessed by
either creating a device instance (using ifconfig(8)) or by opening
/dev/tap, we need to create both if_tap.kmod and tap.kmod (similar to
what is done with tun(4)).
 1.219 06-Feb-2019  rin Add ure(4): RealTek RTL8152/RTL8153 10/100/Gigabit USB Ethernet device.
Ported from OpenBSD. Support for RX/TX checksum offload added by myself.
 1.218 04-Feb-2019  mrg don't assume _LP64 == supports COMPAT_NETBSD32.

this is not true for alpha, ia64 and arm32 ports, and the first two
were not building because of it, and the latter would be missing
the oabi support (likely not a big deal, but still wrong.)

add a makefile fragment that tells you if it is supported and include
it where needed to define COMPAT_NETBSD32 when building the normal
kernel (ie, modules & rump.)


fixes alpha build, probably fixes ia64 build.


XXX: still leaves some netbsd32 code in rf_netbsdkintf.c, that should
be moved into some hooks, but first the configuration setup
needs to be moved into a common function the netbsd32 code can
call into, vs living in the switch case itself.
 1.217 03-Feb-2019  pgoyette Don't include the raidframe compat code in the main raid module, the
compat code lives in their own compat_raid_xx modules, which will now
be autoloaded if needed.

While here, extract the compat_netbsd32_raid code into its own module,
too.

Welcome to 8.99.34
 1.216 27-Jan-2019  pgoyette Merge the [pgoyette-compat] branch
 1.215 21-Jan-2019  alnsn Build bpfjit and sljit modules on aarch64.
 1.214 19-Dec-2018  maxv Remove compat_svr4 and compat_svr4_32, as discussed on tech-kern@ recently,
but also as discussed several times in the past.
 1.213 27-Nov-2018  pgoyette Remove the rest of my local change that somehow snuck in to an
earlier commit.
 1.212 27-Nov-2018  msaitoh Remove obsolete ksem entry to prevent build break.
 1.211 27-Nov-2018  pgoyette Include the compat_netbsd32* modules for sparc64

Their absence was noticed by martin@ when the recent libnv-related
build failure on amd64 did not affect sparc64!
 1.210 07-Nov-2018  maxv Add NVMM - for NetBSD Virtual Machine Monitor -, a kernel driver that
provides support for hardware-accelerated virtualization on NetBSD.

It is made of an MI frontend, to which MD backends can be plugged. One
MD backend is implemented, x86-SVM, for x86 AMD CPUs.

We install

/usr/include/dev/nvmm/nvmm.h
/usr/include/dev/nvmm/nvmm_ioctl.h
/usr/include/dev/nvmm/{arch}/nvmm_{arch}.h

And the kernel module. For now, the only architecture where we do that
is amd64 (arch=x86).

NVMM is not enabled by default in amd64-GENERIC, but is instead easily
modloadable.

Sent to tech-kern@ a month ago. Validated with kASan, and optimized
with tprof.
 1.209 28-Aug-2018  riastradh Rework PCI and AGP conditionalization.

- Push drm_pci_set_unique into driver callback.
- Eliminate drm_pci_set_unique_hook.
- Gather all drm_agp_* functions into struct drm_agp_hooks.
- Replace the nonsensical old atomic garbage by serious locking.
- Make drm_agpsupport.c its own module.
- Eliminate NDRMKMS_PCI.
- Use NAGP from "agp.h" only in drm_module.c for horrible hack.
=> See comment in file for rationale.
- Always define CONFIG_PCI=1 and CONFIG_AGP=1.
- Always go through the drm_agp_* function hooks.
- Ifdef out nouveau agp stuff that doesn't go through drm_agp_*
for reasons that I'm too frustrated to figure out tonight.
- pci_iomap no longer automagically does agp_i810_borrow.
=> Use drm_agp_borrow instead.
 1.208 25-Aug-2018  rin Add mue(4), driver for Microchip LAN75xx/LAN78xx known as internal NIC of
Raspberry Pi 3 B+, from OpenBSD.

Tested on Raspberry Pi 3 B+ (LAN7800) and Z-TEK ZE582 (LAN7500).

* BUGS/TODO

- If the media type is set to something other than 1000baseT-FDX, data
transmission becomes quite unstable. Also, ukphy(4) recognize 1000baseT as
a supported media type, but it is not in fact.

- Catch up with changes made to usmsc(4) in nick-nhusb branch, i.e.,
make the driver MP-safe.

- Support RX/VLAN/TX chekcsum offloading.
 1.207 24-Jul-2018  maxv Merge the tprof_pmi and tprof_amdpmi modules into a single tprof_x86
module.
 1.206 10-Jul-2018  maya Remove viadrm(4), superseded by viadrmums.

Aside from viadrm using older drm code, it's also dysfunctional right now.
See PR port-i386/53364.
 1.205 06-Jun-2018  jakllsch branches: 1.205.2;
add virtio_pci to list of not-yet-enabled modules
 1.204 20-May-2018  thorpej Add a 1PPS-over-GPIO driver, originally by Brad Spencer, with changes by
me to adapt to the new GPIO interrupt interface and support a wider variety
of GPIO pin configuations.

PR kern/51676
 1.203 19-May-2018  thorpej Add an example "gpioirq" driver that demonstrates interrupts on GPIO
pins. Will be enhanced in the future to support sending events to
user space on edge-triggered interrupt events.

Based on initial work by Brad Spencer.
PR kern/51676
 1.202 26-Feb-2018  pgoyette branches: 1.202.2;
Descend into subdirectory to create the module for ichsmb(4) driver.
 1.201 25-Feb-2018  kamil Remove ksem module reference

This does not exist in HEAD.

It looks like accidentally committed in:

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.
src/sys/modules/Makefile r1.200
 1.200 25-Feb-2018  pgoyette Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.
 1.199 25-Jan-2018  pgoyette Create amdsmn(4) amd amdzentemp(4) modules for X86
 1.198 09-Jan-2018  christos Merge autofs support from: Tomohiro Kusumi
XXX: Does not work yet
 1.197 29-Dec-2017  christos PR/52848: Brad Spencer: Add module glue for AM2315 and SI70xx drivers
 1.196 09-Dec-2017  pgoyette Split ip_ecn code into its own module, so it can be shared between
gif(4), stf(4), and ipsec(4). Without this, loading the if_gif
module can result in redefined global symbols if either ipsec(4) or
stf(4) but not gif(4) is built into the kernel.

Fixes PR kern/52795 (as reported by martin@ via irc).

XXX pullup to netbsd-8
 1.195 11-Aug-2017  maxv Don't build the ibcs2 module on i386.
 1.194 01-Aug-2017  maxv Don't build the svr4 module on i386.
 1.193 12-Jun-2017  pgoyette Descend into SUBDIR to actually build the wsbell module.

Missed in previous commit - thanks kre@
 1.192 01-Jun-2017  pgoyette branches: 1.192.2;
Add the modules for audio, midi, and sequencer
 1.191 19-Apr-2017  riastradh Modularize ualea(4).

Unclear why we have a separate xyz.ioconf for module and XYZ.ioconf
for rump component, but at least xyz_modcmd obviates the need for
xyz_component.c (though evidently the latter could have been replaced
anyway by RUMP_COMPONENT=ioconf in the rump component Makefile).
 1.190 25-Mar-2017  jdolecek add vioscsi to the list (disabled)
 1.189 16-Feb-2017  knakahara add l2tp(4) L2TPv3 interface.

originally implemented by IIJ SEIL team.
 1.188 15-Dec-2016  pgoyette branches: 1.188.2;
Create a single combined module for spkr_pcppi and spkr_audio, and
build it for all architectures.

By doing this, we can handle pcppi, audio, or both attachments with
non-built-in modules.

XXX Still to do: the module currently cannot be unloaded, and the
XXX spkr device(s) currently cannot be detached. (Really, two
XXX sides of the same problem.)
 1.187 15-Dec-2016  christos delete spkr_synth module
 1.186 10-Dec-2016  pgoyette Create a new module for the synthesized speaker(4).

XXX Device module autoload (invoked when the /dev/speaker is opened, and
XXX no driver exists) will not find this module. On i386 and amd64, the
XXX autoload will find the spkr module (spkr0 at pcppi0) and that module
XXX will be autoloaded. For other architectures, either include the
XXX "spkr0 at audio0" in your config file, or manually load this new
XXX spkr_synth module using modload(8).
 1.185 08-Dec-2016  nat Revert to previous. Add PCPPISPEAKER flag to fix build.
 1.184 08-Dec-2016  nat Fix building of the spkr module. The module now is the synthesized speaker.
Reported by joerg@
 1.183 16-Nov-2016  pgoyette Build the newly-created bufq_* modules
 1.182 02-Nov-2016  pgoyette * Split sys/kern/sys_process.c into three parts:
1 - ptrace(2) syscall for native emulation
2 - common ptrace(2) syscall code (shared with compat_netbsd32)
3 - support routines that are shared with PROCFS and/or KTRACE

* Add module glue for #1 and #2. Both modules will be built-in to the
kernel if "options PTRACE" is included in the config file (this is
the default, defined in sys/conf/std).

* Mark the ptrace(2) syscall as modular in syscalls.master (generated
files will be committed shortly).

* Conditionalize all remaining portions of PTRACE code on a new kernel
option PTRACE_HOOKS.

XXX Instead of PROCFS depending on 'options PTRACE', we should probably
just add a procfs attribute to the sys/kern/sys_process.c file's
entry in files.kern, and add PROCFS to the "#if defineds" for
process_domem(). It's really confusing to have two different ways
of requiring this file.
 1.181 19-Oct-2016  skrll PR kern/51514: ptrace(2) fails for 32-bit process on 64-bit kernel

Updated from the original patch in the PR by me.
 1.180 15-Oct-2016  skrll Sort entries within conditional blocks
 1.179 27-Sep-2016  pgoyette For now, disable all the newly-created ld(4) related modules. We need
to come up with a better way to handle attachment-specific modules, and
possibly a better directory structure for modules in general, as the
current mechanism doesn't scale.
 1.178 27-Sep-2016  pgoyette Add module build infrastructure for ld and its attachments
 1.177 16-Sep-2016  jdolecek make it possible to load nvme(4) as module to ease testing; currently somewhat
non-optimal, since it includes the ld(4) code also and hence requires the
kernel config to have 'no ld'
 1.176 10-Sep-2016  pgoyette Add a dummy "tun" module, whose only job is to trigger an autoload of
required module "if_tun". This allows access to /dev/tunN to autload
the require interface module.

XXX There's might be a better place/name for net/tun.c
 1.175 07-Aug-2016  christos add new modules
 1.174 06-Aug-2016  pgoyette Modularize the pppoe driver
 1.173 06-Aug-2016  pgoyette Modularize the sppp_subr stuff so it can be shared by pppoe and lmc
drivers as they get modularized.
 1.172 06-Aug-2016  christos Add modules for strip and slip
 1.171 06-Aug-2016  christos rename the ppp module so that it autoloads.
 1.170 06-Aug-2016  pgoyette Modularize the ppp driver, and adjust dependencies of the compressor
modules.

For now, this is still included as a built-in module in GENERIC kernels.
 1.169 05-Aug-2016  scole PR port-ia64/51261

Use exec_elf64 modules for ia64
 1.168 04-Aug-2016  pgoyette Add and enable a new module, slcompress

This is a prerequisite to modularizing the ppp pseudo-device
 1.167 09-Jun-2016  pgoyette branches: 1.167.2;
New module for ipl (aka ipfilter).
 1.166 07-Jun-2016  pgoyette Create separate modules for i2c_bitbang and bpf_filter so these files
can be included in kernels which need them without also duplicating
them in other modules. Removes the duplicate symbols I found which
prevented loading i2c and bpf modules after having fixed PR 45125.
 1.165 26-Dec-2015  pgoyette Descend into new raid module, and update sets lists.
 1.164 07-Dec-2015  pgoyette Modularize drvctl(4)
 1.163 07-Dec-2015  pgoyette Modularize the clockctl pseudo-device and link to the build.
 1.162 03-Dec-2015  pgoyette Split out the SYSV IPC stuff into its own compat_netbsd32_sysvipc
module. Adjust dependencies as needed.
 1.161 03-Dec-2015  pgoyette Merge the compat_sysv module into the sysv_ipc module - it should
never have been a separate module in the first place (my bad).

Adjust dependencies as appropriate.
 1.160 02-Dec-2015  pgoyette Ooops, remove a local change that wasn't supposed to be committed.
 1.159 01-Dec-2015  pgoyette Create new compat_netbsd32_mqueue module, and descend into subdir to
build it.
 1.158 01-Dec-2015  pgoyette Descend into new compat_netbsd32_nfssrv directory for new module, and
remove netbsd32_nfssvc.c from the original compat_netbsd32 module.
 1.157 15-Nov-2015  pgoyette Actually create the wapbl module, since it works.
 1.156 09-Jul-2015  matt Don't build compat_netbsd32 if mips64 && building mips-n32
 1.155 17-May-2015  pgoyette Add the spkr module to the build.
 1.154 14-May-2015  pgoyette Descend into the examples to build them all the time. (They will not
be installed, but we still want to make sure they build to avoid any
bit-rot).
 1.153 13-May-2015  pgoyette Descend into subdir to actually build the new sysv_ipc module
 1.152 10-May-2015  pgoyette Split the SYSV* compat code out into a separate compat_sysv module.

For monolithic kernels, both modules will be compiled as "built-ins",
while modular environments will be able to load the SYSVSEM, SYSVSHM,
and SYSVMSG code independant from the rest of compat.

This is a necessary precursor step to making the "STD" SYSV* code
into a separate module.

Tested in both monolithic and modular environments with no errors
seen.
 1.151 09-May-2015  matt Build compat_netbsd32.kmod for arm and mips64
 1.150 03-May-2015  pgoyette Build the tco watchdog module
 1.149 29-Apr-2015  riastradh Enable build of viadrmums module, i386-only.
 1.148 29-Apr-2015  riastradh Hold off on building viadrmums module until it works.
 1.147 29-Apr-2015  riastradh Module for viadrmums.
 1.146 23-Apr-2015  pgoyette Build modules for sysmon and its subcomponents
 1.145 18-Apr-2015  pgoyette Add modularized swwdog driver.
 1.144 28-Mar-2015  jmcneill Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.
 1.143 07-Mar-2015  jmcneill i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the
dependencies in files.i2c and switch device drivers to depend on "i2cexec"
module instead.

A kernel with a USB stack and no I2C controller / bus attachment would spit
out a bunch of "WARNING: module error: can't find builtin dependency `iic'"
messages at boot. This change solves that problem.
 1.142 10-Nov-2014  christos branches: 1.142.2;
dedup and add the drmkms modules
 1.141 19-Sep-2014  christos new module
 1.140 10-Aug-2014  bad branches: 1.140.2;
Revert most of rev 1.137. Build ubsec module only for i386 and amd64 and
punt on the other arches.
 1.139 10-Aug-2014  matt Changes to existing files to enable building AARCH64 userland.
evbarm64-el
This is clang only. While gcc4.8 supports aarch64, no netbsd support has
been written for aarch64 with gcc4.8.
 1.138 09-Aug-2014  riz empty() wants a variable name, not a value. This should un-break
the arm an mips arch builds which were broken by the previous
commit.
 1.137 09-Aug-2014  bad Build ubsec(4) as a module on all arches where it was obivous how to do so.
That excludes powerpc because evppc OEA is missing definitions for
PPC_INTR_IMPL and PPC_PCI_MACHDEP_IMPL.
Adjust set lists.

Compile tested for most arches only.
 1.136 18-May-2014  kardel add HYT-221/271/939 humidity/temperature I2C sensor
extend envsys(4) framework by %rH (relative humidity)
 1.135 03-Jan-2014  pgoyette branches: 1.135.2;
Add hifn(4) and ubsec(4) to the NOTYET section, and note that they can
be successfully built only on architectures that have PCI.
 1.134 01-Jan-2014  pgoyette Modularize the opencrypto components and link to the build
 1.133 01-Jan-2014  pgoyette Create modules for software crypto components.
 1.132 29-Dec-2013  pgoyette Re-sort in alphabetic sequence.
 1.131 29-Dec-2013  pgoyette Modularize net/zlib so it can be used by the vnd module (and, eventually,
by an opencrypto module).
 1.130 28-Dec-2013  pgoyette Descend into ccd
 1.129 28-Dec-2013  pgoyette Make dksubr.c into a module, and make the cgd and dm modules depend on
it.

Now that cgd is completely modularized, descend into modules/cgd to
actually create the module.
 1.128 16-Dec-2013  lneto renamed luacore to luasystm
 1.127 18-Nov-2013  bad ubsec is not a MI buildable module. disable it for now.
 1.126 17-Nov-2013  alnsn Build and install sljit.kmod and bpfjit.kmod iff ${MKSLJIT} != "no".
 1.125 17-Nov-2013  bad Make ubsec(4) loadable as kmod.
 1.124 16-Nov-2013  skrll Build a module for usmsc(4).
 1.123 28-Oct-2013  mbalmer linke pmf(9l) to the build
 1.122 28-Oct-2013  mbalmer link core(9l) (docs pending) to the build
 1.121 28-Oct-2013  mbalmer link the lua(4) module to the build
 1.120 26-Oct-2013  nonaka Add driver for ASIX AX88178a and AX88179 Ethernet interface.
Ported from OpenBSD.
 1.119 12-Mar-2013  christos branches: 1.119.6;
normali{s,z}e
 1.118 10-Mar-2013  christos new npflog driver split out of npf_ext_log.
 1.117 10-Dec-2012  rmind Add NPF "rndblock" extension to randomly drop packets (using a random function
with a percentage or modulo operation). This is a demo module, although it can
be used for packet loss simulation. Example of a procedure in npf.conf:

procedure "somedrop" {
# Drop 1.9% of the traffic
rndblock: percentage 1.9
}
 1.116 02-Dec-2012  chs adapt the cyclic module and profile dtrace provider to netbsd.
for now, just hook the cyclic callback into hardclock().
 1.115 06-Nov-2012  alnsn Enable bpfjit on sparc.
 1.114 28-Oct-2012  alnsn Build bpfjit on i386.
 1.113 27-Oct-2012  alnsn Add bpfjit and enable it for amd64.
 1.112 13-Oct-2012  alnsn Enable sljit in amd64 kernel and modules.
 1.111 16-Sep-2012  rmind Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.
 1.110 06-Aug-2012  martin branches: 1.110.2;
Move hdaudio and hdafg modules into x86 only section for now, untill
somebody creates a "all archs with PCI" ifdef.
 1.109 05-Aug-2012  riastradh Build hdaudio and hdafg modules.
 1.108 04-Aug-2012  riastradh Add a module for uatp(4).
 1.107 30-Jun-2012  reinoud Move i386 and amd64 usermode configurations to their respective directories
and make the usermode kernels buildalbe under build.sh.

The resulting kernels are build and packaged correctly as are the associated
modules.
 1.106 26-Apr-2012  christos split the coda module in a device one, and a vfs one so that it works.
 1.105 25-Apr-2012  pgoyette Actually create the if_axe module - driver was modularized a while ago.
 1.104 25-Apr-2012  pgoyette Actually create the dbcool(4) module. Driver was modularized a while ago.
 1.103 25-Apr-2012  pgoyette Create the module for sdtemp (driver itself was modularized some time ago)
 1.102 11-Mar-2012  joerg Also kill the module build system for ksem.
 1.101 17-Jan-2012  jakllsch branches: 1.101.2;
Add lm, lm_isa_common, lm_isa, lm_wbsio and wbsio modules to the x86 build.
 1.100 04-Dec-2011  jym Hook secmodel_extensions(9) to modules build.
 1.99 24-Nov-2011  ahoka branches: 1.99.2;
Add module glue for CHFS.
 1.98 15-Nov-2011  riz Build and install new in-kernel iscsi initiator kernel module and associated
binaries (iscsid, iscsictl) if MKISCSI != no. Initiator can also be built
into a kernel by adding 'pseudo-device iscsi' in kernel configuration.
 1.97 06-Nov-2011  tron Add "npf_alg_icmp" kernel module.
 1.96 06-Nov-2011  tron Build "npf" module.
 1.95 18-Oct-2011  jmcneill branches: 1.95.2;
add & enable vmt module
 1.94 02-Oct-2011  mbalmer Build iic(4) and gpioiic(4) as modules.
 1.93 29-Sep-2011  sjg Add filemon to the modules we build.
 1.92 31-Aug-2011  mbalmer Link the gpioow(4) and onewire(4) modules to the build and add them to the
lists.
 1.91 29-Aug-2011  jruoho Add Zarlink ZL10353 DVB demodulator (or as it is now know, Intel CE623x).
 1.90 28-Aug-2011  jmcneill add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules
 1.89 12-Aug-2011  mbalmer gpio(4) and gpiosim(4) can now be built and used as modules. While here,
make some functions static.
 1.88 11-Aug-2011  mbalmer pwdog is not for all platforms, build only on i386, x86_64, and sparc64
 1.87 11-Aug-2011  mbalmer pwdog(4) is a device driver for QUANCOM Electronic PWDOG1 PCI
attached watchdog timers.
 1.86 09-Aug-2011  jruoho Build acpiwdrt(4) as a module on x86.
 1.85 09-Aug-2011  jruoho Two placeholder comments.
 1.84 09-Aug-2011  jmcneill include cx24227, lg3303, mt2131, nxt2k, tvpll, xc3028, coram, cxdtv, and emdtv
modules in x86 build
 1.83 09-Aug-2011  jruoho As wmieeepc(4) was added to amd64 GENERIC, build it also as a amd64 module.
 1.82 09-Aug-2011  jmcneill modify the dtv device api so hardware drivers can be loaded independently
of the dtv module
 1.81 01-Aug-2011  pgoyette Add build glue for modular spdmem(4) driver, and enable it
 1.80 31-Jul-2011  jmcneill build and install finsio module on i386 and amd64
 1.79 29-Jul-2011  jmcneill build and install itesio module on i386 and amd64
 1.78 19-Jul-2011  enami Build v7fs module on all architecture rather than only on i386.
 1.77 19-Jul-2011  tron Build 7th Edition(V7) File System as a kernel module.
 1.76 15-Jul-2011  jmcneill add nsclpcsio module to i386 build
 1.75 13-Jul-2011  jruoho A driver for HP 3D DriverGuard; a LIS3LV02DL-based accelerometer. Tested on
HP NC4400. Like aps(4), this is commented out in the GENERIC kernels.
 1.74 09-Jul-2011  jmcneill build dtv module
 1.73 15-Jun-2011  mrg build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.
 1.72 15-Jun-2011  jruoho Modularize hpet(4). Works nicely with the multiple bus locations.
 1.71 15-Jun-2011  jruoho Modularize amdtemp(4).
 1.70 14-Apr-2011  yamt branches: 1.70.2;
re-enable tprof_amdpmi
 1.69 04-Mar-2011  jruoho Add module build glue for odcm(4).
 1.68 26-Feb-2011  ahoka Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards
 1.67 24-Feb-2011  jruoho Build glue for viac7temp(4).
 1.66 24-Feb-2011  jruoho Add build glue for powernow(4).
 1.65 23-Feb-2011  jruoho Build glue for est(4).
 1.64 20-Feb-2011  jruoho Add build glue for coretemp(4).
 1.63 20-Feb-2011  jruoho Build fujbp(4), fujhk(4), and wmieeepc(4) as modules.
 1.62 19-Feb-2011  jmcneill build padlock module on i386
 1.61 05-Feb-2011  christos fix build!
 1.60 05-Feb-2011  yamt build tprof_amdpmi
 1.59 16-Jan-2011  jmcneill branches: 1.59.2; 1.59.4;
build and install aps module on i386 and amd64
 1.58 09-Jan-2011  jruoho Add a dummy-driver for ACPI fans.
 1.57 05-Jan-2011  jruoho Add build files for acpipmtr(4) module.
 1.56 29-Dec-2010  jmcneill some platforms don't have bus_dma, so only build these modules on x86
 1.55 27-Dec-2010  jmcneill hook xc5k, au8522, and auvitek into build
 1.54 26-Oct-2010  jruoho Add asus(x) and hpqlb(4).
 1.53 25-Oct-2010  jruoho Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.
 1.52 25-Oct-2010  jruoho Build acpiacad(4), acpibat(4), acpibut(4), acpicpu(4), acpilid(4), and
thinkpad(4) as modules on x86. More to come later.
 1.51 24-Oct-2010  jmcneill build acpiwmi as a module on x86
 1.50 24-Oct-2010  jmcneill build wmi drivers as modules on x86
 1.49 20-Oct-2010  tsutsui Also build and install compat_aoutm68k.kmod and exec_aout.kmod on m68000
to make things easier. ${MACHINE_ARCH} == ${MACHINE_CPU} on m68k
so we can't use ad.m68k for a set list to exclude m68000.
 1.48 19-Oct-2010  pgoyette Build the new swsensor(4) device and add to set lists
 1.47 15-Oct-2010  tsutsui Build and install compat_aoutm68k.kmod and exec_aout.kmod on m68k machines.
 1.46 31-May-2010  pgoyette Extract ACPIVERBOSE into a kernel module. The module can be builtin
by defining 'options ACPIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

ACPIVERBOSE also includes code to dump acpi/wmi data.
 1.45 30-May-2010  pgoyette Extract MIIVERBOSE into a kernel module. The module can be builtin
by defining 'options MIIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.
 1.44 30-May-2010  pgoyette Extract SCSIVERBOSE into a kernel module. The module can be builtin
by defining 'options SCSIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not SCSI or
atapi support exists.
 1.43 29-May-2010  pgoyette Extract USBVERBOSE into a kernel module. The module can be builtin
by defining 'options USBVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not USB support
exists.
 1.42 24-May-2010  pgoyette Extract the vendor/product tables and related access routines into a
separate kernel module. Update pci bus attach routine to load the
module (if available) when we're about to start scanning the bus, and
unload the module after the scan is finished.

On architectures which support loading of modules by the boot loader,
the 'pciverbose' module can be loaded and executed without needing to
rebuild the kernel. On all architectures, using 'options PCIVERBOSE'
in the kernel configuration file will create a 'builtin' module which
is functionally equivalent to previous behavior.

XXX Although not nearly as large as the vendor and product tables,
XXX the PCI class and subclass tables might also be offloaded into
XXX the module at a future time.

XXX Cardbus (and possibly other) drivers should also be modified to
XXX load the module before scanning/attaching devices.
 1.41 12-Apr-2010  ahoka Connect the pf module to the build.
 1.40 09-Apr-2010  ahoka Connect the pad(4) kernel module to the build on i386 and amd64.
 1.39 21-Feb-2010  darran branches: 1.39.2;
DTrace: add the dtrace module to the build.
 1.38 25-Jan-2010  pooka branches: 1.38.2;
add bpf kmod
 1.37 05-Jan-2010  dyoung Fix MKBINUTILS=no builds by leaving out xldscripts.
 1.36 05-Dec-2009  pooka Remove the portalfs kernel file system driver. Replace mount_portal(8)
with a version based on puffs. User functionality remains the same.
 1.35 10-Nov-2009  skrll Move the kmodule linker script source into sys/modules/xldscripts. It is
not part of binutils and definitely not GPL v3.

Discussed with mrg.
 1.34 05-Oct-2009  haad Add zfs sets and needed veriables to hook zfs into the build. ZFS on i386
need still one fix othervise it should be ready for testing.
 1.33 02-Oct-2009  elad First part of secmodel cleanup and other misc. changes:

- Separate the suser part of the bsd44 secmodel into its own secmodel
and directory, pending even more cleanups. For revision history
purposes, the original location of the files was

src/sys/secmodel/bsd44/secmodel_bsd44_suser.c
src/sys/secmodel/bsd44/suser.h

- Add a man-page for secmodel_suser(9) and update the one for
secmodel_bsd44(9).

- Add a "secmodel" module class and use it. Userland program and
documentation updated.

- Manage secmodel count (nsecmodels) through the module framework.
This eliminates the need for secmodel_{,de}register() calls in
secmodel code.

- Prepare for secmodel modularization by adding relevant module bits.
The secmodels don't allow auto unload. The bsd44 secmodel depends
on the suser and securelevel secmodels. The overlay secmodel depends
on the bsd44 secmodel. As the module class is only cosmetic, and to
prevent ambiguity, the bsd44 and overlay secmodels are prefixed with
"secmodel_".

- Adapt the overlay secmodel to recent changes (mainly vnode scope).

- Stop using link-sets for the sysctl node(s) creation.

- Keep sysctl variables under nodes of their relevant secmodels. In
other words, don't create duplicates for the suser/securelevel
secmodels under the bsd44 secmodel, as the latter is merely used
for "grouping".

- For the suser and securelevel secmodels, "advertise presence" in
relevant sysctl nodes (sysctl.security.models.{suser,securelevel}).

- Get rid of the LKM preprocessor stuff.

- As secmodels are now modules, there's no need for an explicit call
to secmodel_start(); it's handled by the module framework. That
said, the module framework was adjusted to properly load secmodels
early during system startup.

- Adapt rump to changes: Instead of using empty stubs for securelevel,
simply use the suser secmodel. Also replace secmodel_start() with a
call to secmodel_suser_start().

- 5.99.20.

Testing was done on i386 ("release" build). Spearated module_init()
changes were tested on sparc and sparc64 as well by martin@ (thanks!).

Mailing list reference:

http://mail-index.netbsd.org/tech-kern/2009/09/25/msg006135.html
 1.32 27-Sep-2009  jmcneill enable viadrm kmod for i386
 1.31 19-Jul-2009  rmind Make POSIX message queues a kernel module.
 1.30 18-Jul-2009  reinoud Import read-only part of the NiLFS (v2) implementation for NetBSD. It has been
tested with a DEBUG+DIAGNOSTIC+LOCKDEBUG kernel. To summerise NiLFS, i'll
repeat my posting to tech-kern here:

NiLFS stands for New implementation of Logging File System; LFS done
right they claim :) It is at version 2 now and is being developed by NTT, the
Japanese telecom company and recently put into the linux source tree. See
http://www.nilfs.org. The on-disc format is not completely frozen and i expect
at least one minor revision to come in time.

The benefits of NiLFS are build-in fine-grained checkpointing, persistent
snapshots, multiple mounts and very large file and media support. Every
checkpoint can be transformed into a snapshot and v.v. It is said to perform
very well on flash media since it is not overwriting pieces apart from a
incidental update of the superblock, but that might change. It is accompanied
by a cleaner to clean up the segments and recover lost space.

My work is not a port of the linux code; its a new implementation. Porting the
code would be more work since its very linux oriented and never written to be
ported outside linux. The goal is to be fully interchangable. The code is non
intrusive to other parts of the kernel. It is also very light-weight.

The current state of the code is read-only access to both clean and dirty
NiLFS partitions. On mounting a dirty partition it rolls forward the log to
the last checkpoint. Full read-write support is however planned!

Just as the linux code, mount_nilfs allows for the `head' to be mounted
read/write and allows multiple read-only snapshots/checkpoint mounts next to
it.

By allowing the RW mount at a different snapshot for read-write it should be
possible eventually to revert back to a previous state; i.e. try to upgrade a
system and being able to revert to the exact state prior to the upgrade.

Compared to other FS's its pretty light-weight, suitable for embedded use and
on flash media. The read-only code is currently 17kb object code on
NetBSD/i386. I doubt the read-write code will surpass the 50 or 60. Compared
this to FFS being 156kb, UDF being 84 kb and NFS being 130kb. Run-time memory
usage is most likely not very different from other uses though maybe a bit
higher than FFS.
 1.29 10-Mar-2009  yamt enable tprof modules.
 1.28 05-Mar-2009  yamt whitespace
 1.27 14-Feb-2009  abs Convert more MACHINE tests to MACHINE_ARCH
 1.26 05-Feb-2009  haad branches: 1.26.2;
Revert previously changes. There is no cgd and ccd directory until I properly
test ccd.kmod and cgd.kmod.
 1.25 05-Feb-2009  haad Add support for the MODULAR framework to the vnd driver. Enable building of
vnd.kmod by default.
 1.24 05-Jan-2009  pooka sysvbfs module
 1.23 31-Dec-2008  agc Might as well install the dm devmapper module when we install the
other parts of the LVM tools - use the same MKLVM switch, though.
 1.22 05-Dec-2008  ad PR kern/40110: null, overlay and umap modules loading -> panic (layerfs symbols not there)

Add a layerfs module.
 1.21 29-Nov-2008  tsutsui - don't build compat_linux on alpha until sys/modules/compat_linux/Makefile
handles required MD files under sys/compat/linux/arch/alpha
- build exec_elf64 for all 64 bit arch
- use MACHINE_ARCH!="alpha" instead of MACHINE!="alpha" for exec_elf32 check

XXX we have many histrical inconsistent use of amd64 vs x86_64.
 1.20 28-Nov-2008  he Build compat_linux and exec_elf64 for alpha.
 1.19 25-Nov-2008  cube Descend into the new modules during the build.
 1.18 24-Nov-2008  ad Rename some modules to match their vfs name.
 1.17 23-Nov-2008  martin exec_elf32 makes no sense on alpha
 1.16 20-Nov-2008  ad Rename the accept filter modules to make module name match filter name.
 1.15 19-Nov-2008  ad Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime
 1.14 14-Nov-2008  ad Make POSIX AIO loadable as a module.
 1.13 13-Nov-2008  ad +compat_ossaudio
 1.12 12-Nov-2008  ad Allow the POSIX semaphore code to be loaded as a module.
 1.11 12-Nov-2008  ad Remove LKMs and switch to the module framework, pass 1.

Proposed on tech-kern@.
 1.10 23-Sep-2008  hannken branches: 1.10.2;
Build modular fss driver.

Reviewed by: Quentin Garnier <cube@netbsd.org>
 1.9 30-Aug-2008  reinoud Back out dirhash kernel module for now.
 1.8 29-Aug-2008  reinoud Add dirhash kernel module for sharing dirhashing support with other FS
other than UDF. Its FS agnostic and could be used for any FS

Note to self: manpage needs to follow.
 1.7 28-Jun-2008  rumble branches: 1.7.2;
Add of bunch of file system modules.
 1.6 26-Jun-2008  kent build and install azalia.kmod for amd64 and i386.
 1.5 20-May-2008  ad branches: 1.5.2; 1.5.4;
Enable cd9660 module.
 1.4 19-May-2008  jmcneill Enable putter and puffs modules in build.
 1.3 18-May-2008  jmcneill Build radeondrm kmod on i386.
 1.2 18-May-2008  jmcneill Build drm and i915drm modules for i386 and amd64.
 1.1 02-May-2008  ad branches: 1.1.2; 1.1.4; 1.1.6;
Build and install modules into /kernel/modules. Each module gets a
directory for properties, blobs, etc. It's not fixed in stone and
can easily be changed if there are issues with the location/layout.
 1.1.6.3 04-Jun-2008  yamt sync with head
 1.1.6.2 18-May-2008  yamt sync with head.
 1.1.6.1 02-May-2008  yamt file Makefile was added on branch yamt-pf42 on 2008-05-18 12:35:26 +0000
 1.1.4.6 11-Aug-2010  yamt sync with head.
 1.1.4.5 11-Mar-2010  yamt sync with head
 1.1.4.4 19-Aug-2009  yamt sync with head.
 1.1.4.3 04-May-2009  yamt sync with head.
 1.1.4.2 16-May-2008  yamt sync with head.
 1.1.4.1 02-May-2008  yamt file Makefile was added on branch yamt-nfs-mp on 2008-05-16 02:25:40 +0000
 1.1.2.3 10-Oct-2008  skrll Sync with HEAD.
 1.1.2.2 18-Sep-2008  wrstuden Sync with wrstuden-revivesa-base-2.
 1.1.2.1 23-Jun-2008  wrstuden Sync w/ -current. 34 merge conflicts to follow.
 1.5.4.2 03-Jul-2008  simonb Sync with head.
 1.5.4.1 27-Jun-2008  simonb Sync with head.
 1.5.2.5 17-Jan-2009  mjf Sync with HEAD.
 1.5.2.4 28-Sep-2008  mjf Sync with HEAD.
 1.5.2.3 29-Jun-2008  mjf Sync with HEAD.
 1.5.2.2 02-Jun-2008  mjf Sync with HEAD.
 1.5.2.1 20-May-2008  mjf file Makefile was added on branch mjf-devfs2 on 2008-06-02 13:24:21 +0000
 1.7.2.2 13-Dec-2008  haad Update haad-dm branch to haad-dm-base2.
 1.7.2.1 19-Oct-2008  haad Sync with HEAD.
 1.10.2.3 28-Apr-2009  skrll Sync with HEAD.
 1.10.2.2 03-Mar-2009  skrll Sync with HEAD.
 1.10.2.1 19-Jan-2009  skrll Sync with HEAD.
 1.26.2.2 23-Jul-2009  jym Sync with HEAD.
 1.26.2.1 13-May-2009  jym Sync with HEAD.

Commit is split, to avoid a "too many arguments" protocol error.
 1.38.2.4 06-Nov-2010  uebayasi Sync with HEAD.
 1.38.2.3 22-Oct-2010  uebayasi Sync with HEAD (-D20101022).
 1.38.2.2 17-Aug-2010  uebayasi Sync with HEAD.
 1.38.2.1 30-Apr-2010  uebayasi Sync with HEAD.
 1.39.2.4 21-Apr-2011  rmind sync with head
 1.39.2.3 05-Mar-2011  rmind sync with head
 1.39.2.2 03-Jul-2010  rmind sync with head
 1.39.2.1 30-May-2010  rmind sync with head
 1.59.4.2 05-Mar-2011  bouyer Sync with HEAD
 1.59.4.1 08-Feb-2011  bouyer Sync with HEAD
 1.59.2.1 06-Jun-2011  jruoho Sync with HEAD.
 1.70.2.1 23-Jun-2011  cherry Catchup with rmind-uvmplock merge.
 1.95.2.6 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.95.2.5 16-Jan-2013  yamt sync with (a bit old) head
 1.95.2.4 30-Oct-2012  yamt sync with head
 1.95.2.3 23-May-2012  yamt sync with head.
 1.95.2.2 17-Apr-2012  yamt sync with head
 1.95.2.1 10-Nov-2011  yamt sync with head
 1.99.2.3 29-Apr-2012  mrg sync to latest -current.
 1.99.2.2 05-Apr-2012  mrg sync to latest -current.
 1.99.2.1 18-Feb-2012  mrg merge to -current.
 1.101.2.2 15-Dec-2012  riz Pull up following revision(s) (requested by rmind in ticket #745):
distrib/sets/lists/comp/shl.mi: revision 1.241
distrib/sets/lists/modules/mi: revision 1.49
distrib/sets/lists/base/md.sparc64: revision 1.171
lib/npf/ext_rndblock/npfext_rndblock.c: revision 1.1
distrib/sets/lists/base/ad.mips64eb: revision 1.106
distrib/sets/lists/modules/md.evbppc: revision 1.29
sys/net/npf/npf_ext_rndblock.c: revision 1.1
lib/npf/Makefile: revision 1.2
sys/modules/npf_ext_rndblock/Makefile: revision 1.1
lib/npf/ext_rndblock/Makefile: revision 1.1
distrib/sets/lists/base/ad.mips64el: revision 1.106
lib/npf/ext_rndblock/shlib_version: revision 1.1
distrib/sets/lists/base/md.amd64: revision 1.182
distrib/sets/lists/base/shl.mi: revision 1.643
sys/net/npf/files.npf: revision 1.9
sys/modules/Makefile: revision 1.117
Add NPF &quot;rndblock&quot; extension to randomly drop packets (using a random function
with a percentage or modulo operation). This is a demo module, although it can
be used for packet loss simulation. Example of a procedure in npf.conf:
procedure &quot;somedrop&quot; {
# Drop 1.9% of the traffic
rndblock: percentage 1.9
}
 1.101.2.1 18-Nov-2012  riz Pull up following revision(s) (requested by rmind in ticket #693):
lib/npf/ext_normalise/shlib_version: revision 1.1
lib/libnpf/npf.c: revision 1.13
distrib/sets/lists/modules/mi: revision 1.48
sys/net/npf/npf_rproc.c: revision 1.3
sys/net/npf/npf_rproc.c: revision 1.4
sys/modules/npf/Makefile: revision 1.11
usr.sbin/npf/npfctl/npfctl.h: revision 1.20
lib/npf/ext_log/npfext_log.c: revision 1.1
lib/libnpf/npf.h: revision 1.11
sys/net/npf/npf_inet.c: revision 1.17
sys/net/npf/npf_log.c: file removal
sys/net/npf/npf_handler.c: revision 1.22
distrib/sets/lists/base/shl.mi: revision 1.636
sys/net/npf/npf_impl.h: revision 1.23
usr.sbin/npf/npfctl/Makefile: revision 1.8
lib/npf/Makefile: revision 1.1
lib/npf/ext_log/shlib_version: revision 1.1
lib/Makefile: revision 1.189
distrib/sets/lists/comp/shl.mi: revision 1.236
usr.sbin/npf/npfctl/npf_build.c: revision 1.14
distrib/sets/lists/base/mi: revision 1.1007
usr.sbin/npf/npfctl/npf_scan.l: revision 1.6
distrib/sets/lists/base/mi: revision 1.1009
sys/net/npf/npf.h: revision 1.21
lib/npf/ext_normalise/npfext_normalise.c: revision 1.1
etc/mtree/NetBSD.dist.base: revision 1.105
lib/libnpf/Makefile: revision 1.3
etc/mtree/NetBSD.dist.base: revision 1.106
usr.sbin/npf/npfctl/npf_extmod.c: revision 1.1
sys/net/npf/npf_ctl.c: revision 1.18
lib/npf/ext_log/Makefile: revision 1.1
distrib/sets/lists/comp/mi: revision 1.1781
usr.sbin/npf/npfctl/npf_var.h: revision 1.4
sys/net/npf/npf.c: revision 1.13
sys/modules/Makefile: revision 1.111
sys/net/npf/npf_ext_log.c: revision 1.1
lib/npf/Makefile.inc: revision 1.1
sys/net/npf/npf_ext_normalise.c: revision 1.1
sys/net/npf/files.npf: revision 1.8
sys/rump/net/lib/libnpf/Makefile: revision 1.2
sys/modules/npf_ext_log/Makefile: revision 1.1
lib/npf/ext_normalise/Makefile: revision 1.1
usr.sbin/npf/npfctl/npfctl.c: revision 1.20
usr.sbin/npf/npfctl/npf_parse.y: revision 1.13
sys/modules/npf_ext_normalise/Makefile: revision 1.1
Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.
Add /usr/lib/npf.
Add ./usr/libdata/debug/usr/lib/npf for rmind
Fix MKDEBUG set lists
ext_ops does not change during the life cycle and can be fetched without
the mutex held. This avoids confusion in the compiler about an uninitialized
variable ext_ops.
ok rmind@
 1.110.2.5 03-Dec-2017  jdolecek update from HEAD
 1.110.2.4 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.110.2.3 23-Jun-2013  tls resync from head
 1.110.2.2 25-Feb-2013  tls resync with head
 1.110.2.1 20-Nov-2012  tls Resync to 2012-11-19 00:00:00 UTC
 1.119.6.1 18-May-2014  rmind sync with head
 1.135.2.1 10-Aug-2014  tls Rebase.
 1.140.2.2 21-Mar-2015  snj Pull up following revision(s) (requested by jmcneill in ticket #634):
distrib/sets/lists/modules/md.amd64: revision 1.51
distrib/sets/lists/modules/md.evbppc.powerpc: revision 1.5
distrib/sets/lists/modules/md.i386: revision 1.55
distrib/sets/lists/modules/mi: revision 1.71
sys/dev/i2c/au8522.c: revision 1.7
sys/dev/i2c/cx24227.c: revision 1.7
sys/dev/i2c/dbcool.c: revision 1.42
sys/dev/i2c/hytp14.c: revision 1.3
sys/dev/i2c/i2c_exec.c: revision 1.10
sys/dev/i2c/lg3303.c: revision 1.9
sys/dev/i2c/mt2131.c: revision 1.5
sys/dev/i2c/nxt2k.c: revision 1.4
sys/dev/i2c/sdtemp.c: revision 1.24
sys/dev/i2c/spdmem_i2c.c: revision 1.10
sys/dev/i2c/tvpll.c: revision 1.6
sys/dev/i2c/xc3028.c: revision 1.7
sys/dev/i2c/xc5k.c: revision 1.6
sys/dev/i2c/zl10353.c: revision 1.4
sys/modules/Makefile: revision 1.143
sys/modules/i2cexec/Makefile: revision 1.1
i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the
dependencies in files.i2c and switch device drivers to depend on "i2cexec"
module instead.
A kernel with a USB stack and no I2C controller / bus attachment would spit
out a bunch of "WARNING: module error: can't find builtin dependency `iic'"
messages at boot. This change solves that problem.
 1.140.2.1 11-Jan-2015  snj Pull up following revision(s) (requested by chs in ticket #401):
distrib/sets/lists/modules/md.amd64: revisions 1.46, 1.47 via patch
distrib/sets/lists/modules/md.i386: revisions 1.49, 1.50
sys/dev/ic/pcdisplayvar.h: revision 1.20
sys/dev/ic/vgavar.h: revision 1.32
sys/external/bsd/drm/dist/bsd-core/drm_drv.c: revision 1.26
sys/external/bsd/drm2/dist/drm/drm_agpsupport.c: revisions 1.5, 1.6
sys/external/bsd/drm2/dist/drm/drm_pci.c: revisions 1.4, 1.5
sys/external/bsd/drm2/dist/drm/drm_stub.c: revisions 1.6-1.8
sys/external/bsd/drm2/dist/drm/i915/i915_drv.h: revision 1.11
sys/external/bsd/drm2/dist/drm/radeon/cik.c: revision 1.3
sys/external/bsd/drm2/dist/drm/radeon/ni.c: revision 1.3
sys/external/bsd/drm2/dist/drm/radeon/si.c: revision 1.3
sys/external/bsd/drm2/dist/include/drm/drmP.h: revisions 1.8, 1.9
sys/external/bsd/drm2/dist/include/drm/drm_agpsupport.h: revisions 1.3, 1.4
sys/external/bsd/drm2/drm/drm_drv.c: revision 1.11
sys/external/bsd/drm2/drm/drm_module.c: revision 1.9
sys/external/bsd/drm2/drm/drm_sysctl.c: revisions 1.1-1.4
sys/external/bsd/drm2/drm/drm_vm.c: revision 1.7
sys/external/bsd/drm2/drm/files.drmkms: revisions 1.8, 1.9
sys/external/bsd/drm2/i915drm/files.i915drmkms: revision 1.9
sys/external/bsd/drm2/i915drm/i915_module.c: revisions 1.4, 1.5
sys/external/bsd/drm2/include/drm/drm_sysctl.h: revisions 1.1, 1.2
sys/external/bsd/drm2/include/linux/hdmi.h: revisions 1.3-1.5
sys/external/bsd/drm2/include/linux/module.h: revision 1.5
sys/external/bsd/drm2/include/linux/moduleparam.h: revisions 1.3, 1.4
sys/external/bsd/drm2/include/linux/pci.h: revision 1.11
sys/external/bsd/drm2/linux/linux_module.c: revision 1.5
sys/external/bsd/drm2/nouveau/files.nouveau: revision 1.4
sys/external/bsd/drm2/nouveau/nouveau_module.c: revision 1.3
sys/external/bsd/drm2/pci/drm_pci.c: revision 1.8
sys/external/bsd/drm2/pci/drm_pci_module.c: revision 1.3
sys/external/bsd/drm2/radeon/radeon_module.c: revision 1.3
sys/external/bsd/drm2/ttm/files.ttm: revision 1.1
sys/modules/drm2pci/Makefile: file removal
sys/modules/drmkms/Makefile: revisions 1.4-1.7
sys/modules/drmkms_linux/Makefile: revision 1.5
sys/modules/drmkms_pci/Makefile: revisions 1.3, 1.4
sys/modules/i915drmkms/Makefile: revisions 1.5-1.7
Split drm ttm config into a separate file.
--
Fix module build of drmkms_linux.
--
Remove vestigial drm2pci module, replaced by drmkms_pci.
--
fix the module class.
--
add the drmkms modules
--
make a drm_agp_destroy() function to resolve the circular dependency between
drmkms and drmkms_pci
--
finalize the idr code.
--
add drm_agp_destroy
--
fix drmkms module path for xen.
--
fix build failure.
/tmp/bracket/build/2014.11.10.22.43.46-i386/src/sys/external/bsd/drm2/include/linux/pci.h:36:20: fatal error: acpica.h: No such file or directory
--
make this work: add agpsupport and sysctl code
--
move agpsupport to drmkms to avoid circular dependencies.
--
turn on dynamic ldscript creation to handle link set symbol definitions
used in the automatic sysctl creation.
--
Add __link_set based code to automatically convert the linux module parameters
into sysctls.
--
this module needs MKLDSCRIPT too now
--
more _KERNEL_OPT
--
prettify and add to all the modules that have it.
--
fix description setting.
--
Adjust flags to allow building with clang.
--
Fix build with clang.
--
Drop casts in favour of expressions that actually give the right
pointer.
--
Move all PCI/AGP code back to drmkms_pci module where it belongs.
--
Use correct length for hdmi_infoframe_header_pack in <linux/hdmi.h>.
Fixes PR kern/49411.
--
Back out previous, fix PR kern/49411 correctly.
frame->header.length is not initialized in the vendor packet case.
Instead, make hdmi_infoframe_header_pack take the packet length and
subtract the size of the header when packing the header.
(Could make it take the payload length instead, but for callers it is
more convenient to have a name for the whole packet length.)
--
Fix bounds checking in hdmi_infoframe_header_pack (PR kern/49411).
--
Trivial build fix for no options SYSCTL_INCLUDE_DESCR case, to
avoid -Werror.
OK christos@ and riastradh@
--
fix debugging compilation (ALL kernel)
--
nouveau_nv50_fence.c needs -Wno-shadow.
--
fix a confusion between dev_t and devmajor_t, and include the primary
minor when calling makedev().
 1.142.2.9 28-Aug-2017  skrll Sync with HEAD
 1.142.2.8 05-Feb-2017  skrll Sync with HEAD
 1.142.2.7 05-Dec-2016  skrll Sync with HEAD
 1.142.2.6 05-Oct-2016  skrll Sync with HEAD
 1.142.2.5 09-Jul-2016  skrll Sync with HEAD
 1.142.2.4 27-Dec-2015  skrll Sync with HEAD (as of 26th Dec)
 1.142.2.3 22-Sep-2015  skrll Sync with HEAD
 1.142.2.2 06-Jun-2015  skrll Sync with HEAD
 1.142.2.1 06-Apr-2015  skrll Sync with HEAD
 1.167.2.5 26-Apr-2017  pgoyette Sync with HEAD
 1.167.2.4 20-Mar-2017  pgoyette Sync with HEAD
 1.167.2.3 07-Jan-2017  pgoyette Sync with HEAD. (Note that most of these changes are simply $NetBSD$
tag issues.)
 1.167.2.2 04-Nov-2016  pgoyette Sync with HEAD
 1.167.2.1 06-Aug-2016  pgoyette Sync with HEAD
 1.188.2.1 21-Apr-2017  bouyer Sync with HEAD
 1.192.2.2 06-Feb-2018  snj Pull up following revision(s) (requested by pgoyette in ticket #524):
sys/modules/Makefile: revision 1.199
sys/modules/amdsmn/Makefile: revision 1.1
sys/modules/amdsmn/amdsmn.ioconf: revision 1.1
sys/modules/amdzentemp/Makefile: revision 1.1
Create amdsmn(4) amd amdzentemp(4) modules for X86
 1.192.2.1 21-Dec-2017  snj Pull up following revision(s) (requested by pgoyette in ticket #436):
distrib/sets/lists/modules/mi: revision 1.112
sys/modules/Makefile: revision 1.196
sys/modules/ip_ecn/Makefile: revision 1.1
sys/modules/if_gif/Makefile: revision 1.3
sys/net/if_gif.c: revision 1.136
sys/netinet/ip_ecn.c: revision 1.17
Split ip_ecn code into its own module, so it can be shared between
gif(4), stf(4), and ipsec(4). Without this, loading the if_gif
module can result in redefined global symbols if either ipsec(4) or
stf(4) but not gif(4) is built into the kernel.
Fixes PR kern/52795 (as reported by martin@ via irc).
 1.202.2.44 26-Jan-2019  pgoyette Sync with HEAD
 1.202.2.43 26-Dec-2018  pgoyette Sync with HEAD, resolve a few conflicts
 1.202.2.42 26-Nov-2018  pgoyette Build the compat_netbsd32* modules for sparc64, too

XXX Sets lists will be updated later.
 1.202.2.41 26-Nov-2018  pgoyette Keep only a single copy of the list of compat_netbsd32* modules.
 1.202.2.40 26-Nov-2018  pgoyette Sync with HEAD, resolve a couple of conflicts
 1.202.2.39 23-Sep-2018  pgoyette Restore compat_netbsd32 for amd64, too.
 1.202.2.38 23-Sep-2018  pgoyette Reenable the compat_netbsd32 module. It is _NOT_ an all-version monolithic
module (as was compat_netbsd).
 1.202.2.37 23-Sep-2018  pgoyette No need to declare the crypto_50 init/fini routines. The compat_50
module no longer needs them, and they're declared static in the
ocryptodev.c code
 1.202.2.36 23-Sep-2018  pgoyette Split the compat_crypto_50 from the rest of the crypto module

Cleanup some stuff left over from similar changes to raid modules.
 1.202.2.35 22-Sep-2018  pgoyette Split the raidframe compatability code out into separate modules, since
the driver is already a module. This avoids having to pass a bunch of
function pointers as arguments to raidframe's compat_ioctl().
 1.202.2.34 22-Sep-2018  pgoyette Don't build the "monolithic" compat_netbsd32 module, it is replaced by
the new version-specific modules.
 1.202.2.33 12-Sep-2018  pgoyette Complete removal of the "monolithic" all-version compat_sysvipc module
 1.202.2.32 12-Sep-2018  pgoyette Split compat_netbsd32_sysvipc into version-specific modules
 1.202.2.31 12-Sep-2018  pgoyette Add a compat_netbsd32_16 to handle the sigcode stuff.
 1.202.2.30 12-Sep-2018  pgoyette Add a netbsd32_compat40 module, move the 4.0 mount stuff there.
 1.202.2.29 11-Sep-2018  pgoyette Get ready for compat_netbsd32_43 module
 1.202.2.28 11-Sep-2018  pgoyette Add -DCOMPAT_NETBSD32 for all the version-specific modules
 1.202.2.27 10-Sep-2018  pgoyette More compat_netbsd32_xx modules
 1.202.2.26 10-Sep-2018  pgoyette Don't descend into the build directories for monolithic compat and
compat_sysv modules.

Add sub-dirs for the soon-to-arrive version-specific compat_netbsd32_xx
modules.
 1.202.2.25 06-Sep-2018  pgoyette Sync with HEAD

Resolve a couple of conflicts (result of the uimin/uimax changes)
 1.202.2.24 28-Jul-2018  pgoyette Sync with HEAD
 1.202.2.23 25-Jun-2018  pgoyette Sync with HEAD
 1.202.2.22 21-May-2018  pgoyette Sync with HEAD
 1.202.2.21 17-Apr-2018  pgoyette Split the compat_sysv module into several version-specific modules,
similar to the compat module.
 1.202.2.20 17-Apr-2018  pgoyette Actually create the new compat_sysctl_09_43 module
 1.202.2.19 17-Apr-2018  pgoyette First pass at compat modules for 4.3BSD, NetBSD-0.9, and NetBSD-1.0

XXX Still need to deal with the sysctl stuff and other code shared
XXX between 09 and 43
 1.202.2.18 31-Mar-2018  pgoyette create the compat_12 module
 1.202.2.17 30-Mar-2018  pgoyette Create the compat_util module for use by version-specific compat code.
(It's automatically included in the monolithic compat module, as well
as in kernels with built-in compat code.)
 1.202.2.16 30-Mar-2018  pgoyette Add compat_13 module
 1.202.2.15 30-Mar-2018  pgoyette Extract compat_14 stuff into its own module
 1.202.2.14 30-Mar-2018  pgoyette Create and build a compat_16 module
 1.202.2.13 30-Mar-2018  pgoyette Create and build the compat_20 module
 1.202.2.12 28-Mar-2018  pgoyette Initial pass at a compat_30 module.

Still needs some work for dev/vnd and various dev/usb/*
 1.202.2.11 27-Mar-2018  pgoyette Create a compat_40 module
 1.202.2.10 24-Mar-2018  pgoyette Separate the compat_50 and compat_80 dispatching code from the main
body of raidframe, and place into the appropriate compat modules.

Enable building of the compat_80 module.
 1.202.2.9 19-Mar-2018  pgoyette Initial pass at a COMPAT_50 module. More to come.
 1.202.2.8 18-Mar-2018  pgoyette Move closer to a complete compat_60 module. All that remains is some
tty stuff and some ccd ioctl()s.
 1.202.2.7 16-Mar-2018  pgoyette Formatting only - no functional change
 1.202.2.6 16-Mar-2018  pgoyette Ooops - don't use SUBDIR= after the SUBDIR+= lines!
 1.202.2.5 16-Mar-2018  pgoyette For now, disable the compat_60 module
 1.202.2.4 15-Mar-2018  pgoyette Initial set-up for compat_60 module
 1.202.2.3 15-Mar-2018  pgoyette Create a separate module for COMPAT_70 code only, and untangle the
70 compat code from the current.
 1.202.2.2 09-Mar-2018  pgoyette Rename the new compat_sysv_ipc module to just compat_sysv
 1.202.2.1 09-Mar-2018  pgoyette Split the sysv_ipc module into two pieces: one for contemporary
SYSV* functionality, and one for compatability with previous NetBSD
versions. No need to pull in all of compat just to have a sysv_ipc
module.
 1.205.2.3 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.205.2.2 08-Apr-2020  martin Merge changes from current as of 20200406
 1.205.2.1 10-Jun-2019  christos Sync with HEAD
 1.222.2.2 18-Apr-2024  martin Pull up following revision(s) (requested by riastradh in ticket #655):

sys/modules/Makefile: revision 1.285
share/mk/bsd.own.mk: revision 1.1365
share/mk/bsd.own.mk: revision 1.1366
sys/arch/aarch64/include/sljit_machdep.h: revision 1.4
sys/external/bsd/sljit/dist/sljit_src/sljitNativeARM_64.c: revision 1.5
(all via patch)

sljit: Pacify -Wsign-compare.

If these sizes are negative, we're probably in trouble anyway, so
assert nonnegative here.
Needed to resolve PR 58103.

bsd.own.mk: Enable MKLSJIT on aarch64.

Make sure there's only one copy of the conditional, in bsd.own.mk;
just make sys/modules/Makefile conditional on MKSLJIT so we don't
have to keep these in sync.

As a workaround for PR 58106, tweak the conditional definition of
SLJIT_CACHE_FLUSH to use cpu_icache_sync_range only in _HARDKERNEL,
and use __builtin___clear_cache in userland and in rump kernels.

PR 58103: bpfjit.kmod is not built on aarch64
bsd.own.mk: No need for MKSLJIT to be set differently from others.
- Use ?=, not =, so mk.conf setting wins.
- Write out per-architecture tabular settings, not a conditional.
- Add comments for the architectures that look like they should have
sljit but don't. (XXX Missing comments about powerpc and mips --
not sure why, is this because modules don't yet work on those
architectures, or what?)

Tidying for PR 58103: bpfjit.kmod is not built on aarch64.
 1.222.2.1 01-Sep-2019  martin Pull up following revision(s) (requested by mrg in ticket #135):

distrib/sets/lists/comp/mi 1.2279
distrib/sets/lists/modules/mi 1.123
share/man/man9/Makefile 1.438
share/man/man9/usbnet.9 1.1-1.9
sys/dev/ic/rndisreg.h 1.3
sys/dev/usb/TODO 1.47-1.52
sys/dev/usb/TODO.usbmp 1.15,1.16
sys/dev/usb/files.usb 1.157-1.167
sys/dev/usb/if_aue.c 1.155-1.161
sys/dev/usb/if_auereg.h 1.30-1.32
sys/dev/usb/if_axe.c 1.103-1.119
sys/dev/usb/if_axen.c 1.51-1.53,1.55-1.67
sys/dev/usb/if_axenreg.h 1.15
sys/dev/usb/if_cdce.c 1.54-1.67
sys/dev/usb/if_cue.c 1.85,1.86
sys/dev/usb/if_cuereg.h 1.23
sys/dev/usb/if_kue.c 1.97-1.100
sys/dev/usb/if_kuereg.h 1.23,1.24
sys/dev/usb/if_mue.c 1.51-1.55
sys/dev/usb/if_muereg.h 1.6
sys/dev/usb/if_muevar.h 1.9
sys/dev/usb/if_smsc.c 1.46-1.61
sys/dev/usb/if_smscreg.h 1.6
sys/dev/usb/if_smscvar.h delete
sys/dev/usb/if_udav.c 1.60-1.71
sys/dev/usb/if_udavreg.h 1.14,1.15
sys/dev/usb/if_upl.c 1.65,1.66
sys/dev/usb/if_ure.c 1.15-1.31
sys/dev/usb/if_urevar.h 1.4,1.5
sys/dev/usb/if_url.c 1.67-1.70
sys/dev/usb/if_urlreg.h 1.14
sys/dev/usb/if_urndis.c 1.22-1.33
sys/dev/usb/if_urtwn.c 1.72
sys/dev/usb/ohci.c 1.290
sys/dev/usb/uhub.c 1.143
sys/dev/usb/usb.c 1.180
sys/dev/usb/usb.h 1.118
sys/dev/usb/usb_mem.c 1.71
sys/dev/usb/usb_subr.c 1.238,1.239
sys/dev/usb/usbdevs 1.772
sys/dev/usb/usbdi.c 1.183,1.186
sys/dev/usb/usbdi.h 1.97
sys/dev/usb/usbdi_util.c 1.75
sys/dev/usb/usbhist.h 1.5,1.6
sys/dev/usb/usbnet.c 1.1-1.24
sys/dev/usb/usbnet.h 1.1-1.14
sys/dev/usb/usbroothub.c 1.9
sys/dev/usb/xhci.c 1.109,1.110
sys/modules/Makefile 1.223
sys/modules/usbnet/Makefile 1.1

usbnet(9): Add common framework for USB network devices.
This bring various safety fixes to all updated drivers,
and includes locking clean up, detach safety when being
used or not, separate rx/tx locks to improve performance,
porting to NET_MPSAFE, many edge/error case bugs in
drivers fixed, as well as resovling PRs 54303 and 54308.
These drivers are converted: axe(4), axen(4), aue(4),
cdce(4), cue(4), kue(4), mue(4), smsc(4), udav(4),
upl(4), ure(4), url(4), and urndis(4).
 1.234.2.2 29-Feb-2020  ad Sync with head.
 1.234.2.1 25-Jan-2020  ad Sync with head.
 1.247.2.2 03-Apr-2021  thorpej Sync with HEAD.
 1.247.2.1 14-Dec-2020  thorpej Sync w/ HEAD.
 1.248.2.1 03-Apr-2021  thorpej Sync with HEAD.
 1.249.4.1 31-May-2021  cjep sync with head
 1.249.2.1 17-Jun-2021  thorpej Sync w/ HEAD.
 1.274.2.7 09-Oct-2024  martin Pull up following revision(s) (requested by riastradh in ticket #939):

distrib/sets/lists/debug/module.md.amd64: revision 1.18
sys/modules/Makefile: revision 1.292
lib/libc/gen/arc4random.c: revision 1.34
lib/libc/gen/arc4random.c: revision 1.35
lib/libc/gen/arc4random.c: revision 1.36
lib/libc/gen/arc4random.c: revision 1.37
sys/kern/kern_entropy.c: revision 1.70
lib/libc/gen/arc4random.c: revision 1.38
sys/kern/kern_entropy.c: revision 1.71
lib/libc/gen/getentropy.3: revision 1.8
distrib/sets/lists/modules/md.amd64: revision 1.103
share/man/man4/rnd.4: revision 1.42
share/man/man4/rnd.4: revision 1.44
lib/libc/include/arc4random.h: revision 1.1
distrib/sets/lists/man/mi: revision 1.1786
sys/arch/i386/conf/GENERIC: revision 1.1258
sys/modules/acpivmgenid/acpivmgenid.ioconf: revision 1.1
sys/arch/amd64/conf/ALL: revision 1.190
distrib/sets/lists/debug/mi: revision 1.446
sys/arch/i386/conf/ALL: revision 1.521
lib/libc/gen/Makefile.inc: revision 1.219
distrib/sets/lists/debug/module.md.i386: revision 1.12
sys/dev/acpi/acpi_vmgenid.c: revision 1.1
sys/dev/acpi/acpi_vmgenid.c: revision 1.2
lib/libc/include/reentrant.h: revision 1.22
sys/arch/evbarm/conf/GENERIC64: revision 1.219
share/man/man4/Makefile: revision 1.735
distrib/sets/lists/modules/md.i386: revision 1.100
distrib/sets/lists/tests/mi: revision 1.1334
lib/libc/gen/arc4random.3: revision 1.22
sys/dev/acpi/files.acpi: revision 1.133
lib/libc/gen/arc4random.3: revision 1.23
tests/lib/libc/gen/t_arc4random.c: revision 1.1
sys/sys/entropy.h: revision 1.6
sys/arch/amd64/conf/GENERIC: revision 1.614
sys/modules/acpivmgenid/Makefile: revision 1.1
share/man/man4/acpivmgenid.4: revision 1.1
lib/libc/gen/Makefile.inc: revision 1.220
tests/lib/libc/gen/Makefile: revision 1.56
share/man/man4/acpivmgenid.4: revision 1.2
share/man/man4/acpivmgenid.4: revision 1.3

(all via patch)

Catch up with all the lint warnings since exit on warning was disabled.

Disable 'missing header declaration' and 'nested extern' warnings for now.
acpivmgenid(4): New driver for virtual machine generation ID.

Added to amd64/ALL and i386/ALL kernel configurations, and made
available as a loadable module acpivmgenid.kmod on x86, for now.
TBD: Add to all ACPI-supporting GENERIC kernels.
PR kern/58632: getentropy(2) and arc4random(3) do not reseed on VM
fork

entropy(9): Factor out subroutines to reset and gather entropy.
`Reset' means we keep the data in the pool, but assume it had zero
entropy. `Gather' means we request samples from all on-demand
sources and wait for the synchronous ones to complete.

No functional change intended, other than to expose new symbols --
just preparation to expose these to acpivmgenid(4), so it can use
these when the VM host notifies us that we, the guest, have been
cloned.
PR kern/58632: getentropy(2) and arc4random(3) do not reseed on VM
fork

acpivmgenid(4): Reset and gather entropy on VM clone notification.
PR kern/58632: getentropy(2) and arc4random(3) do not reseed on VM
fork

arc4random(3): Reseed if system entropy epoch changes.
This can happen, for example, if the system is a VM instance, and the
VM is cloned.

This incurs the cost of a system call on every arc4random call, which
is unfortunate, but
1. we don't currently have a (machine-independent) mechanism for
exposing a read-only page to userland shared by the kernel to
enable a cheaper access path to the entropy epoch; and
2. the algorithm here -- a simple application of ChaCha -- is likely
also a bottleneck and could be much cheaper by
(a) using sys/crypto/chacha for machine-dependent vectorized
ChaCha code, and
(b) filling a buffer (somewhere between a cipher block and a page)
in a batch at a time, instead of running ChaCha to generate
only 32 bytes at a time.
So although this might be a performance hit, the security benefit is
worthwhile and we have a clear path to do better than reversing the
performance hit later.
PR kern/58632: getentropy(2) and arc4random(3) do not reseed on VM
fork

acpivmgenid(4): Nix BUGS that have been squashed.
Reference kern.entropy.epoch for the remaining bug (which is a
performance issue, not a security issue).
PR kern/58632: getentropy(2) and arc4random(3) do not reseed on VM
fork

entropy(9): Allow unprivileged reads of sysctl kern.entropy.epoch.

Applications need this in order to know when to reseed. (We should
also expose it through a page shared read-only with userland for
cheaper access, but until we do, let's let applications get at it
through sysctl.)
PR kern/58632: getentropy(2) and arc4random(3) do not reseed on VM
fork

arc4random.c: Fix test program.

This isn't wired up anywhere, but let's reduce the bitrot. It was
helpful in reminding me that kern.entropy.epoch was, for reasons I
can't remember, restricted to privileged access.
PR kern/58632: getentropy(2) and arc4random(3) do not reseed on VM
fork

amd64, evbarm, i386: Add acpivmgenid(4) to GENERIC.
PR kern/58632: getentropy(2) and arc4random(3) do not reseed on VM
fork

rnd(4): Document kern.entropy.epoch is unprivileged and elaborate.
Cross-reference acpivmgenid(4).
PR kern/58632: getentropy(2) and arc4random(3) do not reseed on VM
fork

arc4random(3): Note that arc4random respects kern.entropy.epoch.
PR kern/58632: getentropy(2) and arc4random(3) do not reseed on VM
fork
Add debug info for new acpivmgenid module

arc4random(3): Add automatic tests.

This verifies that:
- arc4random zeroes its state and reseeds itself on fork
- arc4random reseeds itself on entropy consolidation (e.g., VM clone)
- arc4random falls back to global state if it can't allocate local
state because address space limits cause mmap to fail

NOTE: This adds a new libc symbol __arc4random_global, but it's in
the reserved namespace and only used by t_arc4random, so no libc
minor bump.
PR kern/58632: getentropy(2) and arc4random(3) do not reseed on VM
fork

getentropy(3): Note intent to reseed on VM clone, and caveats.

Tidy markup and pacify some mandoc -Tlint complaints while here.
PR kern/58632: getentropy(2) and arc4random(3) do not reseed on VM
fork

Bump dates on man pages recently updated to mention VM clones.
PR kern/58632: getentropy(2) and arc4random(3) do not reseed on VM
fork

arc4random(3): Pacify some of lint's complaints.
PR kern/58632: getentropy(2) and arc4random(3) do not reseed on VM
fork

arc4random: suppress another lint warning
 1.274.2.6 09-Oct-2024  martin Pull up following revision(s) (requested by riastradh in ticket #936):

sys/dev/acpi/apei_einjvar.h: revision 1.1
sys/dev/acpi/apei_cper.h: revision 1.2
distrib/sets/lists/debug/module.md.i386: revision 1.9
sys/dev/acpi/apei_hest.c: revision 1.1
sys/modules/apei/Makefile: revision 1.1
sys/dev/acpi/apei_hest.c: revision 1.2
distrib/sets/lists/modules/md.amd64: revision 1.101
sys/dev/acpi/apei_hest.c: revision 1.3
distrib/sets/lists/modules/md.amd64: revision 1.102
sys/modules/apei/apei.ioconf: revision 1.1
sys/dev/acpi/apei_bert.c: revision 1.1
distrib/sets/lists/man/mi: revision 1.1785
sys/dev/acpi/apei_bertvar.h: revision 1.1
sys/dev/acpi/apei.c: revision 1.1
sys/dev/acpi/apei.c: revision 1.2
sys/dev/acpi/apei.c: revision 1.3
sys/modules/Makefile: revision 1.283
sys/modules/Makefile: revision 1.284
sys/dev/acpi/apei_reg.c: revision 1.1
sys/dev/acpi/apei_hestvar.h: revision 1.1
distrib/sets/lists/debug/module.md.i386: revision 1.10
sys/dev/acpi/apei_reg.c: revision 1.2
sys/dev/acpi/apei_reg.c: revision 1.3
sys/dev/acpi/apei_reg.h: revision 1.1
sys/dev/acpi/apei_reg.h: revision 1.2
sys/dev/acpi/apei_reg.h: revision 1.3
sys/dev/acpi/acpi_hed.c: revision 1.1
sys/dev/acpi/apei_einj.c: revision 1.1
sys/dev/acpi/apeivar.h: revision 1.1
sys/dev/acpi/apei_einj.c: revision 1.2
sys/dev/acpi/apei_einj.c: revision 1.3
sys/dev/acpi/apei_einj.c: revision 1.4
sys/dev/acpi/apei_einj.c: revision 1.5
share/man/man4/Makefile: revision 1.734
sys/dev/acpi/apei_einj.c: revision 1.6
sys/dev/acpi/apei_einj.c: revision 1.7
sys/dev/acpi/files.acpi: revision 1.131
sys/dev/acpi/files.acpi: revision 1.132
sys/dev/acpi/apei_interp.c: revision 1.1
sys/dev/acpi/apei_interp.c: revision 1.2
share/man/man4/acpihed.4: revision 1.1
sys/dev/acpi/apei_mapreg.c: revision 1.1
sys/dev/acpi/apei_interp.c: revision 1.3
share/man/man4/acpihed.4: revision 1.2
distrib/sets/lists/modules/md.i386: revision 1.98
sys/dev/acpi/apei_mapreg.c: revision 1.2
sys/dev/acpi/apei_interp.h: revision 1.1
sys/dev/acpi/apei_interp.c: revision 1.4
distrib/sets/lists/modules/md.i386: revision 1.99
sys/modules/acpihed/Makefile: revision 1.1
sys/dev/acpi/apei_mapreg.c: revision 1.3
sys/dev/acpi/apei_interp.h: revision 1.2
sys/arch/amd64/conf/ALL: revision 1.185
sys/dev/acpi/apei_mapreg.h: revision 1.1
sys/dev/acpi/apei_mapreg.c: revision 1.4
sys/arch/amd64/conf/ALL: revision 1.186
sys/dev/acpi/apei_erstvar.h: revision 1.1
sys/dev/acpi/apei_erst.c: revision 1.1
sys/dev/acpi/apei_erst.c: revision 1.2
sys/dev/acpi/apei_erst.c: revision 1.3
sys/arch/i386/conf/ALL: revision 1.516
share/man/man4/apei.4: revision 1.1
sys/arch/i386/conf/ALL: revision 1.517
share/man/man4/apei.4: revision 1.2
distrib/sets/lists/debug/module.md.amd64: revision 1.15
sys/modules/acpihed/acpihed.ioconf: revision 1.1
sys/dev/acpi/apei_hed.h: revision 1.1
distrib/sets/lists/debug/module.md.amd64: revision 1.16
sys/dev/acpi/apei_cper.h: revision 1.1

(all via patch)

apei(4): New driver for ACPI Platform Error Interfaces.

For now it is wired up only in x86 ALL kernels, and built as a module
for x86 and Arm. Once it gets a little more testing on machines with
APEI, I would like to flip it on by default.
PR kern/58046

apei(4): Pacify -Wsign-compare.
Assert that the parsing made forward progress too while here.
PR kern/58046

apei(4): Tweak some comments about the APEI interpreter language.
No functional change intended.
PR kern/58046

apei(4): Fix parsing checks for TRIGGER_ERROR action table.
The TableSize is size of the header plus the body, not just the body.
PR kern/58046
apei(4): Note some TODOs for EINJ and HEST.
No functional change intended, comments only.
PR kern/58046

acpihed(4): New driver for PNP0C33 to notify apei(4).
PNP0C33 denotes the ACPI Hardware Error Device, which exists only to
be a vector for event notifications.
PR kern/58046

acpihed(4): fix name in Dt, use Ql
apei(4): Plug memory leak on teardown of instruction interpreter.
PR kern/58046
apei(4): Fix indexing of multi-unit register access.
PR kern/58046

apei(4): Fix register chunk counting.
Now it will actually read and write the registers!
Have been updating and reloading the wrong module to test this, oops.
PR kern/58046

apei(4): Allow pre-mapping I/O registers too.
PR kern/58046

apei(4): Pre-map registers when compiling interpreter.
This way we don't have to worry about mapping them in nasty contexts
where access to uvm_km_alloc may not be allowed. Paves the way to
use ERST for saving dmesg on crash.
Exception: ACPI_ERST_MOVE_DATA still needs to do AcpiOsMapMemory.
We'll need to reserve a couple pages to avoid that.
PR kern/58046

apei(4): Simplify EINJ/ERST register access now that it's pre-mapped.
PR kern/58046
apei(4): Make sure to initialize *fatalp in apei_gesb_report.
PR kern/58046

apei: fix typos in comments

apei: fix typos in comments and snprintb bitfmt

apei(4): Fix uninitialized stack access in error branch.
PR kern/58046

apei(4), acpihed(4): Wire up man pages to build.
PR kern/58046: Missing APEI (ACPI Platform Error Interface) support
 1.274.2.5 12-Sep-2024  martin Pull up following revision(s) (requested by rin in ticket #840):

sys/modules/Makefile: revision 1.282

skip this subdir for "make includes".
it's excessively slow and does nothing (nor should it.)
 1.274.2.4 20-Jul-2024  martin Pull up following revision(s) (requested by rin in ticket #765):

sys/modules/Makefile: revision 1.291
distrib/sets/lists/modules/mi: revision 1.160
distrib/sets/lists/debug/module.mi: revision 1.27

modules: Build `ipl` module only if MKIPFILTER is enabled
 1.274.2.3 18-Apr-2024  martin Pull up following revision(s) (requested by riastradh in ticket #655):

sys/modules/Makefile: revision 1.285
share/mk/bsd.own.mk: revision 1.1365
share/mk/bsd.own.mk: revision 1.1366
sys/arch/aarch64/include/sljit_machdep.h: revision 1.4
sys/external/bsd/sljit/dist/sljit_src/sljitNativeARM_64.c: revision 1.5

sljit: Pacify -Wsign-compare.

If these sizes are negative, we're probably in trouble anyway, so
assert nonnegative here.
Needed to resolve PR 58103.

bsd.own.mk: Enable MKLSJIT on aarch64.

Make sure there's only one copy of the conditional, in bsd.own.mk;
just make sys/modules/Makefile conditional on MKSLJIT so we don't
have to keep these in sync.

As a workaround for PR 58106, tweak the conditional definition of
SLJIT_CACHE_FLUSH to use cpu_icache_sync_range only in _HARDKERNEL,
and use __builtin___clear_cache in userland and in rump kernels.

PR 58103: bpfjit.kmod is not built on aarch64
bsd.own.mk: No need for MKSLJIT to be set differently from others.
- Use ?=, not =, so mk.conf setting wins.
- Write out per-architecture tabular settings, not a conditional.
- Add comments for the architectures that look like they should have
sljit but don't. (XXX Missing comments about powerpc and mips --
not sure why, is this because modules don't yet work on those
architectures, or what?)

Tidying for PR 58103: bpfjit.kmod is not built on aarch64.
 1.274.2.2 30-Dec-2023  martin Pull up following revision(s) (requested by pgoyette in ticket #521):

distrib/sets/lists/debug/module.md.i386: revision 1.8
sys/modules/Makefile: revision 1.281
distrib/sets/lists/modules/md.i386: revision 1.97

Unhook radeondrm module from the build; it doesn't work, and
it's just tempting someone to try it. Leave the files around
in case someone wants to pursue making this work.

Should address kern/57793

XXX Related modules from the same legacy era should probably be
XXX removed, too, but so far only radeondrm has been reported
XXX as an issue. Kep an eye out for sisdrm, savagedrm, tdfxdrm,
XXX and r128drm.
 1.274.2.1 17-Aug-2023  martin Pull up following revision(s) (requested by andvar in ticket #329):

distrib/sets/lists/modules/md.amd64: revision 1.100
sys/external/bsd/drm2/dist/include/drm/drm_pciids.h: revision 1.5
sys/arch/amd64/conf/GENERIC: revision 1.605
sys/modules/Makefile: revision 1.279
distrib/sets/lists/debug/module.md.amd64: revision 1.14

viadrmums(4): build legacy VIA DRM UMS driver module for amd64.

This driver is not built-in by default, thus loadable module can help (un)lucky
owners of 64-bit capable VIA (Nano/Eden) systems or early AMD/Intel systems
with some VIA chipsets, which include VIA integrated graphics.

I also boldly added product IDs for few later models from VX8xx/VX9xx chipsets
without 3D support (DX9_0) to "expand" the driver support to more systems.

Tested successfully basic functionality on VX800, and partially successfully
on VX900 (on VX900 Xorg failed to initialize due to openchrome related issues,
viadrmums attaches and it is by used the driver).

Didn't test on VX855, I don't have one.
 1.290.2.1 02-Aug-2025  perseant Sync with HEAD
 1.6 24-Jan-2018  skrll Remove port-acorn26

OK core@
 1.5 11-May-2015  martin acorn26 probably was not meant to use the arm32 genassym
 1.4 04-Mar-2014  joerg branches: 1.4.6;
Introduce GENASSYM_CPPFLAGS for options during genassym processing.
Consistently drop assembler flags.
 1.3 09-Nov-2013  jmcneill set GENASSYM_DIR for arm and earm
 1.2 25-Mar-2012  joerg branches: 1.2.2; 1.2.4;
Don't pass assembler flags to genassym, it doesn't compile.
 1.1 16-Jan-2008  ad branches: 1.1.2; 1.1.4; 1.1.6; 1.1.14; 1.1.52; 1.1.56;
Pull in my modules code for review/test/hacking.
 1.1.56.1 05-Apr-2012  mrg sync to latest -current.
 1.1.52.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.52.1 17-Apr-2012  yamt sync with head
 1.1.14.2 23-Mar-2008  matt sync with HEAD
 1.1.14.1 16-Jan-2008  matt file Makefile.assym was added on branch matt-armv6 on 2008-03-23 02:05:04 +0000
 1.1.6.2 18-Feb-2008  mjf Sync with HEAD.
 1.1.6.1 16-Jan-2008  mjf file Makefile.assym was added on branch mjf-devfs on 2008-02-18 21:07:00 +0000
 1.1.4.2 21-Jan-2008  yamt sync with head
 1.1.4.1 16-Jan-2008  yamt file Makefile.assym was added on branch yamt-lazymbuf on 2008-01-21 09:46:58 +0000
 1.1.2.2 19-Jan-2008  bouyer Sync with HEAD
 1.1.2.1 16-Jan-2008  bouyer file Makefile.assym was added on branch bouyer-xeni386 on 2008-01-19 12:15:29 +0000
 1.2.4.1 18-May-2014  rmind sync with head
 1.2.2.2 03-Dec-2017  jdolecek update from HEAD
 1.2.2.1 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.4.6.1 06-Jun-2015  skrll Sync with HEAD
 1.1 16-Jun-2024  pgoyette branches: 1.1.2;
Introduce sys/modules/Makefile.compat and hook some compat_1[36]
machdep code into the modules. kern/58346
 1.1.2.2 22-Jun-2024  martin Pull up following revision(s) (requested by pgoyette in ticket #724):

sys/modules/compat_netbsd32_16/Makefile: revision 1.5
sys/arch/powerpc/powerpc/compat_16_machdep.c: revision 1.25
sys/arch/powerpc/powerpc/compat_16_machdep.c: revision 1.26
sys/modules/compat_16/Makefile: revision 1.3
sys/modules/compat_netbsd32_13/Makefile: revision 1.5
sys/modules/compat_16/Makefile: revision 1.4
sys/arch/sun2/sun2/genassym.cf: revision 1.17
sys/arch/sun2/sun2/enable.h: revision 1.5
sys/modules/compat_13/Makefile: revision 1.3
sys/modules/compat_13/Makefile: revision 1.4
sys/modules/compat_13/Makefile: revision 1.5
sys/arch/mips/mips/netbsd32_machdep_16.c: revision 1.8
sys/modules/Makefile.compat: revision 1.1
sys/arch/mips/mips/netbsd32_machdep_13.c: revision 1.4
share/mk/bsd.kmodule.mk: revision 1.86
sys/arch/aarch64/aarch64/netbsd32_machdep_16.c: revision 1.4
sys/arch/powerpc/powerpc/compat_13_machdep.c: revision 1.23
sys/arch/aarch64/aarch64/netbsd32_machdep_13.c: revision 1.4

Import AFLAGS to allow processing of assembler files in modules.
Prerequisite for kern/583346.

Introduce sys/modules/Makefile.compat and hook some compat_1[36]
machdep code into the modules. kern/58346

Ooops missed a source file!

Proteect #include of kernel options files with #ifdef _KERNEL_OPT

XXX Add to existing 10.0 and 9.0 tickets for kern/583346

Include required headers

Add required include for compat_16 machdep code

fix the m68k compat_13 build.

include Makefile.assym to generate assym.h.
use -I. and -x assembler-with-cpp to actually use cpp and find assym.h.
also apply m68k assym.h fix here as well as compat_13.

powerpc64: Provide dummy stubs for compat1[36]
as done for amd64. We haven't had working userland for powerpc64,
and therefore compatible to 1.[36] is only useful for netbsd32.

Fix build failure for evbppc64 for PR kern/58346 (my bug!).
sun2/genassym.cf: Skip KERNBASE for _MODULE
as it is not a compile-time constant; see sun2/vmparam.h.

It should not be, and is not actually, used for modules.

PR kern/58346

sun2/enable.h: Fix -Wold-style-definition for WARNS=5 build as modules
Finally fix sun2 build for PR kern/58346
 1.1.2.1 16-Jun-2024  martin file Makefile.compat was added on branch netbsd-10 on 2024-06-22 11:11:53 +0000
 1.8 17-Feb-2019  rin branches: 1.8.4; 1.8.30;
Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.7 17-Feb-2019  rin Turn on DIAGNOSTIC by default for modules in HEAD.

Make us sure that it should be commented out for release branches in
a similar manner to kernel configuration files.

Discussed on tech-kern.
 1.6 11-Sep-2011  mbalmer branches: 1.6.54;
Move SYSCTL_USE_DESCR to a better place.
 1.5 10-Sep-2011  mbalmer Include sysctl descriptions when building modules.
 1.4 28-Aug-2011  jmcneill set default WARNS for modules to 3 -- the only one that needs < 3 now is pf
 1.3 21-Mar-2010  pooka include bsd.ioconf.mk when necessary
 1.2 13-Mar-2010  christos branches: 1.2.2;
Don't hard-code ../../ so that we can handle multi-level modules (dtrace)
 1.1 16-Jan-2008  ad branches: 1.1.2; 1.1.4; 1.1.6; 1.1.14; 1.1.18; 1.1.38;
Pull in my modules code for review/test/hacking.
 1.1.38.1 30-Apr-2010  uebayasi Sync with HEAD.
 1.1.18.1 11-Aug-2010  yamt sync with head.
 1.1.14.2 23-Mar-2008  matt sync with HEAD
 1.1.14.1 16-Jan-2008  matt file Makefile.inc was added on branch matt-armv6 on 2008-03-23 02:05:04 +0000
 1.1.6.2 18-Feb-2008  mjf Sync with HEAD.
 1.1.6.1 16-Jan-2008  mjf file Makefile.inc was added on branch mjf-devfs on 2008-02-18 21:07:00 +0000
 1.1.4.2 21-Jan-2008  yamt sync with head
 1.1.4.1 16-Jan-2008  yamt file Makefile.inc was added on branch yamt-lazymbuf on 2008-01-21 09:46:58 +0000
 1.1.2.2 19-Jan-2008  bouyer Sync with HEAD
 1.1.2.1 16-Jan-2008  bouyer file Makefile.inc was added on branch bouyer-xeni386 on 2008-01-19 12:15:29 +0000
 1.2.2.1 30-May-2010  rmind sync with head
 1.6.54.1 10-Jun-2019  christos Sync with HEAD
 1.8.30.1 09-Oct-2023  snj Apply patch (requested by martin in ticket #401):
Disable DIAGNOSTIC/DEBUG.
 1.8.4.1 21-Nov-2019  martin In preparation for the upcoming release, turn off DIAGNOSTIC in most
kernel configs, modules and libc.
 1.1 13-Nov-2008  ad branches: 1.1.4; 1.1.6; 1.1.8; 1.1.12;
Add a note:

Do not automatically install modules that would fundamentally alter system
behaviour or create a security hole, as the system may automatically load
modules.
 1.1.12.2 04-May-2009  yamt sync with head.
 1.1.12.1 13-Nov-2008  yamt file README was added on branch yamt-nfs-mp on 2009-05-04 08:14:06 +0000
 1.1.8.2 19-Jan-2009  skrll Sync with HEAD.
 1.1.8.1 13-Nov-2008  skrll file README was added on branch nick-hppapmap on 2009-01-19 13:20:07 +0000
 1.1.6.2 17-Jan-2009  mjf Sync with HEAD.
 1.1.6.1 13-Nov-2008  mjf file README was added on branch mjf-devfs2 on 2009-01-17 13:29:28 +0000
 1.1.4.2 13-Dec-2008  haad Update haad-dm branch to haad-dm-base2.
 1.1.4.1 13-Nov-2008  haad file README was added on branch haad-dm on 2008-12-13 01:15:25 +0000
 1.2 21-Oct-2025  pgoyette Add WARNS=3 as needed for -Wsign-compare issues
 1.1 27-Sep-2016  pgoyette branches: 1.1.2; 1.1.4; 1.1.18;
Add module build infrastructure for ld and its attachments
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 27-Sep-2016  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:48 +0000
 1.1.4.2 04-Nov-2016  pgoyette Sync with HEAD
 1.1.4.1 27-Sep-2016  pgoyette file Makefile was added on branch pgoyette-localcount on 2016-11-04 14:49:17 +0000
 1.1.2.2 05-Oct-2016  skrll Sync with HEAD
 1.1.2.1 27-Sep-2016  skrll file Makefile was added on branch nick-nhusb on 2016-10-05 20:56:04 +0000
 1.1 27-Sep-2016  pgoyette branches: 1.1.2; 1.1.4; 1.1.18;
Add module build infrastructure for ld and its attachments
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 27-Sep-2016  jdolecek file aac.ioconf was added on branch tls-maxphys on 2017-12-03 11:38:48 +0000
 1.1.4.2 04-Nov-2016  pgoyette Sync with HEAD
 1.1.4.1 27-Sep-2016  pgoyette file aac.ioconf was added on branch pgoyette-localcount on 2016-11-04 14:49:17 +0000
 1.1.2.2 05-Oct-2016  skrll Sync with HEAD
 1.1.2.1 27-Sep-2016  skrll file aac.ioconf was added on branch nick-nhusb on 2016-10-05 20:56:04 +0000
 1.2 20-Aug-2015  christos Add ioconf entries to the pseudo-devices.
 1.1 20-Nov-2008  ad branches: 1.1.4; 1.1.6; 1.1.10; 1.1.32; 1.1.50;
Rename the accept filter modules to make module name match filter name.
 1.1.50.1 22-Sep-2015  skrll Sync with HEAD
 1.1.32.1 03-Dec-2017  jdolecek update from HEAD
 1.1.10.2 04-May-2009  yamt sync with head.
 1.1.10.1 20-Nov-2008  yamt file Makefile was added on branch yamt-nfs-mp on 2009-05-04 08:14:06 +0000
 1.1.6.2 19-Jan-2009  skrll Sync with HEAD.
 1.1.6.1 20-Nov-2008  skrll file Makefile was added on branch nick-hppapmap on 2009-01-19 13:20:07 +0000
 1.1.4.2 17-Jan-2009  mjf Sync with HEAD.
 1.1.4.1 20-Nov-2008  mjf file Makefile was added on branch mjf-devfs2 on 2009-01-17 13:29:28 +0000
 1.1 20-Aug-2015  christos branches: 1.1.2; 1.1.18;
Add ioconf entries to the pseudo-devices.
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 20-Aug-2015  jdolecek file accf_data.ioconf was added on branch tls-maxphys on 2017-12-03 11:38:48 +0000
 1.1.2.2 22-Sep-2015  skrll Sync with HEAD
 1.1.2.1 20-Aug-2015  skrll file accf_data.ioconf was added on branch nick-nhusb on 2015-09-22 12:06:08 +0000
 1.3 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.2 20-Aug-2015  christos branches: 1.2.18;
Add ioconf entries to the pseudo-devices.
 1.1 20-Nov-2008  ad branches: 1.1.4; 1.1.6; 1.1.10; 1.1.32; 1.1.50;
Rename the accept filter modules to make module name match filter name.
 1.1.50.1 22-Sep-2015  skrll Sync with HEAD
 1.1.32.1 03-Dec-2017  jdolecek update from HEAD
 1.1.10.2 04-May-2009  yamt sync with head.
 1.1.10.1 20-Nov-2008  yamt file Makefile was added on branch yamt-nfs-mp on 2009-05-04 08:14:06 +0000
 1.1.6.2 19-Jan-2009  skrll Sync with HEAD.
 1.1.6.1 20-Nov-2008  skrll file Makefile was added on branch nick-hppapmap on 2009-01-19 13:20:07 +0000
 1.1.4.2 17-Jan-2009  mjf Sync with HEAD.
 1.1.4.1 20-Nov-2008  mjf file Makefile was added on branch mjf-devfs2 on 2009-01-17 13:29:28 +0000
 1.2.18.1 10-Jun-2019  christos Sync with HEAD
 1.1 20-Aug-2015  christos branches: 1.1.2; 1.1.18;
Add ioconf entries to the pseudo-devices.
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 20-Aug-2015  jdolecek file accf_http.ioconf was added on branch tls-maxphys on 2017-12-03 11:38:48 +0000
 1.1.2.2 22-Sep-2015  skrll Sync with HEAD
 1.1.2.1 20-Aug-2015  skrll file accf_http.ioconf was added on branch nick-nhusb on 2015-09-22 12:06:08 +0000
 1.4 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.3 16-Feb-2011  jruoho branches: 1.3.56;
Use ioconf for the module declarations.
 1.2 25-Oct-2010  jruoho branches: 1.2.2; 1.2.4;
Bump WARNS to 4.
 1.1 28-Feb-2010  jruoho branches: 1.1.2; 1.1.4; 1.1.6;
Add makefiles for a sample of ACPI kernel modules.
 1.1.6.3 06-Nov-2010  uebayasi Sync with HEAD.
 1.1.6.2 30-Apr-2010  uebayasi Sync with HEAD.
 1.1.6.1 28-Feb-2010  uebayasi file Makefile was added on branch uebayasi-xip on 2010-04-30 14:44:16 +0000
 1.1.4.1 05-Mar-2011  rmind sync with head
 1.1.2.2 11-Mar-2010  yamt sync with head
 1.1.2.1 28-Feb-2010  yamt file Makefile was added on branch yamt-nfs-mp on 2010-03-11 15:04:24 +0000
 1.2.4.1 17-Feb-2011  bouyer Sync with HEAD
 1.2.2.1 06-Jun-2011  jruoho Sync with HEAD.
 1.3.56.1 10-Jun-2019  christos Sync with HEAD
 1.1 16-Feb-2011  jruoho branches: 1.1.2; 1.1.4; 1.1.8;
Use ioconf for the module declarations.
 1.1.8.2 06-Jun-2011  jruoho Sync with HEAD.
 1.1.8.1 16-Feb-2011  jruoho file acpiacad.ioconf was added on branch jruoho-x86intr on 2011-06-06 09:09:44 +0000
 1.1.4.2 05-Mar-2011  rmind sync with head
 1.1.4.1 16-Feb-2011  rmind file acpiacad.ioconf was added on branch rmind-uvmplock on 2011-03-05 20:55:34 +0000
 1.1.2.2 17-Feb-2011  bouyer Sync with HEAD
 1.1.2.1 16-Feb-2011  bouyer file acpiacad.ioconf was added on branch bouyer-quota2 on 2011-02-17 12:00:45 +0000
 1.2 16-Feb-2011  jruoho Convert the ioconf files to lower case for consistency. No functional change.
 1.1 21-Mar-2010  pooka branches: 1.1.2; 1.1.4; 1.1.6; 1.1.8; 1.1.10;
Convert acpibat to use ioconf instead of homerolled config glue.

Note, config whines about things like:
files.acpi:30: attaching undefined device `apm'

I intentionally was a lazy boy and didn't include a ton of dirt to
keep the hot napalm and riot blasts in the config thread rolling ;)

tested by jruoho (thanks!)
 1.1.10.1 17-Feb-2011  bouyer Sync with HEAD
 1.1.8.1 06-Jun-2011  jruoho Sync with HEAD.
 1.1.6.2 11-Aug-2010  yamt sync with head.
 1.1.6.1 21-Mar-2010  yamt file ACPIBAT.ioconf was added on branch yamt-nfs-mp on 2010-08-11 22:54:49 +0000
 1.1.4.3 05-Mar-2011  rmind sync with head
 1.1.4.2 30-May-2010  rmind sync with head
 1.1.4.1 21-Mar-2010  rmind file ACPIBAT.ioconf was added on branch rmind-uvmplock on 2010-05-30 05:18:00 +0000
 1.1.2.2 30-Apr-2010  uebayasi Sync with HEAD.
 1.1.2.1 21-Mar-2010  uebayasi file ACPIBAT.ioconf was added on branch uebayasi-xip on 2010-04-30 14:44:16 +0000
 1.5 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.4 16-Feb-2011  jruoho branches: 1.4.56;
Convert the ioconf files to lower case for consistency. No functional change.
 1.3 25-Oct-2010  jruoho branches: 1.3.2; 1.3.4;
Bump WARNS to 4.
 1.2 21-Mar-2010  pooka branches: 1.2.2;
Convert acpibat to use ioconf instead of homerolled config glue.

Note, config whines about things like:
files.acpi:30: attaching undefined device `apm'

I intentionally was a lazy boy and didn't include a ton of dirt to
keep the hot napalm and riot blasts in the config thread rolling ;)

tested by jruoho (thanks!)
 1.1 28-Feb-2010  jruoho branches: 1.1.2; 1.1.4;
Add makefiles for a sample of ACPI kernel modules.
 1.1.4.2 05-Mar-2011  rmind sync with head
 1.1.4.1 30-May-2010  rmind sync with head
 1.1.2.3 11-Aug-2010  yamt sync with head.
 1.1.2.2 11-Mar-2010  yamt sync with head
 1.1.2.1 28-Feb-2010  yamt file Makefile was added on branch yamt-nfs-mp on 2010-03-11 15:04:24 +0000
 1.2.2.3 06-Nov-2010  uebayasi Sync with HEAD.
 1.2.2.2 30-Apr-2010  uebayasi Sync with HEAD.
 1.2.2.1 21-Mar-2010  uebayasi file Makefile was added on branch uebayasi-xip on 2010-04-30 14:44:16 +0000
 1.3.4.1 17-Feb-2011  bouyer Sync with HEAD
 1.3.2.1 06-Jun-2011  jruoho Sync with HEAD.
 1.4.56.1 10-Jun-2019  christos Sync with HEAD
 1.1 16-Feb-2011  jruoho branches: 1.1.2; 1.1.4; 1.1.8;
Convert the ioconf files to lower case for consistency. No functional change.
 1.1.8.2 06-Jun-2011  jruoho Sync with HEAD.
 1.1.8.1 16-Feb-2011  jruoho file acpibat.ioconf was added on branch jruoho-x86intr on 2011-06-06 09:09:45 +0000
 1.1.4.2 05-Mar-2011  rmind sync with head
 1.1.4.1 16-Feb-2011  rmind file acpibat.ioconf was added on branch rmind-uvmplock on 2011-03-05 20:55:34 +0000
 1.1.2.2 17-Feb-2011  bouyer Sync with HEAD
 1.1.2.1 16-Feb-2011  bouyer file acpibat.ioconf was added on branch bouyer-quota2 on 2011-02-17 12:00:45 +0000
 1.4 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.3 16-Feb-2011  jruoho branches: 1.3.56;
Use ioconf for the module declarations.
 1.2 25-Oct-2010  jruoho branches: 1.2.2; 1.2.4;
Bump WARNS to 4.
 1.1 28-Feb-2010  jruoho branches: 1.1.2; 1.1.4; 1.1.6;
Add makefiles for a sample of ACPI kernel modules.
 1.1.6.3 06-Nov-2010  uebayasi Sync with HEAD.
 1.1.6.2 30-Apr-2010  uebayasi Sync with HEAD.
 1.1.6.1 28-Feb-2010  uebayasi file Makefile was added on branch uebayasi-xip on 2010-04-30 14:44:16 +0000
 1.1.4.1 05-Mar-2011  rmind sync with head
 1.1.2.2 11-Mar-2010  yamt sync with head
 1.1.2.1 28-Feb-2010  yamt file Makefile was added on branch yamt-nfs-mp on 2010-03-11 15:04:24 +0000
 1.2.4.1 17-Feb-2011  bouyer Sync with HEAD
 1.2.2.1 06-Jun-2011  jruoho Sync with HEAD.
 1.3.56.1 10-Jun-2019  christos Sync with HEAD
 1.1 16-Feb-2011  jruoho branches: 1.1.2; 1.1.4; 1.1.8;
Use ioconf for the module declarations.
 1.1.8.2 06-Jun-2011  jruoho Sync with HEAD.
 1.1.8.1 16-Feb-2011  jruoho file acpibut.ioconf was added on branch jruoho-x86intr on 2011-06-06 09:09:45 +0000
 1.1.4.2 05-Mar-2011  rmind sync with head
 1.1.4.1 16-Feb-2011  rmind file acpibut.ioconf was added on branch rmind-uvmplock on 2011-03-05 20:55:35 +0000
 1.1.2.2 17-Feb-2011  bouyer Sync with HEAD
 1.1.2.1 16-Feb-2011  bouyer file acpibut.ioconf was added on branch bouyer-quota2 on 2011-02-17 12:00:45 +0000
 1.7 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.6 16-Feb-2011  jruoho branches: 1.6.2; 1.6.58;
Use ioconf for the module declarations.
 1.5 30-Dec-2010  jruoho branches: 1.5.2; 1.5.4;
Remove DIAGNOSTIC.
 1.4 18-Aug-2010  jruoho Add DIAGNOSTIC.
 1.3 13-Aug-2010  jruoho branches: 1.3.2;
Merge T-state a.k.a. throttling support for acpicpu(4).

Remarks:

1. Native instructions are supported only on Intel. Native support for
other x86 vendors will be investigated. By assumption, AMD and others
use the I/O based approach.

2. The existing code, INTEL_ONDEMAND_CLOCKMOD, must be disabled in
order to use acpicpu(4). Otherwise fatal MSR races may occur.
Unlike with P-states, no attempt is done to disable the existing
implementation.

3. There is no rationale to export controls to user land.

4. Throttling is an artefact from the past. T-states will not be used for
power management per se. For CPU frequency management, P-states are
preferred in all circumstances. No noticeable additional power savings
were observed in various experiments. When the system has been scaled
to the highest (i.e. lowest power) P-state, it is preferable to move
from C0 to deeper C-states than it is to actively throttle the CPU.

5. But T-states need to be implemented for passive cooling via acpitz(4).
As specified by ACPI and Intel documents, these can be used as the
last line of defence against critical thermal conditions. Support
for this will be added later.
 1.2 08-Aug-2010  jruoho branches: 1.2.2;
Merge P-state support for acpicpu(4).

Remarks:

1. All processors (x86 or not) for which the vendor has implemented
ACPI I/O access routines are supported. Native instructions are
currently supported only for Intel's "Enhanced Speedstep". Code for
"PowerNow!" (AMD) will be merged later. Native support for VIA's
"PowerSaver" will be investigated.

2. Backwards compatibility with existing userland code is maintained.
Comparable to the case with cpu_idle(9), the ACPI CPU driver
installs alternative functions for the existing sysctl(8) controls.
The "native" behavior (if any) is restored upon detachment.

3. The dynamic nature of ACPI-provided P-states needs more investigation.
The maximum frequency induced (but not forced) by the firmware may
change dynamically. Currently, the sysctl(8) controls error out with
a value larger than the dynamic maximum. The code itself does not
however yet react to the notifications from the firmware by changing
the frequencies in-place. Presumably the system administrator should
be able to choose whether to use dynamic or static frequencies.
 1.1 18-Jul-2010  jruoho Add a Makefile for ACPI CPUs.

It is safe to load and unload the whole ACPI CPU -functionality at runtime.
 1.2.2.3 09-Oct-2010  yamt sync with head
 1.2.2.2 11-Aug-2010  yamt sync with head.
 1.2.2.1 08-Aug-2010  yamt file Makefile was added on branch yamt-nfs-mp on 2010-08-11 22:54:49 +0000
 1.3.2.3 22-Oct-2010  uebayasi Sync with HEAD (-D20101022).
 1.3.2.2 17-Aug-2010  uebayasi Sync with HEAD.
 1.3.2.1 13-Aug-2010  uebayasi file Makefile was added on branch uebayasi-xip on 2010-08-17 06:47:40 +0000
 1.5.4.1 17-Feb-2011  bouyer Sync with HEAD
 1.5.2.1 06-Jun-2011  jruoho Sync with HEAD.
 1.6.58.1 10-Jun-2019  christos Sync with HEAD
 1.6.2.2 05-Mar-2011  rmind sync with head
 1.6.2.1 16-Feb-2011  rmind file Makefile was added on branch rmind-uvmplock on 2011-03-05 20:55:35 +0000
 1.2 27-Feb-2011  jruoho branches: 1.2.2; 1.2.6;
Move acpicpu(4) from "acpinodebus" to "cpufeaturebus".
 1.1 16-Feb-2011  jruoho branches: 1.1.2;
Use ioconf for the module declarations.
 1.1.2.3 05-Mar-2011  bouyer Sync with HEAD
 1.1.2.2 17-Feb-2011  bouyer Sync with HEAD
 1.1.2.1 16-Feb-2011  bouyer file acpicpu.ioconf was added on branch bouyer-quota2 on 2011-02-17 12:00:45 +0000
 1.2.6.2 06-Jun-2011  jruoho Sync with HEAD.
 1.2.6.1 27-Feb-2011  jruoho file acpicpu.ioconf was added on branch jruoho-x86intr on 2011-06-06 09:09:45 +0000
 1.2.2.2 05-Mar-2011  rmind sync with head
 1.2.2.1 27-Feb-2011  rmind file acpicpu.ioconf was added on branch rmind-uvmplock on 2011-03-05 20:55:35 +0000
 1.2 16-Feb-2011  jruoho Convert the ioconf files to lower case for consistency. No functional change.
 1.1 25-Oct-2010  jruoho branches: 1.1.2; 1.1.4; 1.1.6;
Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.
 1.1.6.1 17-Feb-2011  bouyer Sync with HEAD
 1.1.4.1 06-Jun-2011  jruoho Sync with HEAD.
 1.1.2.2 06-Nov-2010  uebayasi Sync with HEAD.
 1.1.2.1 25-Oct-2010  uebayasi file ACPIDALB.ioconf was added on branch uebayasi-xip on 2010-11-06 08:08:45 +0000
 1.3 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.2 16-Feb-2011  jruoho branches: 1.2.2; 1.2.58;
Convert the ioconf files to lower case for consistency. No functional change.
 1.1 25-Oct-2010  jruoho branches: 1.1.2; 1.1.4; 1.1.6;
Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.
 1.1.6.1 17-Feb-2011  bouyer Sync with HEAD
 1.1.4.1 06-Jun-2011  jruoho Sync with HEAD.
 1.1.2.2 06-Nov-2010  uebayasi Sync with HEAD.
 1.1.2.1 25-Oct-2010  uebayasi file Makefile was added on branch uebayasi-xip on 2010-11-06 08:08:46 +0000
 1.2.58.1 10-Jun-2019  christos Sync with HEAD
 1.2.2.2 05-Mar-2011  rmind sync with head
 1.2.2.1 16-Feb-2011  rmind file Makefile was added on branch rmind-uvmplock on 2011-03-05 20:55:35 +0000
 1.1 16-Feb-2011  jruoho branches: 1.1.2; 1.1.4; 1.1.8;
Convert the ioconf files to lower case for consistency. No functional change.
 1.1.8.2 06-Jun-2011  jruoho Sync with HEAD.
 1.1.8.1 16-Feb-2011  jruoho file acpidalb.ioconf was added on branch jruoho-x86intr on 2011-06-06 09:09:45 +0000
 1.1.4.2 05-Mar-2011  rmind sync with head
 1.1.4.1 16-Feb-2011  rmind file acpidalb.ioconf was added on branch rmind-uvmplock on 2011-03-05 20:55:35 +0000
 1.1.2.2 17-Feb-2011  bouyer Sync with HEAD
 1.1.2.1 16-Feb-2011  bouyer file acpidalb.ioconf was added on branch bouyer-quota2 on 2011-02-17 12:00:46 +0000
 1.2 16-Feb-2011  jruoho Convert the ioconf files to lower case for consistency. No functional change.
 1.1 09-Jan-2011  jruoho branches: 1.1.2; 1.1.4;
Add a dummy-driver for ACPI fans.
 1.1.4.1 17-Feb-2011  bouyer Sync with HEAD
 1.1.2.1 06-Jun-2011  jruoho Sync with HEAD.
 1.3 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.2 16-Feb-2011  jruoho branches: 1.2.2; 1.2.58;
Convert the ioconf files to lower case for consistency. No functional change.
 1.1 09-Jan-2011  jruoho branches: 1.1.2; 1.1.4;
Add a dummy-driver for ACPI fans.
 1.1.4.1 17-Feb-2011  bouyer Sync with HEAD
 1.1.2.1 06-Jun-2011  jruoho Sync with HEAD.
 1.2.58.1 10-Jun-2019  christos Sync with HEAD
 1.2.2.2 05-Mar-2011  rmind sync with head
 1.2.2.1 16-Feb-2011  rmind file Makefile was added on branch rmind-uvmplock on 2011-03-05 20:55:35 +0000
 1.1 16-Feb-2011  jruoho branches: 1.1.2; 1.1.4; 1.1.8;
Convert the ioconf files to lower case for consistency. No functional change.
 1.1.8.2 06-Jun-2011  jruoho Sync with HEAD.
 1.1.8.1 16-Feb-2011  jruoho file acpifan.ioconf was added on branch jruoho-x86intr on 2011-06-06 09:09:45 +0000
 1.1.4.2 05-Mar-2011  rmind sync with head
 1.1.4.1 16-Feb-2011  rmind file acpifan.ioconf was added on branch rmind-uvmplock on 2011-03-05 20:55:35 +0000
 1.1.2.2 17-Feb-2011  bouyer Sync with HEAD
 1.1.2.1 16-Feb-2011  bouyer file acpifan.ioconf was added on branch bouyer-quota2 on 2011-02-17 12:00:46 +0000
 1.1 21-Mar-2024  riastradh branches: 1.1.4;
acpihed(4): New driver for PNP0C33 to notify apei(4).

PNP0C33 denotes the ACPI Hardware Error Device, which exists only to
be a vector for event notifications.

PR kern/58046
 1.1.4.2 09-Oct-2024  martin Pull up following revision(s) (requested by riastradh in ticket #936):

sys/dev/acpi/apei_einjvar.h: revision 1.1
sys/dev/acpi/apei_cper.h: revision 1.2
distrib/sets/lists/debug/module.md.i386: revision 1.9
sys/dev/acpi/apei_hest.c: revision 1.1
sys/modules/apei/Makefile: revision 1.1
sys/dev/acpi/apei_hest.c: revision 1.2
distrib/sets/lists/modules/md.amd64: revision 1.101
sys/dev/acpi/apei_hest.c: revision 1.3
distrib/sets/lists/modules/md.amd64: revision 1.102
sys/modules/apei/apei.ioconf: revision 1.1
sys/dev/acpi/apei_bert.c: revision 1.1
distrib/sets/lists/man/mi: revision 1.1785
sys/dev/acpi/apei_bertvar.h: revision 1.1
sys/dev/acpi/apei.c: revision 1.1
sys/dev/acpi/apei.c: revision 1.2
sys/dev/acpi/apei.c: revision 1.3
sys/modules/Makefile: revision 1.283
sys/modules/Makefile: revision 1.284
sys/dev/acpi/apei_reg.c: revision 1.1
sys/dev/acpi/apei_hestvar.h: revision 1.1
distrib/sets/lists/debug/module.md.i386: revision 1.10
sys/dev/acpi/apei_reg.c: revision 1.2
sys/dev/acpi/apei_reg.c: revision 1.3
sys/dev/acpi/apei_reg.h: revision 1.1
sys/dev/acpi/apei_reg.h: revision 1.2
sys/dev/acpi/apei_reg.h: revision 1.3
sys/dev/acpi/acpi_hed.c: revision 1.1
sys/dev/acpi/apei_einj.c: revision 1.1
sys/dev/acpi/apeivar.h: revision 1.1
sys/dev/acpi/apei_einj.c: revision 1.2
sys/dev/acpi/apei_einj.c: revision 1.3
sys/dev/acpi/apei_einj.c: revision 1.4
sys/dev/acpi/apei_einj.c: revision 1.5
share/man/man4/Makefile: revision 1.734
sys/dev/acpi/apei_einj.c: revision 1.6
sys/dev/acpi/apei_einj.c: revision 1.7
sys/dev/acpi/files.acpi: revision 1.131
sys/dev/acpi/files.acpi: revision 1.132
sys/dev/acpi/apei_interp.c: revision 1.1
sys/dev/acpi/apei_interp.c: revision 1.2
share/man/man4/acpihed.4: revision 1.1
sys/dev/acpi/apei_mapreg.c: revision 1.1
sys/dev/acpi/apei_interp.c: revision 1.3
share/man/man4/acpihed.4: revision 1.2
distrib/sets/lists/modules/md.i386: revision 1.98
sys/dev/acpi/apei_mapreg.c: revision 1.2
sys/dev/acpi/apei_interp.h: revision 1.1
sys/dev/acpi/apei_interp.c: revision 1.4
distrib/sets/lists/modules/md.i386: revision 1.99
sys/modules/acpihed/Makefile: revision 1.1
sys/dev/acpi/apei_mapreg.c: revision 1.3
sys/dev/acpi/apei_interp.h: revision 1.2
sys/arch/amd64/conf/ALL: revision 1.185
sys/dev/acpi/apei_mapreg.h: revision 1.1
sys/dev/acpi/apei_mapreg.c: revision 1.4
sys/arch/amd64/conf/ALL: revision 1.186
sys/dev/acpi/apei_erstvar.h: revision 1.1
sys/dev/acpi/apei_erst.c: revision 1.1
sys/dev/acpi/apei_erst.c: revision 1.2
sys/dev/acpi/apei_erst.c: revision 1.3
sys/arch/i386/conf/ALL: revision 1.516
share/man/man4/apei.4: revision 1.1
sys/arch/i386/conf/ALL: revision 1.517
share/man/man4/apei.4: revision 1.2
distrib/sets/lists/debug/module.md.amd64: revision 1.15
sys/modules/acpihed/acpihed.ioconf: revision 1.1
sys/dev/acpi/apei_hed.h: revision 1.1
distrib/sets/lists/debug/module.md.amd64: revision 1.16
sys/dev/acpi/apei_cper.h: revision 1.1

(all via patch)

apei(4): New driver for ACPI Platform Error Interfaces.

For now it is wired up only in x86 ALL kernels, and built as a module
for x86 and Arm. Once it gets a little more testing on machines with
APEI, I would like to flip it on by default.
PR kern/58046

apei(4): Pacify -Wsign-compare.
Assert that the parsing made forward progress too while here.
PR kern/58046

apei(4): Tweak some comments about the APEI interpreter language.
No functional change intended.
PR kern/58046

apei(4): Fix parsing checks for TRIGGER_ERROR action table.
The TableSize is size of the header plus the body, not just the body.
PR kern/58046
apei(4): Note some TODOs for EINJ and HEST.
No functional change intended, comments only.
PR kern/58046

acpihed(4): New driver for PNP0C33 to notify apei(4).
PNP0C33 denotes the ACPI Hardware Error Device, which exists only to
be a vector for event notifications.
PR kern/58046

acpihed(4): fix name in Dt, use Ql
apei(4): Plug memory leak on teardown of instruction interpreter.
PR kern/58046
apei(4): Fix indexing of multi-unit register access.
PR kern/58046

apei(4): Fix register chunk counting.
Now it will actually read and write the registers!
Have been updating and reloading the wrong module to test this, oops.
PR kern/58046

apei(4): Allow pre-mapping I/O registers too.
PR kern/58046

apei(4): Pre-map registers when compiling interpreter.
This way we don't have to worry about mapping them in nasty contexts
where access to uvm_km_alloc may not be allowed. Paves the way to
use ERST for saving dmesg on crash.
Exception: ACPI_ERST_MOVE_DATA still needs to do AcpiOsMapMemory.
We'll need to reserve a couple pages to avoid that.
PR kern/58046

apei(4): Simplify EINJ/ERST register access now that it's pre-mapped.
PR kern/58046
apei(4): Make sure to initialize *fatalp in apei_gesb_report.
PR kern/58046

apei: fix typos in comments

apei: fix typos in comments and snprintb bitfmt

apei(4): Fix uninitialized stack access in error branch.
PR kern/58046

apei(4), acpihed(4): Wire up man pages to build.
PR kern/58046: Missing APEI (ACPI Platform Error Interface) support
 1.1.4.1 21-Mar-2024  martin file Makefile was added on branch netbsd-10 on 2024-10-09 13:00:13 +0000
 1.1 21-Mar-2024  riastradh branches: 1.1.4;
acpihed(4): New driver for PNP0C33 to notify apei(4).

PNP0C33 denotes the ACPI Hardware Error Device, which exists only to
be a vector for event notifications.

PR kern/58046
 1.1.4.2 09-Oct-2024  martin Pull up following revision(s) (requested by riastradh in ticket #936):

sys/dev/acpi/apei_einjvar.h: revision 1.1
sys/dev/acpi/apei_cper.h: revision 1.2
distrib/sets/lists/debug/module.md.i386: revision 1.9
sys/dev/acpi/apei_hest.c: revision 1.1
sys/modules/apei/Makefile: revision 1.1
sys/dev/acpi/apei_hest.c: revision 1.2
distrib/sets/lists/modules/md.amd64: revision 1.101
sys/dev/acpi/apei_hest.c: revision 1.3
distrib/sets/lists/modules/md.amd64: revision 1.102
sys/modules/apei/apei.ioconf: revision 1.1
sys/dev/acpi/apei_bert.c: revision 1.1
distrib/sets/lists/man/mi: revision 1.1785
sys/dev/acpi/apei_bertvar.h: revision 1.1
sys/dev/acpi/apei.c: revision 1.1
sys/dev/acpi/apei.c: revision 1.2
sys/dev/acpi/apei.c: revision 1.3
sys/modules/Makefile: revision 1.283
sys/modules/Makefile: revision 1.284
sys/dev/acpi/apei_reg.c: revision 1.1
sys/dev/acpi/apei_hestvar.h: revision 1.1
distrib/sets/lists/debug/module.md.i386: revision 1.10
sys/dev/acpi/apei_reg.c: revision 1.2
sys/dev/acpi/apei_reg.c: revision 1.3
sys/dev/acpi/apei_reg.h: revision 1.1
sys/dev/acpi/apei_reg.h: revision 1.2
sys/dev/acpi/apei_reg.h: revision 1.3
sys/dev/acpi/acpi_hed.c: revision 1.1
sys/dev/acpi/apei_einj.c: revision 1.1
sys/dev/acpi/apeivar.h: revision 1.1
sys/dev/acpi/apei_einj.c: revision 1.2
sys/dev/acpi/apei_einj.c: revision 1.3
sys/dev/acpi/apei_einj.c: revision 1.4
sys/dev/acpi/apei_einj.c: revision 1.5
share/man/man4/Makefile: revision 1.734
sys/dev/acpi/apei_einj.c: revision 1.6
sys/dev/acpi/apei_einj.c: revision 1.7
sys/dev/acpi/files.acpi: revision 1.131
sys/dev/acpi/files.acpi: revision 1.132
sys/dev/acpi/apei_interp.c: revision 1.1
sys/dev/acpi/apei_interp.c: revision 1.2
share/man/man4/acpihed.4: revision 1.1
sys/dev/acpi/apei_mapreg.c: revision 1.1
sys/dev/acpi/apei_interp.c: revision 1.3
share/man/man4/acpihed.4: revision 1.2
distrib/sets/lists/modules/md.i386: revision 1.98
sys/dev/acpi/apei_mapreg.c: revision 1.2
sys/dev/acpi/apei_interp.h: revision 1.1
sys/dev/acpi/apei_interp.c: revision 1.4
distrib/sets/lists/modules/md.i386: revision 1.99
sys/modules/acpihed/Makefile: revision 1.1
sys/dev/acpi/apei_mapreg.c: revision 1.3
sys/dev/acpi/apei_interp.h: revision 1.2
sys/arch/amd64/conf/ALL: revision 1.185
sys/dev/acpi/apei_mapreg.h: revision 1.1
sys/dev/acpi/apei_mapreg.c: revision 1.4
sys/arch/amd64/conf/ALL: revision 1.186
sys/dev/acpi/apei_erstvar.h: revision 1.1
sys/dev/acpi/apei_erst.c: revision 1.1
sys/dev/acpi/apei_erst.c: revision 1.2
sys/dev/acpi/apei_erst.c: revision 1.3
sys/arch/i386/conf/ALL: revision 1.516
share/man/man4/apei.4: revision 1.1
sys/arch/i386/conf/ALL: revision 1.517
share/man/man4/apei.4: revision 1.2
distrib/sets/lists/debug/module.md.amd64: revision 1.15
sys/modules/acpihed/acpihed.ioconf: revision 1.1
sys/dev/acpi/apei_hed.h: revision 1.1
distrib/sets/lists/debug/module.md.amd64: revision 1.16
sys/dev/acpi/apei_cper.h: revision 1.1

(all via patch)

apei(4): New driver for ACPI Platform Error Interfaces.

For now it is wired up only in x86 ALL kernels, and built as a module
for x86 and Arm. Once it gets a little more testing on machines with
APEI, I would like to flip it on by default.
PR kern/58046

apei(4): Pacify -Wsign-compare.
Assert that the parsing made forward progress too while here.
PR kern/58046

apei(4): Tweak some comments about the APEI interpreter language.
No functional change intended.
PR kern/58046

apei(4): Fix parsing checks for TRIGGER_ERROR action table.
The TableSize is size of the header plus the body, not just the body.
PR kern/58046
apei(4): Note some TODOs for EINJ and HEST.
No functional change intended, comments only.
PR kern/58046

acpihed(4): New driver for PNP0C33 to notify apei(4).
PNP0C33 denotes the ACPI Hardware Error Device, which exists only to
be a vector for event notifications.
PR kern/58046

acpihed(4): fix name in Dt, use Ql
apei(4): Plug memory leak on teardown of instruction interpreter.
PR kern/58046
apei(4): Fix indexing of multi-unit register access.
PR kern/58046

apei(4): Fix register chunk counting.
Now it will actually read and write the registers!
Have been updating and reloading the wrong module to test this, oops.
PR kern/58046

apei(4): Allow pre-mapping I/O registers too.
PR kern/58046

apei(4): Pre-map registers when compiling interpreter.
This way we don't have to worry about mapping them in nasty contexts
where access to uvm_km_alloc may not be allowed. Paves the way to
use ERST for saving dmesg on crash.
Exception: ACPI_ERST_MOVE_DATA still needs to do AcpiOsMapMemory.
We'll need to reserve a couple pages to avoid that.
PR kern/58046

apei(4): Simplify EINJ/ERST register access now that it's pre-mapped.
PR kern/58046
apei(4): Make sure to initialize *fatalp in apei_gesb_report.
PR kern/58046

apei: fix typos in comments

apei: fix typos in comments and snprintb bitfmt

apei(4): Fix uninitialized stack access in error branch.
PR kern/58046

apei(4), acpihed(4): Wire up man pages to build.
PR kern/58046: Missing APEI (ACPI Platform Error Interface) support
 1.1.4.1 21-Mar-2024  martin file acpihed.ioconf was added on branch netbsd-10 on 2024-10-09 13:00:13 +0000
 1.4 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.3 16-Feb-2011  jruoho branches: 1.3.56;
Use ioconf for the module declarations.
 1.2 25-Oct-2010  jruoho branches: 1.2.2; 1.2.4;
Bump WARNS to 4.
 1.1 28-Feb-2010  jruoho branches: 1.1.2; 1.1.4; 1.1.6;
Add makefiles for a sample of ACPI kernel modules.
 1.1.6.3 06-Nov-2010  uebayasi Sync with HEAD.
 1.1.6.2 30-Apr-2010  uebayasi Sync with HEAD.
 1.1.6.1 28-Feb-2010  uebayasi file Makefile was added on branch uebayasi-xip on 2010-04-30 14:44:16 +0000
 1.1.4.1 05-Mar-2011  rmind sync with head
 1.1.2.2 11-Mar-2010  yamt sync with head
 1.1.2.1 28-Feb-2010  yamt file Makefile was added on branch yamt-nfs-mp on 2010-03-11 15:04:24 +0000
 1.2.4.1 17-Feb-2011  bouyer Sync with HEAD
 1.2.2.1 06-Jun-2011  jruoho Sync with HEAD.
 1.3.56.1 10-Jun-2019  christos Sync with HEAD
 1.1 16-Feb-2011  jruoho branches: 1.1.2; 1.1.4; 1.1.8;
Use ioconf for the module declarations.
 1.1.8.2 06-Jun-2011  jruoho Sync with HEAD.
 1.1.8.1 16-Feb-2011  jruoho file acpilid.ioconf was added on branch jruoho-x86intr on 2011-06-06 09:09:45 +0000
 1.1.4.2 05-Mar-2011  rmind sync with head
 1.1.4.1 16-Feb-2011  rmind file acpilid.ioconf was added on branch rmind-uvmplock on 2011-03-05 20:55:36 +0000
 1.1.2.2 17-Feb-2011  bouyer Sync with HEAD
 1.1.2.1 16-Feb-2011  bouyer file acpilid.ioconf was added on branch bouyer-quota2 on 2011-02-17 12:00:46 +0000
 1.2 16-Feb-2011  jruoho Convert the ioconf files to lower case for consistency. No functional change.
 1.1 05-Jan-2011  jruoho branches: 1.1.2; 1.1.4;
Add build files for acpipmtr(4) module.
 1.1.4.1 17-Feb-2011  bouyer Sync with HEAD
 1.1.2.1 06-Jun-2011  jruoho Sync with HEAD.
 1.3 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.2 16-Feb-2011  jruoho branches: 1.2.2; 1.2.58;
Convert the ioconf files to lower case for consistency. No functional change.
 1.1 05-Jan-2011  jruoho branches: 1.1.2; 1.1.4;
Add build files for acpipmtr(4) module.
 1.1.4.1 17-Feb-2011  bouyer Sync with HEAD
 1.1.2.1 06-Jun-2011  jruoho Sync with HEAD.
 1.2.58.1 10-Jun-2019  christos Sync with HEAD
 1.2.2.2 05-Mar-2011  rmind sync with head
 1.2.2.1 16-Feb-2011  rmind file Makefile was added on branch rmind-uvmplock on 2011-03-05 20:55:36 +0000
 1.1 16-Feb-2011  jruoho branches: 1.1.2; 1.1.4; 1.1.8;
Convert the ioconf files to lower case for consistency. No functional change.
 1.1.8.2 06-Jun-2011  jruoho Sync with HEAD.
 1.1.8.1 16-Feb-2011  jruoho file acpipmtr.ioconf was added on branch jruoho-x86intr on 2011-06-06 09:09:45 +0000
 1.1.4.2 05-Mar-2011  rmind sync with head
 1.1.4.1 16-Feb-2011  rmind file acpipmtr.ioconf was added on branch rmind-uvmplock on 2011-03-05 20:55:36 +0000
 1.1.2.2 17-Feb-2011  bouyer Sync with HEAD
 1.1.2.1 16-Feb-2011  bouyer file acpipmtr.ioconf was added on branch bouyer-quota2 on 2011-02-17 12:00:46 +0000
 1.2 16-Feb-2011  jruoho Convert the ioconf files to lower case for consistency. No functional change.
 1.1 25-Oct-2010  jruoho branches: 1.1.2; 1.1.4; 1.1.6;
Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.
 1.1.6.1 17-Feb-2011  bouyer Sync with HEAD
 1.1.4.1 06-Jun-2011  jruoho Sync with HEAD.
 1.1.2.2 06-Nov-2010  uebayasi Sync with HEAD.
 1.1.2.1 25-Oct-2010  uebayasi file ACPITZ.ioconf was added on branch uebayasi-xip on 2010-11-06 08:08:46 +0000
 1.4 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.3 16-Feb-2011  jruoho branches: 1.3.2; 1.3.58;
Convert the ioconf files to lower case for consistency. No functional change.
 1.2 26-Oct-2010  jruoho branches: 1.2.2; 1.2.4; 1.2.6;
Bump WARNS to 4.
 1.1 25-Oct-2010  jruoho Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.
 1.2.6.1 17-Feb-2011  bouyer Sync with HEAD
 1.2.4.1 06-Jun-2011  jruoho Sync with HEAD.
 1.2.2.2 06-Nov-2010  uebayasi Sync with HEAD.
 1.2.2.1 26-Oct-2010  uebayasi file Makefile was added on branch uebayasi-xip on 2010-11-06 08:08:46 +0000
 1.3.58.1 10-Jun-2019  christos Sync with HEAD
 1.3.2.2 05-Mar-2011  rmind sync with head
 1.3.2.1 16-Feb-2011  rmind file Makefile was added on branch rmind-uvmplock on 2011-03-05 20:55:36 +0000
 1.1 16-Feb-2011  jruoho branches: 1.1.2; 1.1.4; 1.1.8;
Convert the ioconf files to lower case for consistency. No functional change.
 1.1.8.2 06-Jun-2011  jruoho Sync with HEAD.
 1.1.8.1 16-Feb-2011  jruoho file acpitz.ioconf was added on branch jruoho-x86intr on 2011-06-06 09:09:45 +0000
 1.1.4.2 05-Mar-2011  rmind sync with head
 1.1.4.1 16-Feb-2011  rmind file acpitz.ioconf was added on branch rmind-uvmplock on 2011-03-05 20:55:36 +0000
 1.1.2.2 17-Feb-2011  bouyer Sync with HEAD
 1.1.2.1 16-Feb-2011  bouyer file acpitz.ioconf was added on branch bouyer-quota2 on 2011-02-17 12:00:46 +0000
 1.2 16-Feb-2011  jruoho Convert the ioconf files to lower case for consistency. No functional change.
 1.1 11-Aug-2010  pooka branches: 1.1.2; 1.1.4; 1.1.6; 1.1.8;
Define ioconf to create locators.h, which is now required by acpiverbose.
 1.1.8.1 17-Feb-2011  bouyer Sync with HEAD
 1.1.6.1 06-Jun-2011  jruoho Sync with HEAD.
 1.1.4.2 09-Oct-2010  yamt sync with head
 1.1.4.1 11-Aug-2010  yamt file ACPIVERBOSE.ioconf was added on branch yamt-nfs-mp on 2010-10-09 03:32:35 +0000
 1.1.2.2 17-Aug-2010  uebayasi Sync with HEAD.
 1.1.2.1 11-Aug-2010  uebayasi file ACPIVERBOSE.ioconf was added on branch uebayasi-xip on 2010-08-17 06:47:40 +0000
 1.5 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.4 16-Feb-2011  jruoho branches: 1.4.56;
Convert the ioconf files to lower case for consistency. No functional change.
 1.3 11-Aug-2010  pooka branches: 1.3.2; 1.3.4; 1.3.6; 1.3.8;
Define ioconf to create locators.h, which is now required by acpiverbose.
 1.2 06-Aug-2010  jruoho Remove the acpiwmi(4) dump from the ACPIVERBOSE module. Instead of this
complex solution, just use aprint_debug(9) in the driver.
 1.1 31-May-2010  pgoyette branches: 1.1.2;
Extract ACPIVERBOSE into a kernel module. The module can be builtin
by defining 'options ACPIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

ACPIVERBOSE also includes code to dump acpi/wmi data.
 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 31-May-2010  rmind file Makefile was added on branch rmind-uvmplock on 2010-07-03 01:19:58 +0000
 1.3.8.1 17-Feb-2011  bouyer Sync with HEAD
 1.3.6.1 06-Jun-2011  jruoho Sync with HEAD.
 1.3.4.2 17-Aug-2010  uebayasi Sync with HEAD.
 1.3.4.1 11-Aug-2010  uebayasi file Makefile was added on branch uebayasi-xip on 2010-08-17 06:47:40 +0000
 1.3.2.3 09-Oct-2010  yamt sync with head
 1.3.2.2 11-Aug-2010  yamt sync with head.
 1.3.2.1 11-Aug-2010  yamt file Makefile was added on branch yamt-nfs-mp on 2010-08-11 22:54:49 +0000
 1.4.56.1 10-Jun-2019  christos Sync with HEAD
 1.1 16-Feb-2011  jruoho branches: 1.1.2; 1.1.4; 1.1.8;
Convert the ioconf files to lower case for consistency. No functional change.
 1.1.8.2 06-Jun-2011  jruoho Sync with HEAD.
 1.1.8.1 16-Feb-2011  jruoho file acpiverbose.ioconf was added on branch jruoho-x86intr on 2011-06-06 09:09:46 +0000
 1.1.4.2 05-Mar-2011  rmind sync with head
 1.1.4.1 16-Feb-2011  rmind file acpiverbose.ioconf was added on branch rmind-uvmplock on 2011-03-05 20:55:36 +0000
 1.1.2.2 17-Feb-2011  bouyer Sync with HEAD
 1.1.2.1 16-Feb-2011  bouyer file acpiverbose.ioconf was added on branch bouyer-quota2 on 2011-02-17 12:00:47 +0000
 1.1 01-Jun-2022  mrg add now required pci.h / NPCI. (the ia64 version builds with PCI
enabled, but i guess it won't be usable.)

XXX: enable this on evbarm*? it is x86/ia64 only currently.
 1.2 16-Feb-2011  jruoho Convert the ioconf files to lower case for consistency. No functional change.
 1.1 25-Oct-2010  jruoho branches: 1.1.2; 1.1.4; 1.1.6;
Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.
 1.1.6.1 17-Feb-2011  bouyer Sync with HEAD
 1.1.4.1 06-Jun-2011  jruoho Sync with HEAD.
 1.1.2.2 06-Nov-2010  uebayasi Sync with HEAD.
 1.1.2.1 25-Oct-2010  uebayasi file ACPIVGA.ioconf was added on branch uebayasi-xip on 2010-11-06 08:08:46 +0000
 1.3 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.2 16-Feb-2011  jruoho branches: 1.2.2; 1.2.58;
Convert the ioconf files to lower case for consistency. No functional change.
 1.1 25-Oct-2010  jruoho branches: 1.1.2; 1.1.4; 1.1.6;
Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.
 1.1.6.1 17-Feb-2011  bouyer Sync with HEAD
 1.1.4.1 06-Jun-2011  jruoho Sync with HEAD.
 1.1.2.2 06-Nov-2010  uebayasi Sync with HEAD.
 1.1.2.1 25-Oct-2010  uebayasi file Makefile was added on branch uebayasi-xip on 2010-11-06 08:08:46 +0000
 1.2.58.1 10-Jun-2019  christos Sync with HEAD
 1.2.2.2 05-Mar-2011  rmind sync with head
 1.2.2.1 16-Feb-2011  rmind file Makefile was added on branch rmind-uvmplock on 2011-03-05 20:55:36 +0000
 1.1 16-Feb-2011  jruoho branches: 1.1.2; 1.1.4; 1.1.8;
Convert the ioconf files to lower case for consistency. No functional change.
 1.1.8.2 06-Jun-2011  jruoho Sync with HEAD.
 1.1.8.1 16-Feb-2011  jruoho file acpivga.ioconf was added on branch jruoho-x86intr on 2011-06-06 09:09:46 +0000
 1.1.4.2 05-Mar-2011  rmind sync with head
 1.1.4.1 16-Feb-2011  rmind file acpivga.ioconf was added on branch rmind-uvmplock on 2011-03-05 20:55:36 +0000
 1.1.2.2 17-Feb-2011  bouyer Sync with HEAD
 1.1.2.1 16-Feb-2011  bouyer file acpivga.ioconf was added on branch bouyer-quota2 on 2011-02-17 12:00:47 +0000
 1.1 26-Aug-2024  riastradh branches: 1.1.2;
acpivmgenid(4): New driver for virtual machine generation ID.

Added to amd64/ALL and i386/ALL kernel configurations, and made
available as a loadable module acpivmgenid.kmod on x86, for now.

TBD: Add to all ACPI-supporting GENERIC kernels.

PR kern/58632: getentropy(2) and arc4random(3) do not reseed on VM
fork
 1.1.2.2 09-Oct-2024  martin Pull up following revision(s) (requested by riastradh in ticket #939):

distrib/sets/lists/debug/module.md.amd64: revision 1.18
sys/modules/Makefile: revision 1.292
lib/libc/gen/arc4random.c: revision 1.34
lib/libc/gen/arc4random.c: revision 1.35
lib/libc/gen/arc4random.c: revision 1.36
lib/libc/gen/arc4random.c: revision 1.37
sys/kern/kern_entropy.c: revision 1.70
lib/libc/gen/arc4random.c: revision 1.38
sys/kern/kern_entropy.c: revision 1.71
lib/libc/gen/getentropy.3: revision 1.8
distrib/sets/lists/modules/md.amd64: revision 1.103
share/man/man4/rnd.4: revision 1.42
share/man/man4/rnd.4: revision 1.44
lib/libc/include/arc4random.h: revision 1.1
distrib/sets/lists/man/mi: revision 1.1786
sys/arch/i386/conf/GENERIC: revision 1.1258
sys/modules/acpivmgenid/acpivmgenid.ioconf: revision 1.1
sys/arch/amd64/conf/ALL: revision 1.190
distrib/sets/lists/debug/mi: revision 1.446
sys/arch/i386/conf/ALL: revision 1.521
lib/libc/gen/Makefile.inc: revision 1.219
distrib/sets/lists/debug/module.md.i386: revision 1.12
sys/dev/acpi/acpi_vmgenid.c: revision 1.1
sys/dev/acpi/acpi_vmgenid.c: revision 1.2
lib/libc/include/reentrant.h: revision 1.22
sys/arch/evbarm/conf/GENERIC64: revision 1.219
share/man/man4/Makefile: revision 1.735
distrib/sets/lists/modules/md.i386: revision 1.100
distrib/sets/lists/tests/mi: revision 1.1334
lib/libc/gen/arc4random.3: revision 1.22
sys/dev/acpi/files.acpi: revision 1.133
lib/libc/gen/arc4random.3: revision 1.23
tests/lib/libc/gen/t_arc4random.c: revision 1.1
sys/sys/entropy.h: revision 1.6
sys/arch/amd64/conf/GENERIC: revision 1.614
sys/modules/acpivmgenid/Makefile: revision 1.1
share/man/man4/acpivmgenid.4: revision 1.1
lib/libc/gen/Makefile.inc: revision 1.220
tests/lib/libc/gen/Makefile: revision 1.56
share/man/man4/acpivmgenid.4: revision 1.2
share/man/man4/acpivmgenid.4: revision 1.3

(all via patch)

Catch up with all the lint warnings since exit on warning was disabled.

Disable 'missing header declaration' and 'nested extern' warnings for now.
acpivmgenid(4): New driver for virtual machine generation ID.

Added to amd64/ALL and i386/ALL kernel configurations, and made
available as a loadable module acpivmgenid.kmod on x86, for now.
TBD: Add to all ACPI-supporting GENERIC kernels.
PR kern/58632: getentropy(2) and arc4random(3) do not reseed on VM
fork

entropy(9): Factor out subroutines to reset and gather entropy.
`Reset' means we keep the data in the pool, but assume it had zero
entropy. `Gather' means we request samples from all on-demand
sources and wait for the synchronous ones to complete.

No functional change intended, other than to expose new symbols --
just preparation to expose these to acpivmgenid(4), so it can use
these when the VM host notifies us that we, the guest, have been
cloned.
PR kern/58632: getentropy(2) and arc4random(3) do not reseed on VM
fork

acpivmgenid(4): Reset and gather entropy on VM clone notification.
PR kern/58632: getentropy(2) and arc4random(3) do not reseed on VM
fork

arc4random(3): Reseed if system entropy epoch changes.
This can happen, for example, if the system is a VM instance, and the
VM is cloned.

This incurs the cost of a system call on every arc4random call, which
is unfortunate, but
1. we don't currently have a (machine-independent) mechanism for
exposing a read-only page to userland shared by the kernel to
enable a cheaper access path to the entropy epoch; and
2. the algorithm here -- a simple application of ChaCha -- is likely
also a bottleneck and could be much cheaper by
(a) using sys/crypto/chacha for machine-dependent vectorized
ChaCha code, and
(b) filling a buffer (somewhere between a cipher block and a page)
in a batch at a time, instead of running ChaCha to generate
only 32 bytes at a time.
So although this might be a performance hit, the security benefit is
worthwhile and we have a clear path to do better than reversing the
performance hit later.
PR kern/58632: getentropy(2) and arc4random(3) do not reseed on VM
fork

acpivmgenid(4): Nix BUGS that have been squashed.
Reference kern.entropy.epoch for the remaining bug (which is a
performance issue, not a security issue).
PR kern/58632: getentropy(2) and arc4random(3) do not reseed on VM
fork

entropy(9): Allow unprivileged reads of sysctl kern.entropy.epoch.

Applications need this in order to know when to reseed. (We should
also expose it through a page shared read-only with userland for
cheaper access, but until we do, let's let applications get at it
through sysctl.)
PR kern/58632: getentropy(2) and arc4random(3) do not reseed on VM
fork

arc4random.c: Fix test program.

This isn't wired up anywhere, but let's reduce the bitrot. It was
helpful in reminding me that kern.entropy.epoch was, for reasons I
can't remember, restricted to privileged access.
PR kern/58632: getentropy(2) and arc4random(3) do not reseed on VM
fork

amd64, evbarm, i386: Add acpivmgenid(4) to GENERIC.
PR kern/58632: getentropy(2) and arc4random(3) do not reseed on VM
fork

rnd(4): Document kern.entropy.epoch is unprivileged and elaborate.
Cross-reference acpivmgenid(4).
PR kern/58632: getentropy(2) and arc4random(3) do not reseed on VM
fork

arc4random(3): Note that arc4random respects kern.entropy.epoch.
PR kern/58632: getentropy(2) and arc4random(3) do not reseed on VM
fork
Add debug info for new acpivmgenid module

arc4random(3): Add automatic tests.

This verifies that:
- arc4random zeroes its state and reseeds itself on fork
- arc4random reseeds itself on entropy consolidation (e.g., VM clone)
- arc4random falls back to global state if it can't allocate local
state because address space limits cause mmap to fail

NOTE: This adds a new libc symbol __arc4random_global, but it's in
the reserved namespace and only used by t_arc4random, so no libc
minor bump.
PR kern/58632: getentropy(2) and arc4random(3) do not reseed on VM
fork

getentropy(3): Note intent to reseed on VM clone, and caveats.

Tidy markup and pacify some mandoc -Tlint complaints while here.
PR kern/58632: getentropy(2) and arc4random(3) do not reseed on VM
fork

Bump dates on man pages recently updated to mention VM clones.
PR kern/58632: getentropy(2) and arc4random(3) do not reseed on VM
fork

arc4random(3): Pacify some of lint's complaints.
PR kern/58632: getentropy(2) and arc4random(3) do not reseed on VM
fork

arc4random: suppress another lint warning
 1.1.2.1 26-Aug-2024  martin file Makefile was added on branch netbsd-10 on 2024-10-09 13:25:12 +0000
 1.1 26-Aug-2024  riastradh branches: 1.1.2;
acpivmgenid(4): New driver for virtual machine generation ID.

Added to amd64/ALL and i386/ALL kernel configurations, and made
available as a loadable module acpivmgenid.kmod on x86, for now.

TBD: Add to all ACPI-supporting GENERIC kernels.

PR kern/58632: getentropy(2) and arc4random(3) do not reseed on VM
fork
 1.1.2.2 09-Oct-2024  martin Pull up following revision(s) (requested by riastradh in ticket #939):

distrib/sets/lists/debug/module.md.amd64: revision 1.18
sys/modules/Makefile: revision 1.292
lib/libc/gen/arc4random.c: revision 1.34
lib/libc/gen/arc4random.c: revision 1.35
lib/libc/gen/arc4random.c: revision 1.36
lib/libc/gen/arc4random.c: revision 1.37
sys/kern/kern_entropy.c: revision 1.70
lib/libc/gen/arc4random.c: revision 1.38
sys/kern/kern_entropy.c: revision 1.71
lib/libc/gen/getentropy.3: revision 1.8
distrib/sets/lists/modules/md.amd64: revision 1.103
share/man/man4/rnd.4: revision 1.42
share/man/man4/rnd.4: revision 1.44
lib/libc/include/arc4random.h: revision 1.1
distrib/sets/lists/man/mi: revision 1.1786
sys/arch/i386/conf/GENERIC: revision 1.1258
sys/modules/acpivmgenid/acpivmgenid.ioconf: revision 1.1
sys/arch/amd64/conf/ALL: revision 1.190
distrib/sets/lists/debug/mi: revision 1.446
sys/arch/i386/conf/ALL: revision 1.521
lib/libc/gen/Makefile.inc: revision 1.219
distrib/sets/lists/debug/module.md.i386: revision 1.12
sys/dev/acpi/acpi_vmgenid.c: revision 1.1
sys/dev/acpi/acpi_vmgenid.c: revision 1.2
lib/libc/include/reentrant.h: revision 1.22
sys/arch/evbarm/conf/GENERIC64: revision 1.219
share/man/man4/Makefile: revision 1.735
distrib/sets/lists/modules/md.i386: revision 1.100
distrib/sets/lists/tests/mi: revision 1.1334
lib/libc/gen/arc4random.3: revision 1.22
sys/dev/acpi/files.acpi: revision 1.133
lib/libc/gen/arc4random.3: revision 1.23
tests/lib/libc/gen/t_arc4random.c: revision 1.1
sys/sys/entropy.h: revision 1.6
sys/arch/amd64/conf/GENERIC: revision 1.614
sys/modules/acpivmgenid/Makefile: revision 1.1
share/man/man4/acpivmgenid.4: revision 1.1
lib/libc/gen/Makefile.inc: revision 1.220
tests/lib/libc/gen/Makefile: revision 1.56
share/man/man4/acpivmgenid.4: revision 1.2
share/man/man4/acpivmgenid.4: revision 1.3

(all via patch)

Catch up with all the lint warnings since exit on warning was disabled.

Disable 'missing header declaration' and 'nested extern' warnings for now.
acpivmgenid(4): New driver for virtual machine generation ID.

Added to amd64/ALL and i386/ALL kernel configurations, and made
available as a loadable module acpivmgenid.kmod on x86, for now.
TBD: Add to all ACPI-supporting GENERIC kernels.
PR kern/58632: getentropy(2) and arc4random(3) do not reseed on VM
fork

entropy(9): Factor out subroutines to reset and gather entropy.
`Reset' means we keep the data in the pool, but assume it had zero
entropy. `Gather' means we request samples from all on-demand
sources and wait for the synchronous ones to complete.

No functional change intended, other than to expose new symbols --
just preparation to expose these to acpivmgenid(4), so it can use
these when the VM host notifies us that we, the guest, have been
cloned.
PR kern/58632: getentropy(2) and arc4random(3) do not reseed on VM
fork

acpivmgenid(4): Reset and gather entropy on VM clone notification.
PR kern/58632: getentropy(2) and arc4random(3) do not reseed on VM
fork

arc4random(3): Reseed if system entropy epoch changes.
This can happen, for example, if the system is a VM instance, and the
VM is cloned.

This incurs the cost of a system call on every arc4random call, which
is unfortunate, but
1. we don't currently have a (machine-independent) mechanism for
exposing a read-only page to userland shared by the kernel to
enable a cheaper access path to the entropy epoch; and
2. the algorithm here -- a simple application of ChaCha -- is likely
also a bottleneck and could be much cheaper by
(a) using sys/crypto/chacha for machine-dependent vectorized
ChaCha code, and
(b) filling a buffer (somewhere between a cipher block and a page)
in a batch at a time, instead of running ChaCha to generate
only 32 bytes at a time.
So although this might be a performance hit, the security benefit is
worthwhile and we have a clear path to do better than reversing the
performance hit later.
PR kern/58632: getentropy(2) and arc4random(3) do not reseed on VM
fork

acpivmgenid(4): Nix BUGS that have been squashed.
Reference kern.entropy.epoch for the remaining bug (which is a
performance issue, not a security issue).
PR kern/58632: getentropy(2) and arc4random(3) do not reseed on VM
fork

entropy(9): Allow unprivileged reads of sysctl kern.entropy.epoch.

Applications need this in order to know when to reseed. (We should
also expose it through a page shared read-only with userland for
cheaper access, but until we do, let's let applications get at it
through sysctl.)
PR kern/58632: getentropy(2) and arc4random(3) do not reseed on VM
fork

arc4random.c: Fix test program.

This isn't wired up anywhere, but let's reduce the bitrot. It was
helpful in reminding me that kern.entropy.epoch was, for reasons I
can't remember, restricted to privileged access.
PR kern/58632: getentropy(2) and arc4random(3) do not reseed on VM
fork

amd64, evbarm, i386: Add acpivmgenid(4) to GENERIC.
PR kern/58632: getentropy(2) and arc4random(3) do not reseed on VM
fork

rnd(4): Document kern.entropy.epoch is unprivileged and elaborate.
Cross-reference acpivmgenid(4).
PR kern/58632: getentropy(2) and arc4random(3) do not reseed on VM
fork

arc4random(3): Note that arc4random respects kern.entropy.epoch.
PR kern/58632: getentropy(2) and arc4random(3) do not reseed on VM
fork
Add debug info for new acpivmgenid module

arc4random(3): Add automatic tests.

This verifies that:
- arc4random zeroes its state and reseeds itself on fork
- arc4random reseeds itself on entropy consolidation (e.g., VM clone)
- arc4random falls back to global state if it can't allocate local
state because address space limits cause mmap to fail

NOTE: This adds a new libc symbol __arc4random_global, but it's in
the reserved namespace and only used by t_arc4random, so no libc
minor bump.
PR kern/58632: getentropy(2) and arc4random(3) do not reseed on VM
fork

getentropy(3): Note intent to reseed on VM clone, and caveats.

Tidy markup and pacify some mandoc -Tlint complaints while here.
PR kern/58632: getentropy(2) and arc4random(3) do not reseed on VM
fork

Bump dates on man pages recently updated to mention VM clones.
PR kern/58632: getentropy(2) and arc4random(3) do not reseed on VM
fork

arc4random(3): Pacify some of lint's complaints.
PR kern/58632: getentropy(2) and arc4random(3) do not reseed on VM
fork

arc4random: suppress another lint warning
 1.1.2.1 26-Aug-2024  martin file acpivmgenid.ioconf was added on branch netbsd-10 on 2024-10-09 13:25:12 +0000
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 17-Jan-2011  jmcneill branches: 1.1.4; 1.1.8; 1.1.62;
add acpiwdrt module glue
 1.1.62.1 10-Jun-2019  christos Sync with HEAD
 1.1.8.2 06-Jun-2011  jruoho Sync with HEAD.
 1.1.8.1 17-Jan-2011  jruoho file Makefile was added on branch jruoho-x86intr on 2011-06-06 09:09:46 +0000
 1.1.4.2 05-Mar-2011  rmind sync with head
 1.1.4.1 17-Jan-2011  rmind file Makefile was added on branch rmind-uvmplock on 2011-03-05 20:55:37 +0000
 1.1 17-Jan-2011  jmcneill branches: 1.1.4; 1.1.8;
add acpiwdrt module glue
 1.1.8.2 06-Jun-2011  jruoho Sync with HEAD.
 1.1.8.1 17-Jan-2011  jruoho file acpiwdrt.ioconf was added on branch jruoho-x86intr on 2011-06-06 09:09:46 +0000
 1.1.4.2 05-Mar-2011  rmind sync with head
 1.1.4.1 17-Jan-2011  rmind file acpiwdrt.ioconf was added on branch rmind-uvmplock on 2011-03-05 20:55:37 +0000
 1.4 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.3 16-Feb-2011  jruoho branches: 1.3.2; 1.3.58;
Convert the homegrown module declarations to use ioconf.
 1.2 25-Oct-2010  jruoho branches: 1.2.2; 1.2.4; 1.2.6;
Bump WARNS to 4.
 1.1 24-Oct-2010  jmcneill build acpiwmi as a module on x86
 1.2.6.1 17-Feb-2011  bouyer Sync with HEAD
 1.2.4.1 06-Jun-2011  jruoho Sync with HEAD.
 1.2.2.2 06-Nov-2010  uebayasi Sync with HEAD.
 1.2.2.1 25-Oct-2010  uebayasi file Makefile was added on branch uebayasi-xip on 2010-11-06 08:08:46 +0000
 1.3.58.1 10-Jun-2019  christos Sync with HEAD
 1.3.2.2 05-Mar-2011  rmind sync with head
 1.3.2.1 16-Feb-2011  rmind file Makefile was added on branch rmind-uvmplock on 2011-03-05 20:55:37 +0000
 1.1 16-Feb-2011  jruoho branches: 1.1.2; 1.1.4; 1.1.8;
Convert the homegrown module declarations to use ioconf.
 1.1.8.2 06-Jun-2011  jruoho Sync with HEAD.
 1.1.8.1 16-Feb-2011  jruoho file acpiwmi.ioconf was added on branch jruoho-x86intr on 2011-06-06 09:09:46 +0000
 1.1.4.2 05-Mar-2011  rmind sync with head
 1.1.4.1 16-Feb-2011  rmind file acpiwmi.ioconf was added on branch rmind-uvmplock on 2011-03-05 20:55:37 +0000
 1.1.2.2 17-Feb-2011  bouyer Sync with HEAD
 1.1.2.1 16-Feb-2011  bouyer file acpiwmi.ioconf was added on branch bouyer-quota2 on 2011-02-17 12:00:47 +0000
 1.1 01-Apr-2022  pgoyette Create a loaable adiantum module, and make cgd require it.

This enablees use of a loadable cgd module, rather thtan requiring
it to be built-in.

Partially resolves kern/56772
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 28-Jun-2008  rumble branches: 1.1.2; 1.1.4; 1.1.8; 1.1.20; 1.1.92;
Add of bunch of file system modules.
 1.1.92.1 10-Jun-2019  christos Sync with HEAD
 1.1.20.2 04-May-2009  yamt sync with head.
 1.1.20.1 28-Jun-2008  yamt file Makefile was added on branch yamt-nfs-mp on 2009-05-04 08:14:06 +0000
 1.1.8.2 18-Sep-2008  wrstuden Sync with wrstuden-revivesa-base-2.
 1.1.8.1 28-Jun-2008  wrstuden file Makefile was added on branch wrstuden-revivesa on 2008-09-18 04:36:58 +0000
 1.1.4.2 03-Jul-2008  simonb Sync with head.
 1.1.4.1 28-Jun-2008  simonb file Makefile was added on branch simonb-wapbl on 2008-07-03 18:38:19 +0000
 1.1.2.2 29-Jun-2008  mjf Sync with HEAD.
 1.1.2.1 28-Jun-2008  mjf file Makefile was added on branch mjf-devfs2 on 2008-06-29 09:33:16 +0000
 1.1 17-Nov-2022  brad A driver for the Aosong AHT20 temperature and humidity sensor. While
slow for an I2C sensor it is inexpensive and should work well enough
in most indoor conditions. All features of the chip are supported.
 1.1 17-Nov-2022  brad A driver for the Aosong AHT20 temperature and humidity sensor. While
slow for an I2C sensor it is inexpensive and should work well enough
in most indoor conditions. All features of the chip are supported.
 1.2 16-Feb-2011  jruoho Convert the ioconf files to lower case for consistency. No functional change.
 1.1 25-Oct-2010  jruoho branches: 1.1.2; 1.1.4; 1.1.6;
Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.
 1.1.6.1 17-Feb-2011  bouyer Sync with HEAD
 1.1.4.1 06-Jun-2011  jruoho Sync with HEAD.
 1.1.2.2 06-Nov-2010  uebayasi Sync with HEAD.
 1.1.2.1 25-Oct-2010  uebayasi file AIBS.ioconf was added on branch uebayasi-xip on 2010-11-06 08:08:47 +0000
 1.5 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.4 12-Jun-2011  jruoho branches: 1.4.54;
Rewrite the aibs(4) driver in order to support new models. Draws from the
revision 1.6 (claudio@) of the OpenBSD's equivalent driver. Tested by mrg@.
 1.3 16-Feb-2011  jruoho branches: 1.3.2; 1.3.4;
Convert the ioconf files to lower case for consistency. No functional change.
 1.2 26-Oct-2010  jruoho branches: 1.2.2; 1.2.4; 1.2.6;
Refactor slightly and bump WARNS to 4.
 1.1 25-Oct-2010  jruoho Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.
 1.2.6.1 17-Feb-2011  bouyer Sync with HEAD
 1.2.4.1 06-Jun-2011  jruoho Sync with HEAD.
 1.2.2.2 06-Nov-2010  uebayasi Sync with HEAD.
 1.2.2.1 26-Oct-2010  uebayasi file Makefile was added on branch uebayasi-xip on 2010-11-06 08:08:47 +0000
 1.3.4.1 23-Jun-2011  cherry Catchup with rmind-uvmplock merge.
 1.3.2.2 05-Mar-2011  rmind sync with head
 1.3.2.1 16-Feb-2011  rmind file Makefile was added on branch rmind-uvmplock on 2011-03-05 20:55:37 +0000
 1.4.54.1 10-Jun-2019  christos Sync with HEAD
 1.1 16-Feb-2011  jruoho branches: 1.1.2; 1.1.4; 1.1.8;
Convert the ioconf files to lower case for consistency. No functional change.
 1.1.8.2 06-Jun-2011  jruoho Sync with HEAD.
 1.1.8.1 16-Feb-2011  jruoho file aibs.ioconf was added on branch jruoho-x86intr on 2011-06-06 09:09:46 +0000
 1.1.4.2 05-Mar-2011  rmind sync with head
 1.1.4.1 16-Feb-2011  rmind file aibs.ioconf was added on branch rmind-uvmplock on 2011-03-05 20:55:37 +0000
 1.1.2.2 17-Feb-2011  bouyer Sync with HEAD
 1.1.2.1 16-Feb-2011  bouyer file aibs.ioconf was added on branch bouyer-quota2 on 2011-02-17 12:00:47 +0000
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 14-Nov-2008  ad branches: 1.1.4; 1.1.6; 1.1.10; 1.1.74;
Make POSIX AIO loadable as a module.
 1.1.74.1 10-Jun-2019  christos Sync with HEAD
 1.1.10.2 04-May-2009  yamt sync with head.
 1.1.10.1 14-Nov-2008  yamt file Makefile was added on branch yamt-nfs-mp on 2009-05-04 08:14:06 +0000
 1.1.6.2 19-Jan-2009  skrll Sync with HEAD.
 1.1.6.1 14-Nov-2008  skrll file Makefile was added on branch nick-hppapmap on 2009-01-19 13:20:07 +0000
 1.1.4.2 17-Jan-2009  mjf Sync with HEAD.
 1.1.4.1 14-Nov-2008  mjf file Makefile was added on branch mjf-devfs2 on 2009-01-17 13:29:28 +0000
 1.1 29-Dec-2017  christos PR/52848: Brad Spencer: Add module glue for AM2315 and SI70xx drivers
 1.1 29-Dec-2017  christos PR/52848: Brad Spencer: Add module glue for AM2315 and SI70xx drivers
 1.10 19-Sep-2025  mrg avoid various seemingly bogus warnings with GCC 14.

i couldn't see any real case for any of these issues. it seems like
the "maybe uninit" checker has gotten worse.

additionally, the "dangling pointer" checker also failing.
 1.9 16-Apr-2024  riastradh drm: Set CONFIG_ACPI in linux/acpi.h and make it build.

Leave a little ACPI-related functionality disabled for now, like
getting EDID out of ACPI -- needs a bit more work to make this work,
and I don't have hardware to work on that.

Should help with failures of the forms:

- unable to locate a BIOS ROM
- bios: unable to locate usable image

on various machines.
 1.8 10-Sep-2023  mrg use CC_WNO_MAYBE_UNINITIALIZED and fix the clang build.
 1.7 04-Sep-2023  mrg apply some warning disables for GCC 12.

*possibly* the one for intel_dp.c is a real bug but it seems very
difficult to be sure (i can't seem to convince myself either way.)
 1.6 14-Jul-2023  riastradh amdgpu: Define CONFIG_DRM_AMD_DC to enable display core logic.

Probably resolves a host of issues with amdgpu not detecting
displays!

Noticed by rjs@.

PR kern/57059
PR kern/57325
PR kern/57452

XXX pullup-10
 1.5 30-Jul-2022  tnn branches: 1.5.4;
COPTS -> CWARNFLAGS
 1.4 30-Jul-2022  tnn amdgpu: add some more CWARNFLAGS to appease clang

XXX backport this change to files.amdgpu
 1.3 30-Jul-2022  tnn amdgpu: don't set -mhard-float for clang

clang complains that the option has no effect and it generates hard
float instructions without the option. soft-float not really supported
on x86_64 with clang from what I can tell.
 1.2 24-Jul-2022  riastradh amdgpu: Sprinkle missing COPTS.amdgpu_float options.

For some reason x86 didn't need these but aarch64 does.
 1.1 19-Dec-2021  riastradh amdgpu: New kernel module build goo.
 1.5.4.2 04-Oct-2024  martin Pull up following revision(s) (requested by rin in ticket #928):

sys/external/bsd/drm2/dist/drm/drm_gem.c: revision 1.25
sys/external/bsd/drm2/dist/drm/radeon/radeon_ci_dpm.c: revision 1.7
sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/priv.h: revision 1.4
sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_acpi.c: revision 1.4
sys/external/bsd/drm2/dist/drm/i915/display/intel_opregion.h: revision 1.6
sys/external/bsd/drm2/dist/drm/i915/i915_drv.h: revision 1.49
sys/external/bsd/drm2/include/linux/mxm-wmi.h: revision 1.1
sys/external/bsd/drm2/dist/drm/nouveau/nvkm/subdev/pci/nouveau_nvkm_subdev_pci_pcie.c: revision 1.4
sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_base.c: revision 1.13
sys/external/bsd/common/include/linux/bitops.h: revision 1.17
sys/external/bsd/drm2/nouveau/files.nouveau: revision 1.40
sys/external/bsd/drm2/linux/linux_pci.c: revision 1.30
sys/external/bsd/drm2/dist/drm/radeon/radeon_drv.h: revision 1.5
sys/external/bsd/drm2/dist/drm/nouveau/nvkm/subdev/pci/nouveau_nvkm_subdev_pci_pcie.c: revision 1.5
sys/external/bsd/drm2/dist/drm/nouveau/nvkm/subdev/mxm/nouveau_nvkm_subdev_mxm_base.c: revision 1.5
sys/external/bsd/drm2/dist/drm/amd/amdgpu/amdgpu_gart.c: revision 1.12
sys/external/bsd/drm2/dist/drm/radeon/radeon_rv770.c: revision 1.3
sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/disp/nouveau_nvkm_engine_disp_sorgm200.c: revision 1.3
sys/external/bsd/common/include/linux/printk.h: revision 1.14
sys/external/bsd/drm2/dist/drm/nouveau/nvkm/subdev/instmem/nouveau_nvkm_subdev_instmem_gk20a.c: revision 1.10
sys/external/bsd/drm2/dist/drm/amd/amdgpu/amdgpu_vi.c: revision 1.4
sys/external/bsd/drm2/include/linux/acpi.h: revision 1.11
sys/external/bsd/drm2/drm/drm_cdevsw.c: revision 1.31
sys/external/bsd/drm2/dist/drm/radeon/radeon_si.c: revision 1.6
sys/external/bsd/drm2/dist/drm/nouveau/nouveau_acpi.c: revision 1.5
sys/external/bsd/drm2/dist/drm/i915/display/intel_acpi.h: revision 1.5
sys/external/bsd/drm2/include/acpi/video.h: revision 1.3
sys/external/bsd/drm2/dist/drm/radeon/radeon_evergreen.c: revision 1.6
sys/external/bsd/drm2/dist/drm/nouveau/nouveau_acpi.h: revision 1.4
sys/arch/sparc64/include/pci_machdep.h: revision 1.31
sys/arch/sparc64/dev/pci_machdep.c: revision 1.83
sys/external/bsd/drm2/include/linux/kref.h: revision 1.14
sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_pci.c: revision 1.12
sys/external/bsd/drm2/linux/linux_dma_buf.c: revision 1.17
sys/external/bsd/drm2/dist/drm/nouveau/nvkm/subdev/bios/nouveau_nvkm_subdev_bios_shadowacpi.c: revision 1.4
sys/external/bsd/drm2/drm/drm_module.c: revision 1.32
sys/external/bsd/drm2/dist/drm/i915/i915_gem.h: revision 1.8
sys/external/bsd/drm2/dist/drm/i915/gem/i915_gem_dmabuf.c: revision 1.7
sys/external/bsd/drm2/include/linux/smp.h: revision 1.5
sys/external/bsd/drm2/dist/drm/amd/amdgpu/amdgpu_si.c: revision 1.5
sys/external/bsd/drm2/dist/drm/amd/amdgpu/amdgpu_device.c: revision 1.20
sys/arch/x86/x86/bus_dma.c: revision 1.91
sys/external/bsd/drm2/radeon/files.radeon: revision 1.40
sys/external/bsd/drm2/include/acpi/acpi_bus.h: revision 1.1
sys/external/bsd/drm2/dist/drm/nouveau/nouveau_drv.h: revision 1.5
sys/external/bsd/drm2/dist/drm/amd/amdgpu/amdgpu_device.c: revision 1.21
sys/external/bsd/common/include/asm/barrier.h: revision 1.20
sys/external/bsd/drm2/include/linux/nbsd-namespace-acpi.h: revision 1.2
sys/external/bsd/common/include/asm/barrier.h: revision 1.21
sys/modules/drmkms/drmkms_pci.h: revision 1.1
sys/external/bsd/drm2/dist/drm/drm_dp_helper.c: revision 1.17
sys/external/bsd/drm2/radeon/radeon_pci.c: revision 1.23
sys/external/bsd/drm2/linux/linux_xa.c: revision 1.4
sys/external/bsd/drm2/ttm/ttm_bo_vm.c: revision 1.23
sys/external/bsd/drm2/ttm/ttm_bo_vm.c: revision 1.24
sys/external/bsd/drm2/ttm/ttm_bo_vm.c: revision 1.25
sys/external/bsd/drm2/linux/linux_pci.c: revision 1.26
sys/dev/pci/pcivar.h: revision 1.120
sys/arch/xen/include/pci_machdep.h: revision 1.24
sys/external/bsd/drm2/ttm/ttm_bo_vm.c: revision 1.26
sys/external/bsd/drm2/linux/linux_pci.c: revision 1.27
sys/external/bsd/drm2/ttm/ttm_bo_vm.c: revision 1.27
sys/external/bsd/drm2/linux/linux_pci.c: revision 1.28
sys/external/bsd/drm2/dist/drm/radeon/radeon_cik.c: revision 1.8
sys/external/bsd/drm2/ttm/ttm_bo_vm.c: revision 1.28
sys/external/bsd/drm2/linux/linux_pci.c: revision 1.29
sys/external/bsd/drm2/include/linux/pci.h: revision 1.57
sys/external/bsd/drm2/include/linux/pci.h: revision 1.58
sys/external/bsd/drm2/dist/drm/radeon/radeon_acpi.c: revision 1.5
sys/external/bsd/drm2/dist/drm/nouveau/nouveau_display.c: revision 1.6
sys/external/bsd/drm2/dist/drm/amd/powerplay/hwmgr/amdgpu_hwmgr.c: revision 1.3
sys/external/bsd/drm2/dist/drm/amd/display/dc/core/amdgpu_dc_stream.c: revision 1.3
share/man/man9/bus_dma.9: revision 1.69
sys/external/bsd/drm2/drm/drm_gem_cma_helper.c: revision 1.15
sys/external/bsd/drm2/dist/drm/radeon/radeon_acpi.c: revision 1.6
sys/external/bsd/drm2/dist/drm/radeon/radeon.h: revision 1.12
sys/external/bsd/drm2/dist/drm/amd/amdgpu/amdgpu_cik.c: revision 1.7
sys/dev/acpi/acpi_mcfg.c: revision 1.29
sys/external/bsd/drm2/dist/drm/amd/amdgpu/amdgpu_acpi.c: revision 1.6
sys/external/bsd/drm2/dist/drm/radeon/radeon_r600.c: revision 1.7
sys/external/bsd/drm2/dist/drm/radeon/radeon_bios.c: revision 1.13
sys/modules/amdgpu/Makefile: revision 1.9
sys/external/bsd/drm2/dist/drm/radeon/radeon_bios.c: revision 1.14
sys/external/bsd/common/linux/linux_tasklet.c: revision 1.12
sys/external/bsd/drm2/dist/drm/nouveau/include/nvkm/core/device.h: revision 1.10
sys/external/bsd/drm2/dist/drm/i915/gem/i915_gem_mman.c: revision 1.23
sys/external/bsd/drm2/dist/drm/amd/amdgpu/amdgpu.h: revision 1.9
sys/external/bsd/drm2/include/linux/interval_tree.h: revision 1.14
sys/external/bsd/drm2/dist/drm/i915/gem/i915_gem_mman.c: revision 1.26
sys/external/bsd/drm2/dist/drm/amd/powerplay/hwmgr/amdgpu_smu7_hwmgr.c: revision 1.5
sys/dev/pci/pci.c: revision 1.168
sys/external/bsd/drm2/dist/drm/i915/gem/i915_gem_mman.c: revision 1.27
sys/external/bsd/drm2/dist/drm/radeon/radeon_si_dpm.c: revision 1.9
sys/external/bsd/drm2/pci/files.drmkms_pci: revision 1.18
sys/external/bsd/drm2/linux/linux_sync_file.c: revision 1.3
sys/external/bsd/drm2/amdgpu/files.amdgpu: revision 1.31
sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_tegra.c: revision 1.4
sys/external/bsd/drm2/dist/drm/drm_gem.c: revision 1.24
sys/arch/xen/xen/xpci_xenbus.c: revision 1.29

drm: Eliminate __HAVE_ATOMIC_AS_MEMBAR conditionals.
Discussed on tech-kern:
https://mail-index.netbsd.org/tech-kern/2023/02/23/msg028729.html

linux asm/barrier.h: Fix !MULTIPROCESSOR build.

remove "nouveau" from a comment. noted by jmcneill.

drm: KASSERT(A && B) -> KASSERT(A); KASSERT(B)
comment a function that has a clear overbounds read but it isn't used.
found by GCC 12.

nix the NetBSD specific GEM_BUG_ON().
avoids GCC 12 warnings, and matches upstream closer.
avoid uninitialised variable usage in drm_gem_cma_create_internal().
in the case nothing has returned 'error', 'nsegs' and the dma info
are (potentially) uninitialised, so consider this an error.
found by GCC 12.

avoid a GCC 12 warning.
there's a 1-element long array and a loop conditional that tries to see
if indexes for it are not identical. as these indexes will always both
be 0, the only valid index, the condition is always false. GCC 12
triggers a strange warning on this code that can never run (see below),
so simply assert the array size is 1 and comment the rest.
amdgpu_dc_stream.c:470:55: error: array subscript [0, 0] is outside array bounds of 'struct dc_writeback_info[1]' [-Werror=array-bounds]
470 | stream->writeback_info[j] = stream->writeback_info[i];

convert a KASSERT() into an if () panic() sequence to appease GCC 12.
OK riastradh@.

drm: Fix conditionals around drmkms_pci and agp.
Kernel should build now with all pci drm drivers stripped out but
DRM_LEGACY still enabled. (Might not be very useful, but it'll
build. Maybe we should also have DRM_LEGACY_PCI so those drivers can
be modloaded later.)

drmkms: Fix module build.
avoid an unlikely array bounds issue picked up by GCC 12.
nvkm_pcie_speed() can return -1, which is then used as an array index,
so make this default return PCIe 1.0 speeds.

drm: enable almost all PCIe functionality
linux_pci.c revisions 1.24 and 1.25 implemented most of the remaining
missing PCIe backends, but only enabled them for some amdgpu portions.
this enables all code marked with "XXX amdgpu pcie", "XXX radeon pcie",
and "XXX pcie speed". for most of it, simply removing #ifndefs __NetBSD__
to enable compliation was required, once the new "bus->max_bus_speed"
member was added to struct pci_bus. add an "always fails" backend for
pci_enable_atomic_ops_to_root() which seems to only be necessary
for virtual GPU functionality (and could be implemented if needed.)
tested on radeon 5450, 7750, R7 240 [radeon], and RX 550 [amdgpu], and
nvidia 750 and 1030 [nouveau].
this still does not quite work on nvidia cards. there are two problems
that remain:
- the call to set the link speed is skipped because the speed is set
to the default value of "-1". nvkm_pcie_set_link() will actually
determine the right value for this and for some cards, calling this
function if the current speed is -1 helps set the link speed. it
may be that on linux other paths we don't have enabled properly
would set this (there's one via debugfs, and a jetson specific one,
though perhaps setting either AC or DC speed values as boot options
(after hooking up these for netbsd) would currently work.
- worse, cards newer than kepler - geforce 900, 1000, and newer, are
all lacking the backing support to set pcie link speed. the GT 1030
card i have been testing with remains at pcie 1.0.

radeon: fix and enable ACPI methods for getting ROM BIOS
The hacky way of getting the BIOS mapped only works on x86. ACPI
should be preferred if available. Makes BIOS reading though VFCT
work on aarch64 with EDK2. (But only if EDK2 has POSTed the GPU.)
XXX amdgpu should get the same treatment.

drm: put_cpu() should enable preemption, not disable it again

drm(4): make pr_debug equivalent to aprint_debug
significantly reduces the default spam from amdgpu(4).

drm: Set CONFIG_ACPI in linux/acpi.h and make it build.

Leave a little ACPI-related functionality disabled for now, like
getting EDID out of ACPI -- needs a bit more work to make this work,
and I don't have hardware to work on that.
Should help with failures of the forms:
- unable to locate a BIOS ROM
- bios: unable to locate usable image
on various machines.

radeon_acpi.c: ifdef out unused function on NetBSD.
Should fix syzkaller build.

drm(4): Fix st_rdev in stat.
dminor->index already has the 64*type adjustment, as allocated in
drm_minor_alloc.
PR kern/58180

linux_sync_file: Fix missing init/fini steps.
Noted by rjs@.
PR kern/58210

ttm: Sync ttm_bo_uvm_fault_idle better with Linux.
PR xsrc/58133
ttm: Undo mistake in previous.

PR xsrc/58133
linux: Add a few more cases to pci_get_class.
Should fix crash on boot with amdgpu now that the ACPI business is
enabled.

i915: Fix dmabuf mmap object.

drm: Fix missing bounds checks in dma buf mmap.

drm_gem.c: Fix sense of assertion.
This is the opposite of WARN_ON.
Noted by rjs@.

drm_gem.c: Enable drm_gem_fence_array_add now that we emulate xa.
linux_xa: Delete and replace collision in xa_store as intended.
Don't free the colliding node that's still in the tree.
Noted by rjs@.

i915_gem_mman.c: Apply mmap types via pmap flags.
This way, userland gets buffers mapped write-combining or uncached as
needed.
PR xsrc/58307

x86: Teach bus_dmamem_map about BUS_DMA_PREFETCHABLE.
PR port-amd64/58308

bus_dma(9): Document BUS_DMA_PREFETCHABLE.
Like BUS_DMA_NOCACHE. Doesn't absolve you of the need for
bus_dmamap_sync, but if you later pass the vaddr to bus_dmamap_load,
the DMA map might notice the mapping is write-combining and use this
to make bus_dmamap_sync cheaper.
PR kern/58309

nouveau_nvkm_subdev_instmem_gk20a.c: Use BUS_DMA_PREFETCHABLE.
Matches Linux's pgprot_writecombine.
Unclear where the appropriate bus_dmamap_sync happens, or is supposed
to happen -- not using it would be wrong, but asking for a
prefetchable mapping may paper over symptoms, at least!

ttm: Sync more with Linux.
Add the original copyright and attribution since this is now,
intentionally, a modified copy of the original and not just roughly
the same algorithm.

ttm: Respect PGO_ALLPAGES.
Not sure this is useful but it reduces XXX's and makes this match
udv_fault better so it's easier to understand.

ttm: Sync cacheability flag logic with Linux.

ttm: Add XXX about readahead fault failures.

pci: Pass cookie through pci_find_device, pci_enumerate_bus, take 2.
New functions pci_find_device1 and pci_enumerate_bus1 have the cookie
argument. Existing symbols pci_find_device and pci_enumerate_bus are
now wrappers for the cookieless version.
This will allow pci_find_device callers to pass a cookie through to
the match function so they can keep state or pass in extra parameters
like b/d/f numbers, which will allow us to nix some horrible kludges
in the Linux PCI API emulation for drm (and, perhaps, Intel wifi).
This change drops the symbol pci_probe_device, in favour of a new
pci_probe_device1 with the cookie argument. But I don't think that
requires a revbump because it's only called by MD pci_enumerate_bus1
implementations, which don't live in modules anyway.
Take 2: Make sure to handle NULL match function.
linux_pci: Nix pci enumeration kludges.
Now that we can pass a cookie through, this stuff will be a little
less fragile.

i915: Omit needless i915_gem_object_pin/unpin_pages cycle in fault.
vm_fault_cpu and vm_fault_gtt, called by i915_gem_fault, already do
the pinning and unpinning internally, so there is no need for
i915_gem_fault to do it.
No functional change intended, except that the transient pin count
will be one lower than before during the fault routine (but it will
still be positive).

i915: Match Linux fault routine return code actions.
Omit needless EINTR interception -- this is now handled by
i915_error_to_vmf_fault.
Earlier revert was over a false alarm -- bisection shows the new
warnings arose from linux_pci.c 1.29 here:
https://mail-index.netbsd.org/source-changes/2024/06/23/msg151929.html

linux_pci: Fix shifto in pci_get_class.
It looks like Linux's pci_get_class also matches the interface part
of the PCI class register (but not the revision part), and I hadn't
noticed that in the previous shim structured differently.

With GCC12 kernel ALL/amd64 triggers "'sor' may be used uninitialized".
If "sublinks & 3" is zero GCC is right and sor[1] may be returned unitialized.
Fix by initializing "sor" to zero to return -1 instead of uninitialized value.
Ok: Taylor R Campbell <riastradh@>

amdgpu: Map BAR 2, not BAR 5, on pre-bonaire chips.
PR kern/58384

amdgpu: Map consecutive pages, not the same one over and over again.
PR kern/58385

linux/bitops: Fix overestimate for BITS_TO_LONGS(9)
Fortunately, this seems harmless except for allocating
excessive buffer memory.
Pointed out by nonaka@, OK riastradh@.
 1.5.4.1 02-Aug-2023  martin Pull up following revision(s) (requested by riastradh in ticket #302):

sys/modules/amdgpu/Makefile: revision 1.6
sys/external/bsd/drm2/amdgpu/files.amdgpu: revision 1.30

amdgpu: Define CONFIG_DRM_AMD_DC to enable display core logic.

Probably resolves a host of issues with amdgpu not detecting
displays!
Noticed by rjs@.

PR kern/57059
PR kern/57325
PR kern/57452
 1.1 19-Dec-2021  riastradh amdgpu: New kernel module build goo.
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 25-Jan-2018  pgoyette branches: 1.1.2; 1.1.6;
Create amdsmn(4) amd amdzentemp(4) modules for X86
 1.1.6.1 10-Jun-2019  christos Sync with HEAD
 1.1.2.2 06-Feb-2018  snj Pull up following revision(s) (requested by pgoyette in ticket #524):
sys/modules/Makefile: revision 1.199
sys/modules/amdsmn/Makefile: revision 1.1
sys/modules/amdsmn/amdsmn.ioconf: revision 1.1
sys/modules/amdzentemp/Makefile: revision 1.1
Create amdsmn(4) amd amdzentemp(4) modules for X86
 1.1.2.1 25-Jan-2018  snj file Makefile was added on branch netbsd-8 on 2018-02-06 20:31:13 +0000
 1.1 25-Jan-2018  pgoyette branches: 1.1.2;
Create amdsmn(4) amd amdzentemp(4) modules for X86
 1.1.2.2 06-Feb-2018  snj Pull up following revision(s) (requested by pgoyette in ticket #524):
sys/modules/Makefile: revision 1.199
sys/modules/amdsmn/Makefile: revision 1.1
sys/modules/amdsmn/amdsmn.ioconf: revision 1.1
sys/modules/amdzentemp/Makefile: revision 1.1
Create amdsmn(4) amd amdzentemp(4) modules for X86
 1.1.2.1 25-Jan-2018  snj file amdsmn.ioconf was added on branch netbsd-8 on 2018-02-06 20:31:13 +0000
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 15-Jun-2011  jruoho branches: 1.1.54;
Modularize amdtemp(4).
 1.1.54.1 10-Jun-2019  christos Sync with HEAD
 1.4 13-Apr-2012  cegger replace amdtempbus with amdnb_miscbus.
pointed out by pgoyette@
 1.3 20-Aug-2011  jakllsch branches: 1.3.2; 1.3.6;
Apparently we need to use the attribute and not the device name as the pseudo-root.
 1.2 18-Aug-2011  jakllsch Catch up to current reality.
 1.1 15-Jun-2011  jruoho Modularize amdtemp(4).
 1.3.6.1 29-Apr-2012  mrg sync to latest -current.
 1.3.2.1 17-Apr-2012  yamt sync with head
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 25-Jan-2018  pgoyette branches: 1.1.2; 1.1.6;
Create amdsmn(4) amd amdzentemp(4) modules for X86
 1.1.6.1 10-Jun-2019  christos Sync with HEAD
 1.1.2.2 06-Feb-2018  snj Pull up following revision(s) (requested by pgoyette in ticket #524):
sys/modules/Makefile: revision 1.199
sys/modules/amdsmn/Makefile: revision 1.1
sys/modules/amdsmn/amdsmn.ioconf: revision 1.1
sys/modules/amdzentemp/Makefile: revision 1.1
Create amdsmn(4) amd amdzentemp(4) modules for X86
 1.1.2.1 25-Jan-2018  snj file Makefile was added on branch netbsd-8 on 2018-02-06 20:31:13 +0000
 1.2 27-Jan-2018  christos branches: 1.2.2;
use the intermediate bus
 1.1 25-Jan-2018  pgoyette Create amdsmn(4) amd amdzentemp(4) modules for X86
 1.2.2.2 05-Feb-2018  martin Pull up following revision(s) (requested by pgoyette in ticket #524):

distrib/sets/lists/man/mi 1.1574
distrib/sets/lists/modules/md.amd64 1.73
distrib/sets/lists/modules/md.i386 1.76
share/man/man4/amdtemp.4 1.11
share/man/man4/man4.x86/Makefile 1.17
share/man/man4/man4.x86/amdsmn.4 1.1-1.3
share/man/man4/man4.x86/amdzentemp.4 1.1-1.6
sys/arch/amd64/conf/ALL 1.79,1.80
sys/arch/amd64/conf/GENERIC 1.482,1.484
sys/arch/amd64/conf/XEN3_DOM0 1.146,1.147
sys/arch/x86/pci/amdsmn.c 1.1-1.2
sys/arch/x86/pci/amdsmn.h 1.1
sys/arch/x86/pci/amdzentemp.c 1.1-1.7
sys/arch/x86/pci/files.pci 1.22,1.23
sys/modules/amdzentemp/amdzentemp.ioconf 1.2


Add amdzentemp from FreeBSD via Ian Clark.

man pages for amdsmn and amdzentemp.

Some clean-up on the HISTORY and AUTHORS sections, and addition of a BUGS
section to document the fact that we don't yet handle the required temp
offset, nor do we expose the available thermal-trip value.

Add missing article 'a'

KNF: Put back the blank line following the empty variable declarations
Put back the variable declaration, too, and mark it __diagused
Otherwise a DIAGNOSTIC kernel will complain about the variable being
undeclared.

Correct placement of __diagused attribute.

Modularize the amdsmn(4) driver, and update dependency for amdzentemp(4),
Create amdsmn(4) amd amdzentemp(4) modules for X86.
 1.2.2.1 27-Jan-2018  martin file amdzentemp.ioconf was added on branch netbsd-8 on 2018-02-05 13:06:55 +0000
 1.2 21-Oct-2025  pgoyette Add WARNS=3 as needed for -Wsign-compare issues
 1.1 27-Sep-2016  pgoyette branches: 1.1.2; 1.1.4; 1.1.18;
Add module build infrastructure for ld and its attachments
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 27-Sep-2016  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:49 +0000
 1.1.4.2 04-Nov-2016  pgoyette Sync with HEAD
 1.1.4.1 27-Sep-2016  pgoyette file Makefile was added on branch pgoyette-localcount on 2016-11-04 14:49:17 +0000
 1.1.2.2 05-Oct-2016  skrll Sync with HEAD
 1.1.2.1 27-Sep-2016  skrll file Makefile was added on branch nick-nhusb on 2016-10-05 20:56:04 +0000
 1.1 27-Sep-2016  pgoyette branches: 1.1.2; 1.1.4; 1.1.18;
Add module build infrastructure for ld and its attachments
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 27-Sep-2016  jdolecek file amr.ioconf was added on branch tls-maxphys on 2017-12-03 11:38:49 +0000
 1.1.4.2 04-Nov-2016  pgoyette Sync with HEAD
 1.1.4.1 27-Sep-2016  pgoyette file amr.ioconf was added on branch pgoyette-localcount on 2016-11-04 14:49:17 +0000
 1.1.2.2 05-Oct-2016  skrll Sync with HEAD
 1.1.2.1 27-Sep-2016  skrll file amr.ioconf was added on branch nick-nhusb on 2016-10-05 20:56:04 +0000
 1.1 20-Mar-2024  riastradh branches: 1.1.4;
apei(4): New driver for ACPI Platform Error Interfaces.

For now it is wired up only in x86 ALL kernels, and built as a module
for x86 and Arm. Once it gets a little more testing on machines with
APEI, I would like to flip it on by default.

PR kern/58046
 1.1.4.2 09-Oct-2024  martin Pull up following revision(s) (requested by riastradh in ticket #936):

sys/dev/acpi/apei_einjvar.h: revision 1.1
sys/dev/acpi/apei_cper.h: revision 1.2
distrib/sets/lists/debug/module.md.i386: revision 1.9
sys/dev/acpi/apei_hest.c: revision 1.1
sys/modules/apei/Makefile: revision 1.1
sys/dev/acpi/apei_hest.c: revision 1.2
distrib/sets/lists/modules/md.amd64: revision 1.101
sys/dev/acpi/apei_hest.c: revision 1.3
distrib/sets/lists/modules/md.amd64: revision 1.102
sys/modules/apei/apei.ioconf: revision 1.1
sys/dev/acpi/apei_bert.c: revision 1.1
distrib/sets/lists/man/mi: revision 1.1785
sys/dev/acpi/apei_bertvar.h: revision 1.1
sys/dev/acpi/apei.c: revision 1.1
sys/dev/acpi/apei.c: revision 1.2
sys/dev/acpi/apei.c: revision 1.3
sys/modules/Makefile: revision 1.283
sys/modules/Makefile: revision 1.284
sys/dev/acpi/apei_reg.c: revision 1.1
sys/dev/acpi/apei_hestvar.h: revision 1.1
distrib/sets/lists/debug/module.md.i386: revision 1.10
sys/dev/acpi/apei_reg.c: revision 1.2
sys/dev/acpi/apei_reg.c: revision 1.3
sys/dev/acpi/apei_reg.h: revision 1.1
sys/dev/acpi/apei_reg.h: revision 1.2
sys/dev/acpi/apei_reg.h: revision 1.3
sys/dev/acpi/acpi_hed.c: revision 1.1
sys/dev/acpi/apei_einj.c: revision 1.1
sys/dev/acpi/apeivar.h: revision 1.1
sys/dev/acpi/apei_einj.c: revision 1.2
sys/dev/acpi/apei_einj.c: revision 1.3
sys/dev/acpi/apei_einj.c: revision 1.4
sys/dev/acpi/apei_einj.c: revision 1.5
share/man/man4/Makefile: revision 1.734
sys/dev/acpi/apei_einj.c: revision 1.6
sys/dev/acpi/apei_einj.c: revision 1.7
sys/dev/acpi/files.acpi: revision 1.131
sys/dev/acpi/files.acpi: revision 1.132
sys/dev/acpi/apei_interp.c: revision 1.1
sys/dev/acpi/apei_interp.c: revision 1.2
share/man/man4/acpihed.4: revision 1.1
sys/dev/acpi/apei_mapreg.c: revision 1.1
sys/dev/acpi/apei_interp.c: revision 1.3
share/man/man4/acpihed.4: revision 1.2
distrib/sets/lists/modules/md.i386: revision 1.98
sys/dev/acpi/apei_mapreg.c: revision 1.2
sys/dev/acpi/apei_interp.h: revision 1.1
sys/dev/acpi/apei_interp.c: revision 1.4
distrib/sets/lists/modules/md.i386: revision 1.99
sys/modules/acpihed/Makefile: revision 1.1
sys/dev/acpi/apei_mapreg.c: revision 1.3
sys/dev/acpi/apei_interp.h: revision 1.2
sys/arch/amd64/conf/ALL: revision 1.185
sys/dev/acpi/apei_mapreg.h: revision 1.1
sys/dev/acpi/apei_mapreg.c: revision 1.4
sys/arch/amd64/conf/ALL: revision 1.186
sys/dev/acpi/apei_erstvar.h: revision 1.1
sys/dev/acpi/apei_erst.c: revision 1.1
sys/dev/acpi/apei_erst.c: revision 1.2
sys/dev/acpi/apei_erst.c: revision 1.3
sys/arch/i386/conf/ALL: revision 1.516
share/man/man4/apei.4: revision 1.1
sys/arch/i386/conf/ALL: revision 1.517
share/man/man4/apei.4: revision 1.2
distrib/sets/lists/debug/module.md.amd64: revision 1.15
sys/modules/acpihed/acpihed.ioconf: revision 1.1
sys/dev/acpi/apei_hed.h: revision 1.1
distrib/sets/lists/debug/module.md.amd64: revision 1.16
sys/dev/acpi/apei_cper.h: revision 1.1

(all via patch)

apei(4): New driver for ACPI Platform Error Interfaces.

For now it is wired up only in x86 ALL kernels, and built as a module
for x86 and Arm. Once it gets a little more testing on machines with
APEI, I would like to flip it on by default.
PR kern/58046

apei(4): Pacify -Wsign-compare.
Assert that the parsing made forward progress too while here.
PR kern/58046

apei(4): Tweak some comments about the APEI interpreter language.
No functional change intended.
PR kern/58046

apei(4): Fix parsing checks for TRIGGER_ERROR action table.
The TableSize is size of the header plus the body, not just the body.
PR kern/58046
apei(4): Note some TODOs for EINJ and HEST.
No functional change intended, comments only.
PR kern/58046

acpihed(4): New driver for PNP0C33 to notify apei(4).
PNP0C33 denotes the ACPI Hardware Error Device, which exists only to
be a vector for event notifications.
PR kern/58046

acpihed(4): fix name in Dt, use Ql
apei(4): Plug memory leak on teardown of instruction interpreter.
PR kern/58046
apei(4): Fix indexing of multi-unit register access.
PR kern/58046

apei(4): Fix register chunk counting.
Now it will actually read and write the registers!
Have been updating and reloading the wrong module to test this, oops.
PR kern/58046

apei(4): Allow pre-mapping I/O registers too.
PR kern/58046

apei(4): Pre-map registers when compiling interpreter.
This way we don't have to worry about mapping them in nasty contexts
where access to uvm_km_alloc may not be allowed. Paves the way to
use ERST for saving dmesg on crash.
Exception: ACPI_ERST_MOVE_DATA still needs to do AcpiOsMapMemory.
We'll need to reserve a couple pages to avoid that.
PR kern/58046

apei(4): Simplify EINJ/ERST register access now that it's pre-mapped.
PR kern/58046
apei(4): Make sure to initialize *fatalp in apei_gesb_report.
PR kern/58046

apei: fix typos in comments

apei: fix typos in comments and snprintb bitfmt

apei(4): Fix uninitialized stack access in error branch.
PR kern/58046

apei(4), acpihed(4): Wire up man pages to build.
PR kern/58046: Missing APEI (ACPI Platform Error Interface) support
 1.1.4.1 20-Mar-2024  martin file Makefile was added on branch netbsd-10 on 2024-10-09 13:00:12 +0000
 1.1 20-Mar-2024  riastradh branches: 1.1.4;
apei(4): New driver for ACPI Platform Error Interfaces.

For now it is wired up only in x86 ALL kernels, and built as a module
for x86 and Arm. Once it gets a little more testing on machines with
APEI, I would like to flip it on by default.

PR kern/58046
 1.1.4.2 09-Oct-2024  martin Pull up following revision(s) (requested by riastradh in ticket #936):

sys/dev/acpi/apei_einjvar.h: revision 1.1
sys/dev/acpi/apei_cper.h: revision 1.2
distrib/sets/lists/debug/module.md.i386: revision 1.9
sys/dev/acpi/apei_hest.c: revision 1.1
sys/modules/apei/Makefile: revision 1.1
sys/dev/acpi/apei_hest.c: revision 1.2
distrib/sets/lists/modules/md.amd64: revision 1.101
sys/dev/acpi/apei_hest.c: revision 1.3
distrib/sets/lists/modules/md.amd64: revision 1.102
sys/modules/apei/apei.ioconf: revision 1.1
sys/dev/acpi/apei_bert.c: revision 1.1
distrib/sets/lists/man/mi: revision 1.1785
sys/dev/acpi/apei_bertvar.h: revision 1.1
sys/dev/acpi/apei.c: revision 1.1
sys/dev/acpi/apei.c: revision 1.2
sys/dev/acpi/apei.c: revision 1.3
sys/modules/Makefile: revision 1.283
sys/modules/Makefile: revision 1.284
sys/dev/acpi/apei_reg.c: revision 1.1
sys/dev/acpi/apei_hestvar.h: revision 1.1
distrib/sets/lists/debug/module.md.i386: revision 1.10
sys/dev/acpi/apei_reg.c: revision 1.2
sys/dev/acpi/apei_reg.c: revision 1.3
sys/dev/acpi/apei_reg.h: revision 1.1
sys/dev/acpi/apei_reg.h: revision 1.2
sys/dev/acpi/apei_reg.h: revision 1.3
sys/dev/acpi/acpi_hed.c: revision 1.1
sys/dev/acpi/apei_einj.c: revision 1.1
sys/dev/acpi/apeivar.h: revision 1.1
sys/dev/acpi/apei_einj.c: revision 1.2
sys/dev/acpi/apei_einj.c: revision 1.3
sys/dev/acpi/apei_einj.c: revision 1.4
sys/dev/acpi/apei_einj.c: revision 1.5
share/man/man4/Makefile: revision 1.734
sys/dev/acpi/apei_einj.c: revision 1.6
sys/dev/acpi/apei_einj.c: revision 1.7
sys/dev/acpi/files.acpi: revision 1.131
sys/dev/acpi/files.acpi: revision 1.132
sys/dev/acpi/apei_interp.c: revision 1.1
sys/dev/acpi/apei_interp.c: revision 1.2
share/man/man4/acpihed.4: revision 1.1
sys/dev/acpi/apei_mapreg.c: revision 1.1
sys/dev/acpi/apei_interp.c: revision 1.3
share/man/man4/acpihed.4: revision 1.2
distrib/sets/lists/modules/md.i386: revision 1.98
sys/dev/acpi/apei_mapreg.c: revision 1.2
sys/dev/acpi/apei_interp.h: revision 1.1
sys/dev/acpi/apei_interp.c: revision 1.4
distrib/sets/lists/modules/md.i386: revision 1.99
sys/modules/acpihed/Makefile: revision 1.1
sys/dev/acpi/apei_mapreg.c: revision 1.3
sys/dev/acpi/apei_interp.h: revision 1.2
sys/arch/amd64/conf/ALL: revision 1.185
sys/dev/acpi/apei_mapreg.h: revision 1.1
sys/dev/acpi/apei_mapreg.c: revision 1.4
sys/arch/amd64/conf/ALL: revision 1.186
sys/dev/acpi/apei_erstvar.h: revision 1.1
sys/dev/acpi/apei_erst.c: revision 1.1
sys/dev/acpi/apei_erst.c: revision 1.2
sys/dev/acpi/apei_erst.c: revision 1.3
sys/arch/i386/conf/ALL: revision 1.516
share/man/man4/apei.4: revision 1.1
sys/arch/i386/conf/ALL: revision 1.517
share/man/man4/apei.4: revision 1.2
distrib/sets/lists/debug/module.md.amd64: revision 1.15
sys/modules/acpihed/acpihed.ioconf: revision 1.1
sys/dev/acpi/apei_hed.h: revision 1.1
distrib/sets/lists/debug/module.md.amd64: revision 1.16
sys/dev/acpi/apei_cper.h: revision 1.1

(all via patch)

apei(4): New driver for ACPI Platform Error Interfaces.

For now it is wired up only in x86 ALL kernels, and built as a module
for x86 and Arm. Once it gets a little more testing on machines with
APEI, I would like to flip it on by default.
PR kern/58046

apei(4): Pacify -Wsign-compare.
Assert that the parsing made forward progress too while here.
PR kern/58046

apei(4): Tweak some comments about the APEI interpreter language.
No functional change intended.
PR kern/58046

apei(4): Fix parsing checks for TRIGGER_ERROR action table.
The TableSize is size of the header plus the body, not just the body.
PR kern/58046
apei(4): Note some TODOs for EINJ and HEST.
No functional change intended, comments only.
PR kern/58046

acpihed(4): New driver for PNP0C33 to notify apei(4).
PNP0C33 denotes the ACPI Hardware Error Device, which exists only to
be a vector for event notifications.
PR kern/58046

acpihed(4): fix name in Dt, use Ql
apei(4): Plug memory leak on teardown of instruction interpreter.
PR kern/58046
apei(4): Fix indexing of multi-unit register access.
PR kern/58046

apei(4): Fix register chunk counting.
Now it will actually read and write the registers!
Have been updating and reloading the wrong module to test this, oops.
PR kern/58046

apei(4): Allow pre-mapping I/O registers too.
PR kern/58046

apei(4): Pre-map registers when compiling interpreter.
This way we don't have to worry about mapping them in nasty contexts
where access to uvm_km_alloc may not be allowed. Paves the way to
use ERST for saving dmesg on crash.
Exception: ACPI_ERST_MOVE_DATA still needs to do AcpiOsMapMemory.
We'll need to reserve a couple pages to avoid that.
PR kern/58046

apei(4): Simplify EINJ/ERST register access now that it's pre-mapped.
PR kern/58046
apei(4): Make sure to initialize *fatalp in apei_gesb_report.
PR kern/58046

apei: fix typos in comments

apei: fix typos in comments and snprintb bitfmt

apei(4): Fix uninitialized stack access in error branch.
PR kern/58046

apei(4), acpihed(4): Wire up man pages to build.
PR kern/58046: Missing APEI (ACPI Platform Error Interface) support
 1.1.4.1 20-Mar-2024  martin file apei.ioconf was added on branch netbsd-10 on 2024-10-09 13:00:12 +0000
 1.3 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.2 01-Apr-2014  riastradh branches: 1.2.4; 1.2.6; 1.2.10; 1.2.36;
Rework Apple SMC attachment goo and split into multiple modules.

The four modules are apple_smc for the core functions, apple_smc_acpi
for attachment at acpi, and apple_smc_fan & apple_smc_temp for stuff
on the SMC.

Seems like there's a lot more bookkeeping necessary to maintain
children of an applesmc device implemented by loadable modules.
Maybe there's a better way I just haven't figured out yet.
 1.1 01-Apr-2014  riastradh First draft of drivers for the Apple System Management Controller.

Device interface derived by reading the Linux driver source code and
<http:///www.parhelia.ch/blog/statics/k3_keys.html> as of 2012-12-05.

Includes support for attaching fan and temperature sensors to sysmon.
No accelerometer yet.

Compile-tested only, based on some run-testing of experiments from
userland. Module attachment is not quite finished, so it won't work
yet.
 1.2.36.1 10-Jun-2019  christos Sync with HEAD
 1.2.10.2 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.2.10.1 01-Apr-2014  tls file Makefile was added on branch tls-maxphys on 2014-08-20 00:04:31 +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 01-Apr-2014  yamt file Makefile was added on branch yamt-pagecache on 2014-05-22 11:41:06 +0000
 1.2.4.2 18-May-2014  rmind sync with head
 1.2.4.1 01-Apr-2014  rmind file Makefile was added on branch rmind-smpnet on 2014-05-18 17:46:10 +0000
 1.2 01-Apr-2014  riastradh Remove vestigial modules/apple_smc/apple_smc.ioconf.
 1.1 01-Apr-2014  riastradh First draft of drivers for the Apple System Management Controller.

Device interface derived by reading the Linux driver source code and
<http:///www.parhelia.ch/blog/statics/k3_keys.html> as of 2012-12-05.

Includes support for attaching fan and temperature sensors to sysmon.
No accelerometer yet.

Compile-tested only, based on some run-testing of experiments from
userland. Module attachment is not quite finished, so it won't work
yet.
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 01-Apr-2014  riastradh branches: 1.1.4; 1.1.6; 1.1.10; 1.1.36;
Rework Apple SMC attachment goo and split into multiple modules.

The four modules are apple_smc for the core functions, apple_smc_acpi
for attachment at acpi, and apple_smc_fan & apple_smc_temp for stuff
on the SMC.

Seems like there's a lot more bookkeeping necessary to maintain
children of an applesmc device implemented by loadable modules.
Maybe there's a better way I just haven't figured out yet.
 1.1.36.1 10-Jun-2019  christos Sync with HEAD
 1.1.10.2 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.1.10.1 01-Apr-2014  tls file Makefile was added on branch tls-maxphys on 2014-08-20 00:04:31 +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 01-Apr-2014  yamt file Makefile was added on branch yamt-pagecache on 2014-05-22 11:41:06 +0000
 1.1.4.2 18-May-2014  rmind sync with head
 1.1.4.1 01-Apr-2014  rmind file Makefile was added on branch rmind-smpnet on 2014-05-18 17:46:10 +0000
 1.1 01-Apr-2014  riastradh branches: 1.1.4; 1.1.6; 1.1.10;
Rework Apple SMC attachment goo and split into multiple modules.

The four modules are apple_smc for the core functions, apple_smc_acpi
for attachment at acpi, and apple_smc_fan & apple_smc_temp for stuff
on the SMC.

Seems like there's a lot more bookkeeping necessary to maintain
children of an applesmc device implemented by loadable modules.
Maybe there's a better way I just haven't figured out yet.
 1.1.10.2 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.1.10.1 01-Apr-2014  tls file apple_smc_acpi.ioconf was added on branch tls-maxphys on 2014-08-20 00:04:31 +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 01-Apr-2014  yamt file apple_smc_acpi.ioconf was added on branch yamt-pagecache on 2014-05-22 11:41:06 +0000
 1.1.4.2 18-May-2014  rmind sync with head
 1.1.4.1 01-Apr-2014  rmind file apple_smc_acpi.ioconf was added on branch rmind-smpnet on 2014-05-18 17:46:10 +0000
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 01-Apr-2014  riastradh branches: 1.1.4; 1.1.6; 1.1.10; 1.1.36;
Rework Apple SMC attachment goo and split into multiple modules.

The four modules are apple_smc for the core functions, apple_smc_acpi
for attachment at acpi, and apple_smc_fan & apple_smc_temp for stuff
on the SMC.

Seems like there's a lot more bookkeeping necessary to maintain
children of an applesmc device implemented by loadable modules.
Maybe there's a better way I just haven't figured out yet.
 1.1.36.1 10-Jun-2019  christos Sync with HEAD
 1.1.10.2 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.1.10.1 01-Apr-2014  tls file Makefile was added on branch tls-maxphys on 2014-08-20 00:04:31 +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 01-Apr-2014  yamt file Makefile was added on branch yamt-pagecache on 2014-05-22 11:41:06 +0000
 1.1.4.2 18-May-2014  rmind sync with head
 1.1.4.1 01-Apr-2014  rmind file Makefile was added on branch rmind-smpnet on 2014-05-18 17:46:10 +0000
 1.1 01-Apr-2014  riastradh branches: 1.1.4; 1.1.6; 1.1.10;
Rework Apple SMC attachment goo and split into multiple modules.

The four modules are apple_smc for the core functions, apple_smc_acpi
for attachment at acpi, and apple_smc_fan & apple_smc_temp for stuff
on the SMC.

Seems like there's a lot more bookkeeping necessary to maintain
children of an applesmc device implemented by loadable modules.
Maybe there's a better way I just haven't figured out yet.
 1.1.10.2 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.1.10.1 01-Apr-2014  tls file apple_smc_fan.ioconf was added on branch tls-maxphys on 2014-08-20 00:04:31 +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 01-Apr-2014  yamt file apple_smc_fan.ioconf was added on branch yamt-pagecache on 2014-05-22 11:41:06 +0000
 1.1.4.2 18-May-2014  rmind sync with head
 1.1.4.1 01-Apr-2014  rmind file apple_smc_fan.ioconf was added on branch rmind-smpnet on 2014-05-18 17:46:10 +0000
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 01-Apr-2014  riastradh branches: 1.1.4; 1.1.6; 1.1.10; 1.1.36;
Rework Apple SMC attachment goo and split into multiple modules.

The four modules are apple_smc for the core functions, apple_smc_acpi
for attachment at acpi, and apple_smc_fan & apple_smc_temp for stuff
on the SMC.

Seems like there's a lot more bookkeeping necessary to maintain
children of an applesmc device implemented by loadable modules.
Maybe there's a better way I just haven't figured out yet.
 1.1.36.1 10-Jun-2019  christos Sync with HEAD
 1.1.10.2 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.1.10.1 01-Apr-2014  tls file Makefile was added on branch tls-maxphys on 2014-08-20 00:04:31 +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 01-Apr-2014  yamt file Makefile was added on branch yamt-pagecache on 2014-05-22 11:41:06 +0000
 1.1.4.2 18-May-2014  rmind sync with head
 1.1.4.1 01-Apr-2014  rmind file Makefile was added on branch rmind-smpnet on 2014-05-18 17:46:10 +0000
 1.1 01-Apr-2014  riastradh branches: 1.1.4; 1.1.6; 1.1.10;
Rework Apple SMC attachment goo and split into multiple modules.

The four modules are apple_smc for the core functions, apple_smc_acpi
for attachment at acpi, and apple_smc_fan & apple_smc_temp for stuff
on the SMC.

Seems like there's a lot more bookkeeping necessary to maintain
children of an applesmc device implemented by loadable modules.
Maybe there's a better way I just haven't figured out yet.
 1.1.10.2 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.1.10.1 01-Apr-2014  tls file apple_smc_temp.ioconf was added on branch tls-maxphys on 2014-08-20 00:04:31 +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 01-Apr-2014  yamt file apple_smc_temp.ioconf was added on branch yamt-pagecache on 2014-05-22 11:41:06 +0000
 1.1.4.2 18-May-2014  rmind sync with head
 1.1.4.1 01-Apr-2014  rmind file apple_smc_temp.ioconf was added on branch rmind-smpnet on 2014-05-18 17:46:10 +0000
 1.2 28-Aug-2011  jmcneill WARNS=3 is the default
 1.1 16-Jan-2011  jmcneill branches: 1.1.6;
support building aps(4) as a module
 1.1.6.2 05-Mar-2011  rmind sync with head
 1.1.6.1 16-Jan-2011  rmind file Makefile was added on branch rmind-uvmplock on 2011-03-05 20:55:37 +0000
 1.1 16-Jan-2011  jmcneill branches: 1.1.6;
support building aps(4) as a module
 1.1.6.2 05-Mar-2011  rmind sync with head
 1.1.6.1 16-Jan-2011  rmind file aps.ioconf was added on branch rmind-uvmplock on 2011-03-05 20:55:37 +0000
 1.1 15-Jun-2011  mrg build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.
 1.7 03-Aug-2021  rin Switch evbppc/ibm4xx to generic evbppc (same as oea) kernel modules.

I've confirmed that kernels similar to amd64/conf/MODULAR work fine
both on 403 and 405.

XXX
Unfortunately, we cannot immediately switch evbppc/booke to generic
kernel modules yet; it has its own intr.h implementation.
 1.6 04-Jul-2020  chs the x86 xen and non-xen modules are identical,
so remove the unneeded extra copies.
Xen kernels now use the same modules as native kernels.
 1.5 27-Jun-2020  rin Rename module directory for ibm4xx from /stand/powerpc-4xx to
/stand/powerpc-ibm4xx to match with what we set in evbppc_machdep.c:

https://nxr.netbsd.org/xref/src/sys/arch/evbppc/evbppc/evbppc_machdep.c#86

(And we use ibm4xx not 4xx for directory in sys/arch/powerpc.)

Note that we had never enabled MODULAR for ibm4xx yet; kernel with
MODULAR option was unable to build. This should be why this discrepancy
had never been found until today...
 1.4 19-Sep-2018  maxv Don't build the module sets for non-pae-32bit-pv. Noted by John D. Baker
on port-i386@, thanks.
 1.3 22-Jun-2015  matt branches: 1.3.16; 1.3.18;
Add support for build mips64 kernel modules as N32
 1.2 11-Aug-2014  jnemeth branches: 1.2.4;
Add the infrastructure for MODULAR support for Xen kernels. At
the moment, this can only load very simple modules due to missing
symbols. It is being add at this time to make pullups to the
netbsd-7 branch easier. It is not enabled by default in any kernels.
 1.1 15-Jun-2011  mrg branches: 1.1.12;
build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.
 1.1.12.2 03-Dec-2017  jdolecek update from HEAD
 1.1.12.1 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.2.4.1 22-Sep-2015  skrll Sync with HEAD
 1.3.18.1 10-Jun-2019  christos Sync with HEAD
 1.3.16.1 30-Sep-2018  pgoyette Ssync with HEAD
 1.1 15-Jun-2011  mrg build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.
 1.1 07-Aug-2013  matt branches: 1.1.2; 1.1.6; 1.1.10;
awk support scripts to generate trampolines in modules.
(adapted from previous LKM method).
<machine/asm.h> now has a KMODTRAMPOLINE macro to generate the trampoline
 1.1.10.2 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.1.10.1 07-Aug-2013  tls file kmodhide.awk was added on branch tls-maxphys on 2014-08-20 00:04:32 +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 07-Aug-2013  yamt file kmodhide.awk was added on branch yamt-pagecache on 2014-05-22 11:41:06 +0000
 1.1.2.2 28-Aug-2013  rmind sync with head
 1.1.2.1 07-Aug-2013  rmind file kmodhide.awk was added on branch rmind-smpnet on 2013-08-28 23:59:35 +0000
 1.1 07-Aug-2013  matt branches: 1.1.2; 1.1.6; 1.1.10;
awk support scripts to generate trampolines in modules.
(adapted from previous LKM method).
<machine/asm.h> now has a KMODTRAMPOLINE macro to generate the trampoline
 1.1.10.2 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.1.10.1 07-Aug-2013  tls file kmodtramp.awk was added on branch tls-maxphys on 2014-08-20 00:04:32 +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 07-Aug-2013  yamt file kmodtramp.awk was added on branch yamt-pagecache on 2014-05-22 11:41:06 +0000
 1.1.2.2 28-Aug-2013  rmind sync with head
 1.1.2.1 07-Aug-2013  rmind file kmodtramp.awk was added on branch rmind-smpnet on 2013-08-28 23:59:35 +0000
 1.2 07-Aug-2013  matt branches: 1.2.2; 1.2.6; 1.2.10;
Keep track of undefined symbols and then use to determine whether a wrap
is required.
 1.1 07-Aug-2013  matt awk support scripts to generate trampolines in modules.
(adapted from previous LKM method).
<machine/asm.h> now has a KMODTRAMPOLINE macro to generate the trampoline
 1.2.10.2 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.2.10.1 07-Aug-2013  tls file kmodwrap.awk was added on branch tls-maxphys on 2014-08-20 00:04:32 +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 07-Aug-2013  yamt file kmodwrap.awk was added on branch yamt-pagecache on 2014-05-22 11:41:06 +0000
 1.2.2.2 28-Aug-2013  rmind sync with head
 1.2.2.1 07-Aug-2013  rmind file kmodwrap.awk was added on branch rmind-smpnet on 2013-08-28 23:59:35 +0000
 1.1 17-Apr-2015  matt branches: 1.1.2; 1.1.18;
Latent support for ARM_HAS_LPAE.
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 17-Apr-2015  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:49 +0000
 1.1.2.2 06-Jun-2015  skrll Sync with HEAD
 1.1.2.1 17-Apr-2015  skrll file Makefile was added on branch nick-nhusb on 2015-06-06 14:40:23 +0000
 1.1 17-Apr-2015  matt branches: 1.1.2; 1.1.18;
Latent support for ARM_HAS_LPAE.
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 17-Apr-2015  jdolecek file bsd.arm-lpae.mk was added on branch tls-maxphys on 2017-12-03 11:38:49 +0000
 1.1.2.2 06-Jun-2015  skrll Sync with HEAD
 1.1.2.1 17-Apr-2015  skrll file bsd.arm-lpae.mk was added on branch nick-nhusb on 2015-06-06 14:40:23 +0000
 1.1 15-Jun-2011  mrg build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.
 1.1 22-Jun-2015  matt branches: 1.1.2; 1.1.18;
Add support for build mips64 kernel modules as N32
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 22-Jun-2015  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:49 +0000
 1.1.2.2 22-Sep-2015  skrll Sync with HEAD
 1.1.2.1 22-Jun-2015  skrll file Makefile was added on branch nick-nhusb on 2015-09-22 12:06:08 +0000
 1.1 22-Jun-2015  matt branches: 1.1.2; 1.1.18;
Add support for build mips64 kernel modules as N32
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 22-Jun-2015  jdolecek file bsd.mips-n32.mk was added on branch tls-maxphys on 2017-12-03 11:38:49 +0000
 1.1.2.2 22-Sep-2015  skrll Sync with HEAD
 1.1.2.1 22-Jun-2015  skrll file bsd.mips-n32.mk was added on branch nick-nhusb on 2015-09-22 12:06:08 +0000
 1.1 15-Jun-2011  mrg build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.
 1.4 15-Nov-2018  riastradh Include <bsd.own.mk> before using ACTIVE_CC. Fixes make errors.
 1.3 10-Aug-2014  joerg branches: 1.3.26; 1.3.28;
Put GCC/GAS options under ACTIVE_CC == "gcc".
 1.2 08-Aug-2014  joerg Don't set -mmultiple or -mno-string for PowerPC, the difference is too
small to really matter and it sometimes even increases the size.
 1.1 15-Jun-2011  mrg branches: 1.1.12; 1.1.26;
build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.
 1.1.26.1 10-Aug-2014  tls Rebase.
 1.1.12.1 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.3.28.1 10-Jun-2019  christos Sync with HEAD
 1.3.26.1 26-Nov-2018  pgoyette Sync with HEAD, resolve a couple of conflicts
 1.2 16-Feb-2011  jruoho Convert the ioconf files to lower case for consistency. No functional change.
 1.1 26-Oct-2010  jruoho branches: 1.1.2; 1.1.4; 1.1.6;
Build asus(x) and hpqlb(4) as modules on x86.
 1.1.6.1 17-Feb-2011  bouyer Sync with HEAD
 1.1.4.1 06-Jun-2011  jruoho Sync with HEAD.
 1.1.2.2 06-Nov-2010  uebayasi Sync with HEAD.
 1.1.2.1 26-Oct-2010  uebayasi file ASUS.ioconf was added on branch uebayasi-xip on 2010-11-06 08:08:47 +0000
 1.3 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.2 16-Feb-2011  jruoho branches: 1.2.2; 1.2.58;
Convert the ioconf files to lower case for consistency. No functional change.
 1.1 26-Oct-2010  jruoho branches: 1.1.2; 1.1.4; 1.1.6;
Build asus(x) and hpqlb(4) as modules on x86.
 1.1.6.1 17-Feb-2011  bouyer Sync with HEAD
 1.1.4.1 06-Jun-2011  jruoho Sync with HEAD.
 1.1.2.2 06-Nov-2010  uebayasi Sync with HEAD.
 1.1.2.1 26-Oct-2010  uebayasi file Makefile was added on branch uebayasi-xip on 2010-11-06 08:08:47 +0000
 1.2.58.1 10-Jun-2019  christos Sync with HEAD
 1.2.2.2 05-Mar-2011  rmind sync with head
 1.2.2.1 16-Feb-2011  rmind file Makefile was added on branch rmind-uvmplock on 2011-03-05 20:55:38 +0000
 1.1 16-Feb-2011  jruoho branches: 1.1.2; 1.1.4; 1.1.8;
Convert the ioconf files to lower case for consistency. No functional change.
 1.1.8.2 06-Jun-2011  jruoho Sync with HEAD.
 1.1.8.1 16-Feb-2011  jruoho file asus.ioconf was added on branch jruoho-x86intr on 2011-06-06 09:09:46 +0000
 1.1.4.2 05-Mar-2011  rmind sync with head
 1.1.4.1 16-Feb-2011  rmind file asus.ioconf was added on branch rmind-uvmplock on 2011-03-05 20:55:38 +0000
 1.1.2.2 17-Feb-2011  bouyer Sync with HEAD
 1.1.2.1 16-Feb-2011  bouyer file asus.ioconf was added on branch bouyer-quota2 on 2011-02-17 12:00:47 +0000
 1.2 21-Oct-2025  pgoyette Add WARNS=3 as needed for -Wsign-compare issues
 1.1 27-Sep-2016  pgoyette branches: 1.1.2; 1.1.4; 1.1.18;
Add module build infrastructure for ld and its attachments
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 27-Sep-2016  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:49 +0000
 1.1.4.2 04-Nov-2016  pgoyette Sync with HEAD
 1.1.4.1 27-Sep-2016  pgoyette file Makefile was added on branch pgoyette-localcount on 2016-11-04 14:49:18 +0000
 1.1.2.2 05-Oct-2016  skrll Sync with HEAD
 1.1.2.1 27-Sep-2016  skrll file Makefile was added on branch nick-nhusb on 2016-10-05 20:56:04 +0000
 1.1 27-Sep-2016  pgoyette branches: 1.1.2; 1.1.4; 1.1.18;
Add module build infrastructure for ld and its attachments
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 27-Sep-2016  jdolecek file ataraid.ioconf was added on branch tls-maxphys on 2017-12-03 11:38:49 +0000
 1.1.4.2 04-Nov-2016  pgoyette Sync with HEAD
 1.1.4.1 27-Sep-2016  pgoyette file ataraid.ioconf was added on branch pgoyette-localcount on 2016-11-04 14:49:18 +0000
 1.1.2.2 05-Oct-2016  skrll Sync with HEAD
 1.1.2.1 27-Sep-2016  skrll file ataraid.ioconf was added on branch nick-nhusb on 2016-10-05 20:56:04 +0000
 1.2 28-Aug-2011  jmcneill WARNS=3 is the default
 1.1 20-Feb-2011  jmcneill branches: 1.1.2; 1.1.4; 1.1.8;
add module glue for ath_hal, ath, and if_ath_pci
 1.1.8.2 06-Jun-2011  jruoho Sync with HEAD.
 1.1.8.1 20-Feb-2011  jruoho file Makefile was added on branch jruoho-x86intr on 2011-06-06 09:09:46 +0000
 1.1.4.2 05-Mar-2011  rmind sync with head
 1.1.4.1 20-Feb-2011  rmind file Makefile was added on branch rmind-uvmplock on 2011-03-05 20:55:38 +0000
 1.1.2.2 05-Mar-2011  bouyer Sync with HEAD
 1.1.2.1 20-Feb-2011  bouyer file Makefile was added on branch bouyer-quota2 on 2011-03-05 15:10:43 +0000
 1.7 03-Jun-2023  lukem adapt to ${CC_WNO_IMPLICIT_FALLTHROUGH}

Use ${CC_WNO_IMPLICIT_FALLTHROUGH} instead of
the older style more complex expressions.
 1.6 29-Sep-2019  mrg convert HAVE_GCC == 7 to HAVE_GCC >= 7.
 1.5 04-Feb-2019  mrg apply -Wno-error=implicit-fallthrough to ar5212_xmit.c and ar5416_xmit.c.
 1.4 28-Aug-2011  jmcneill branches: 1.4.54;
WARNS=3 is the default
 1.3 21-Feb-2011  cegger branches: 1.3.2; 1.3.4; 1.3.8;
catch up to AR9285 changes
 1.2 20-Feb-2011  jmcneill catch up to AR9280 changes
 1.1 20-Feb-2011  jmcneill add module glue for ath_hal, ath, and if_ath_pci
 1.3.8.2 06-Jun-2011  jruoho Sync with HEAD.
 1.3.8.1 21-Feb-2011  jruoho file Makefile was added on branch jruoho-x86intr on 2011-06-06 09:09:46 +0000
 1.3.4.2 05-Mar-2011  rmind sync with head
 1.3.4.1 21-Feb-2011  rmind file Makefile was added on branch rmind-uvmplock on 2011-03-05 20:55:38 +0000
 1.3.2.2 05-Mar-2011  bouyer Sync with HEAD
 1.3.2.1 21-Feb-2011  bouyer file Makefile was added on branch bouyer-quota2 on 2011-03-05 15:10:43 +0000
 1.4.54.2 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.4.54.1 10-Jun-2019  christos Sync with HEAD
 1.3 21-Feb-2011  cegger branches: 1.3.2; 1.3.4; 1.3.8;
catch up to AR9285 changes
 1.2 20-Feb-2011  jmcneill catch up to AR9280 changes
 1.1 20-Feb-2011  jmcneill add module glue for ath_hal, ath, and if_ath_pci
 1.3.8.2 06-Jun-2011  jruoho Sync with HEAD.
 1.3.8.1 21-Feb-2011  jruoho file Makefile.inc was added on branch jruoho-x86intr on 2011-06-06 09:09:46 +0000
 1.3.4.2 05-Mar-2011  rmind sync with head
 1.3.4.1 21-Feb-2011  rmind file Makefile.inc was added on branch rmind-uvmplock on 2011-03-05 20:55:38 +0000
 1.3.2.2 05-Mar-2011  bouyer Sync with HEAD
 1.3.2.1 21-Feb-2011  bouyer file Makefile.inc was added on branch bouyer-quota2 on 2011-03-05 15:10:43 +0000
 1.1 20-Feb-2011  jmcneill branches: 1.1.2; 1.1.4; 1.1.8;
add module glue for ath_hal, ath, and if_ath_pci
 1.1.8.2 06-Jun-2011  jruoho Sync with HEAD.
 1.1.8.1 20-Feb-2011  jruoho file ath_hal.ldscript was added on branch jruoho-x86intr on 2011-06-06 09:09:47 +0000
 1.1.4.2 05-Mar-2011  rmind sync with head
 1.1.4.1 20-Feb-2011  rmind file ath_hal.ldscript was added on branch rmind-uvmplock on 2011-03-05 20:55:38 +0000
 1.1.2.2 05-Mar-2011  bouyer Sync with HEAD
 1.1.2.1 20-Feb-2011  bouyer file ath_hal.ldscript was added on branch bouyer-quota2 on 2011-03-05 15:10:43 +0000
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 28-Aug-2011  jmcneill branches: 1.1.54;
Split out ati_pcigart into a separate module so it can be shared with r128drm
 1.1.54.1 10-Jun-2019  christos Sync with HEAD
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 27-Dec-2010  jmcneill branches: 1.1.6; 1.1.62;
xc5k, au8522, and auvitek modules
 1.1.62.1 10-Jun-2019  christos Sync with HEAD
 1.1.6.2 05-Mar-2011  rmind sync with head
 1.1.6.1 27-Dec-2010  rmind file Makefile was added on branch rmind-uvmplock on 2011-03-05 20:55:38 +0000
 1.4 08-May-2019  isaki Merge isaki-audio2 branch, the overhaul of audio subsystem.
- Interrupt-oriented system rather than thread-oriented.
- Improve stability, quality and performance.
- Split playback and record cleanly. Improve halfduplex support.
- Many bugs are fixed including deadlocks, resource leaks, abuses, etc.
- Simplify audio filter mechanism. The encoding/channels/frequency
conversions are completely handled in the upper layer. So the hard-
ware driver only converts its hardware encoding (if necessary).
- audio_hw_if changes:
- Obsoletes query_encoding and add query_format instead.
- Obsoletes set_params and add set_format instead.
- Remove drain, setfd, mappage.
- The call sequences are changed.
- ioctl AUDIO_GETFD/SETFD, AUDIO_GETCHAN/SETCHAN are obsoleted.
- ioctl AUDIO_{QUERY,GET,SET}FORMAT are introduced.
- cleanup config attributes: au*conv and mulaw.
- All hardware drivers should follow it (I've done as much as possible).

Some file paths are changed:
- dev/audio.c -> dev/audio/audio.c (rewritten)
- dev/audiovar.h -> dev/audio/audiovar.h
- dev/audio_dai.h -> dev/audio/audio_dai.h
- dev/audio_if.h -> dev/audio/audio_if.h
- dev/audiobell.c -> dev/audio/audiobell.c
- dev/audiobellvar.h -> dev/audio/audiobellvar.h
- dev/mulaw.[ch] -> dev/audio/mulaw.[ch] + dev/audio/alaw.c
 1.3 17-Feb-2019  rin branches: 1.3.2;
Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.2 30-Jul-2017  nat branches: 1.2.2; 1.2.4; 1.2.8;
Audio now compiles with WARNS=5, so there is no need to specify WARNS=3.
 1.1 01-Jun-2017  pgoyette Add the modules for audio, midi, and sequencer
 1.2.8.1 10-Jun-2019  christos Sync with HEAD
 1.2.4.2 03-Dec-2017  jdolecek update from HEAD
 1.2.4.1 30-Jul-2017  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:49 +0000
 1.2.2.2 28-Aug-2017  skrll Sync with HEAD
 1.2.2.1 30-Jul-2017  skrll file Makefile was added on branch nick-nhusb on 2017-08-28 17:53:09 +0000
 1.3.2.1 07-May-2019  isaki Fix paths and flags.
- aurateconv is gone. mulaw is a part of audio inseparably.
 1.1 01-Jun-2017  pgoyette branches: 1.1.6; 1.1.10;
Add the modules for audio, midi, and sequencer
 1.1.10.2 03-Dec-2017  jdolecek update from HEAD
 1.1.10.1 01-Jun-2017  jdolecek file audio.ioconf was added on branch tls-maxphys on 2017-12-03 11:38:49 +0000
 1.1.6.2 28-Aug-2017  skrll Sync with HEAD
 1.1.6.1 01-Jun-2017  skrll file audio.ioconf was added on branch nick-nhusb on 2017-08-28 17:53:09 +0000
 1.3 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.2 09-Jan-2018  christos branches: 1.2.4;
fix autofs pseudo device
 1.1 09-Jan-2018  christos Merge autofs support from: Tomohiro Kusumi
XXX: Does not work yet
 1.2.4.1 10-Jun-2019  christos Sync with HEAD
 1.1 09-Jan-2018  christos fix autofs pseudo device
 1.3 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.2 09-Jul-2011  jmcneill branches: 1.2.54;
build auvitek_dtv.c too
 1.1 27-Dec-2010  jmcneill branches: 1.1.6;
xc5k, au8522, and auvitek modules
 1.1.6.2 05-Mar-2011  rmind sync with head
 1.1.6.1 27-Dec-2010  rmind file Makefile was added on branch rmind-uvmplock on 2011-03-05 20:55:38 +0000
 1.2.54.1 10-Jun-2019  christos Sync with HEAD
 1.1 27-Dec-2010  jmcneill branches: 1.1.6;
xc5k, au8522, and auvitek modules
 1.1.6.2 05-Mar-2011  rmind sync with head
 1.1.6.1 27-Dec-2010  rmind file auvitek.ioconf was added on branch rmind-uvmplock on 2011-03-05 20:55:39 +0000
 1.1 18-Aug-2021  christos Fix broken name
 1.1 01-Jan-2014  pgoyette branches: 1.1.4; 1.1.6; 1.1.10;
Create modules for software crypto components.
 1.1.10.2 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.1.10.1 01-Jan-2014  tls file Makefile was added on branch tls-maxphys on 2014-08-20 00:04:32 +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 01-Jan-2014  yamt file Makefile was added on branch yamt-pagecache on 2014-05-22 11:41:06 +0000
 1.1.4.2 18-May-2014  rmind sync with head
 1.1.4.1 01-Jan-2014  rmind file Makefile was added on branch rmind-smpnet on 2014-05-18 17:46:10 +0000
 1.2 03-Dec-2022  brad Split the BMP280 / BME280 driver into common code and create I2C and
SPI attachments.
 1.1 21-Nov-2022  brad A driver for the Bosch BMP280 / BME280 temperature, humidity and
atmospheric pressure sensor. This is an inexpensive to moderately
expensive chip available from a large number of places. The driver
supports all aspects of the two chips, except for the repeating read
mode which would allow for sub-second queries, such as fall detection
or perhaps even as an altimeter. This driver also only supports the
I2C interface and not the SPI interface.

The BME280, the one with humidity, is not fully tested at this point,
awaiting upon a breakout board and may not show proper humidity.
 1.2 03-Dec-2022  brad Split the BMP280 / BME280 driver into common code and create I2C and
SPI attachments.
 1.1 21-Nov-2022  brad A driver for the Bosch BMP280 / BME280 temperature, humidity and
atmospheric pressure sensor. This is an inexpensive to moderately
expensive chip available from a large number of places. The driver
supports all aspects of the two chips, except for the repeating read
mode which would allow for sub-second queries, such as fall detection
or perhaps even as an altimeter. This driver also only supports the
I2C interface and not the SPI interface.

The BME280, the one with humidity, is not fully tested at this point,
awaiting upon a breakout board and may not show proper humidity.
 1.1 03-Dec-2022  brad Split the BMP280 / BME280 driver into common code and create I2C and
SPI attachments.
 1.1 03-Dec-2022  brad Split the BMP280 / BME280 driver into common code and create I2C and
SPI attachments.
 1.6 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.5 07-Jun-2016  pgoyette branches: 1.5.18;
Create separate modules for i2c_bitbang and bpf_filter so these files
can be included in kernels which need them without also duplicating
them in other modules. Removes the duplicate symbols I found which
prevented loading i2c and bpf modules after having fixed PR 45125.
 1.4 27-Sep-2012  alnsn branches: 1.4.14;
Remove bpf_jit which was ported from FreeBSD recently.

It will soon be replaced with the new bpfjit kernel module.
 1.3 02-Aug-2012  matt branches: 1.3.2;
Add missing paren.
 1.2 01-Aug-2012  rmind Add BPF JIT compiler, currently supporting amd64 and i386. Code obtained
from FreeBSD. Also, make few BPF fixes and simplifications while here.
Note that bpf_jit_enable is false for now.

OK dyoung@, some feedback from matt@
 1.1 25-Jan-2010  pooka branches: 1.1.4;
add bpf kmod
 1.1.4.2 11-Mar-2010  yamt sync with head
 1.1.4.1 25-Jan-2010  yamt file Makefile was added on branch yamt-nfs-mp on 2010-03-11 15:04:24 +0000
 1.3.2.2 03-Dec-2017  jdolecek update from HEAD
 1.3.2.1 20-Nov-2012  tls Resync to 2012-11-19 00:00:00 UTC
 1.4.14.1 09-Jul-2016  skrll Sync with HEAD
 1.5.18.1 10-Jun-2019  christos Sync with HEAD
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 07-Jun-2016  pgoyette branches: 1.1.2; 1.1.18; 1.1.22;
Create separate modules for i2c_bitbang and bpf_filter so these files
can be included in kernels which need them without also duplicating
them in other modules. Removes the duplicate symbols I found which
prevented loading i2c and bpf modules after having fixed PR 45125.
 1.1.22.1 10-Jun-2019  christos Sync with HEAD
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 07-Jun-2016  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:49 +0000
 1.1.2.2 09-Jul-2016  skrll Sync with HEAD
 1.1.2.1 07-Jun-2016  skrll file Makefile was added on branch nick-nhusb on 2016-07-09 20:25:20 +0000
 1.1 27-Oct-2012  alnsn branches: 1.1.2; 1.1.4;
Add bpfjit and enable it for amd64.
 1.1.4.2 27-Oct-2012  alnsn Add bpfjit and enable it for amd64.
 1.1.4.1 27-Oct-2012  alnsn file Makefile was added on branch tls-maxphys on 2012-10-27 22:36:15 +0000
 1.1.2.2 30-Oct-2012  yamt sync with head
 1.1.2.1 27-Oct-2012  yamt file Makefile was added on branch yamt-pagecache on 2012-10-30 17:22:41 +0000
 1.1 16-Nov-2016  pgoyette branches: 1.1.2; 1.1.4; 1.1.18;
Build the newly-created bufq_* modules
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 16-Nov-2016  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:49 +0000
 1.1.4.2 07-Jan-2017  pgoyette Sync with HEAD. (Note that most of these changes are simply $NetBSD$
tag issues.)
 1.1.4.1 16-Nov-2016  pgoyette file Makefile was added on branch pgoyette-localcount on 2017-01-07 08:56:49 +0000
 1.1.2.2 05-Dec-2016  skrll Sync with HEAD
 1.1.2.1 16-Nov-2016  skrll file Makefile was added on branch nick-nhusb on 2016-12-05 10:55:27 +0000
 1.1 16-Nov-2016  pgoyette branches: 1.1.2; 1.1.4; 1.1.18;
Build the newly-created bufq_* modules
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 16-Nov-2016  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:49 +0000
 1.1.4.2 07-Jan-2017  pgoyette Sync with HEAD. (Note that most of these changes are simply $NetBSD$
tag issues.)
 1.1.4.1 16-Nov-2016  pgoyette file Makefile was added on branch pgoyette-localcount on 2017-01-07 08:56:49 +0000
 1.1.2.2 05-Dec-2016  skrll Sync with HEAD
 1.1.2.1 16-Nov-2016  skrll file Makefile was added on branch nick-nhusb on 2016-12-05 10:55:27 +0000
 1.1 16-Nov-2016  pgoyette branches: 1.1.2; 1.1.4; 1.1.18;
Build the newly-created bufq_* modules
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 16-Nov-2016  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:49 +0000
 1.1.4.2 07-Jan-2017  pgoyette Sync with HEAD. (Note that most of these changes are simply $NetBSD$
tag issues.)
 1.1.4.1 16-Nov-2016  pgoyette file Makefile was added on branch pgoyette-localcount on 2017-01-07 08:56:50 +0000
 1.1.2.2 05-Dec-2016  skrll Sync with HEAD
 1.1.2.1 16-Nov-2016  skrll file Makefile was added on branch nick-nhusb on 2016-12-05 10:55:27 +0000
 1.1 16-Nov-2016  pgoyette branches: 1.1.2; 1.1.4; 1.1.18;
Build the newly-created bufq_* modules
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 16-Nov-2016  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:50 +0000
 1.1.4.2 07-Jan-2017  pgoyette Sync with HEAD. (Note that most of these changes are simply $NetBSD$
tag issues.)
 1.1.4.1 16-Nov-2016  pgoyette file Makefile was added on branch pgoyette-localcount on 2017-01-07 08:56:50 +0000
 1.1.2.2 05-Dec-2016  skrll Sync with HEAD
 1.1.2.1 16-Nov-2016  skrll file Makefile was added on branch nick-nhusb on 2016-12-05 10:55:27 +0000
 1.2 21-Oct-2025  pgoyette Add WARNS=3 as needed for -Wsign-compare issues
 1.1 27-Sep-2016  pgoyette branches: 1.1.2; 1.1.4; 1.1.18;
Add module build infrastructure for ld and its attachments
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 27-Sep-2016  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:50 +0000
 1.1.4.2 04-Nov-2016  pgoyette Sync with HEAD
 1.1.4.1 27-Sep-2016  pgoyette file Makefile was added on branch pgoyette-localcount on 2016-11-04 14:49:18 +0000
 1.1.2.2 05-Oct-2016  skrll Sync with HEAD
 1.1.2.1 27-Sep-2016  skrll file Makefile was added on branch nick-nhusb on 2016-10-05 20:56:04 +0000
 1.1 27-Sep-2016  pgoyette branches: 1.1.2; 1.1.4; 1.1.18;
Add module build infrastructure for ld and its attachments
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 27-Sep-2016  jdolecek file cac.ioconf was added on branch tls-maxphys on 2017-12-03 11:38:50 +0000
 1.1.4.2 04-Nov-2016  pgoyette Sync with HEAD
 1.1.4.1 27-Sep-2016  pgoyette file cac.ioconf was added on branch pgoyette-localcount on 2016-11-04 14:49:18 +0000
 1.1.2.2 05-Oct-2016  skrll Sync with HEAD
 1.1.2.1 27-Sep-2016  skrll file cac.ioconf was added on branch nick-nhusb on 2016-10-05 20:56:04 +0000
 1.1 27-Sep-2016  pgoyette branches: 1.1.2; 1.1.4; 1.1.18;
Add module build infrastructure for ld and its attachments
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 27-Sep-2016  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:50 +0000
 1.1.4.2 04-Nov-2016  pgoyette Sync with HEAD
 1.1.4.1 27-Sep-2016  pgoyette file Makefile was added on branch pgoyette-localcount on 2016-11-04 14:49:18 +0000
 1.1.2.2 05-Oct-2016  skrll Sync with HEAD
 1.1.2.1 27-Sep-2016  skrll file Makefile was added on branch nick-nhusb on 2016-10-05 20:56:04 +0000
 1.1 27-Sep-2016  pgoyette branches: 1.1.2; 1.1.4; 1.1.18;
Add module build infrastructure for ld and its attachments
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 27-Sep-2016  jdolecek file cac_eisa.ioconf was added on branch tls-maxphys on 2017-12-03 11:38:50 +0000
 1.1.4.2 04-Nov-2016  pgoyette Sync with HEAD
 1.1.4.1 27-Sep-2016  pgoyette file cac_eisa.ioconf was added on branch pgoyette-localcount on 2016-11-04 14:49:18 +0000
 1.1.2.2 05-Oct-2016  skrll Sync with HEAD
 1.1.2.1 27-Sep-2016  skrll file cac_eisa.ioconf was added on branch nick-nhusb on 2016-10-05 20:56:04 +0000
 1.1 27-Sep-2016  pgoyette branches: 1.1.2; 1.1.4; 1.1.18;
Add module build infrastructure for ld and its attachments
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 27-Sep-2016  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:50 +0000
 1.1.4.2 04-Nov-2016  pgoyette Sync with HEAD
 1.1.4.1 27-Sep-2016  pgoyette file Makefile was added on branch pgoyette-localcount on 2016-11-04 14:49:18 +0000
 1.1.2.2 05-Oct-2016  skrll Sync with HEAD
 1.1.2.1 27-Sep-2016  skrll file Makefile was added on branch nick-nhusb on 2016-10-05 20:56:04 +0000
 1.1 27-Sep-2016  pgoyette branches: 1.1.2; 1.1.4; 1.1.18;
Add module build infrastructure for ld and its attachments
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 27-Sep-2016  jdolecek file cac_pci.ioconf was added on branch tls-maxphys on 2017-12-03 11:38:50 +0000
 1.1.4.2 04-Nov-2016  pgoyette Sync with HEAD
 1.1.4.1 27-Sep-2016  pgoyette file cac_pci.ioconf was added on branch pgoyette-localcount on 2016-11-04 14:49:18 +0000
 1.1.2.2 05-Oct-2016  skrll Sync with HEAD
 1.1.2.1 27-Sep-2016  skrll file cac_pci.ioconf was added on branch nick-nhusb on 2016-10-05 20:56:04 +0000
 1.1 01-Jan-2014  pgoyette branches: 1.1.4; 1.1.6; 1.1.10;
Create modules for software crypto components.
 1.1.10.2 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.1.10.1 01-Jan-2014  tls file Makefile was added on branch tls-maxphys on 2014-08-20 00:04:32 +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 01-Jan-2014  yamt file Makefile was added on branch yamt-pagecache on 2014-05-22 11:41:06 +0000
 1.1.4.2 18-May-2014  rmind sync with head
 1.1.4.1 01-Jan-2014  rmind file Makefile was added on branch rmind-smpnet on 2014-05-18 17:46:10 +0000
 1.1 01-Jan-2014  pgoyette branches: 1.1.4; 1.1.6; 1.1.10;
Create modules for software crypto components.
 1.1.10.2 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.1.10.1 01-Jan-2014  tls file Makefile was added on branch tls-maxphys on 2014-08-20 00:04:32 +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 01-Jan-2014  yamt file Makefile was added on branch yamt-pagecache on 2014-05-22 11:41:06 +0000
 1.1.4.2 18-May-2014  rmind sync with head
 1.1.4.1 01-Jan-2014  rmind file Makefile was added on branch rmind-smpnet on 2014-05-18 17:46:10 +0000
 1.3 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.2 20-Aug-2015  christos branches: 1.2.18;
Add ioconf entries to the pseudo-devices.
 1.1 05-Jun-2009  haad branches: 1.1.2; 1.1.24; 1.1.42;
Add work in support for compiling ccd and cgd drivers as a modules. I forgot
to committ when I have written device module autoloading stuff.
 1.1.42.1 22-Sep-2015  skrll Sync with HEAD
 1.1.24.1 03-Dec-2017  jdolecek update from HEAD
 1.1.2.2 20-Jun-2009  yamt sync with head
 1.1.2.1 05-Jun-2009  yamt file Makefile was added on branch yamt-nfs-mp on 2009-06-20 07:20:32 +0000
 1.2.18.1 10-Jun-2019  christos Sync with HEAD
 1.1 20-Aug-2015  christos branches: 1.1.2; 1.1.18;
Add ioconf entries to the pseudo-devices.
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 20-Aug-2015  jdolecek file ccd.ioconf was added on branch tls-maxphys on 2017-12-03 11:38:50 +0000
 1.1.2.2 22-Sep-2015  skrll Sync with HEAD
 1.1.2.1 20-Aug-2015  skrll file ccd.ioconf was added on branch nick-nhusb on 2015-09-22 12:06:08 +0000
 1.3 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.2 19-May-2008  ad branches: 1.2.2; 1.2.88;
Replicate drm build fix, although this is not enabled by default yet.
 1.1 03-May-2008  ad branches: 1.1.2; 1.1.4; 1.1.6;
cd9660 module as an example of a file system. Not enabled until we sort
out installation properly.
 1.1.6.3 04-Jun-2008  yamt sync with head
 1.1.6.2 18-May-2008  yamt sync with head.
 1.1.6.1 03-May-2008  yamt file Makefile was added on branch yamt-pf42 on 2008-05-18 12:35:26 +0000
 1.1.4.3 04-May-2009  yamt sync with head.
 1.1.4.2 16-May-2008  yamt sync with head.
 1.1.4.1 03-May-2008  yamt file Makefile was added on branch yamt-nfs-mp on 2008-05-16 02:25:40 +0000
 1.1.2.1 23-Jun-2008  wrstuden Sync w/ -current. 34 merge conflicts to follow.
 1.2.88.1 10-Jun-2019  christos Sync with HEAD
 1.2.2.2 02-Jun-2008  mjf Sync with HEAD.
 1.2.2.1 19-May-2008  mjf file Makefile was added on branch mjf-devfs2 on 2008-06-02 13:24:21 +0000
 1.3 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.2 20-Aug-2015  christos branches: 1.2.18;
Add ioconf entries to the pseudo-devices.
 1.1 05-Jun-2009  haad branches: 1.1.2; 1.1.24; 1.1.42;
Add work in support for compiling ccd and cgd drivers as a modules. I forgot
to committ when I have written device module autoloading stuff.
 1.1.42.1 22-Sep-2015  skrll Sync with HEAD
 1.1.24.1 03-Dec-2017  jdolecek update from HEAD
 1.1.2.2 20-Jun-2009  yamt sync with head
 1.1.2.1 05-Jun-2009  yamt file Makefile was added on branch yamt-nfs-mp on 2009-06-20 07:20:33 +0000
 1.2.18.1 10-Jun-2019  christos Sync with HEAD
 1.1 20-Aug-2015  christos branches: 1.1.2; 1.1.18;
Add ioconf entries to the pseudo-devices.
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 20-Aug-2015  jdolecek file cgd.ioconf was added on branch tls-maxphys on 2017-12-03 11:38:50 +0000
 1.1.2.2 22-Sep-2015  skrll Sync with HEAD
 1.1.2.1 20-Aug-2015  skrll file cgd.ioconf was added on branch nick-nhusb on 2015-09-22 12:06:08 +0000
 1.5 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.4 11-Jan-2015  hannken branches: 1.4.18;
Change chfs from hashlist to vcache.
 1.3 12-Apr-2012  ttoth branches: 1.3.2; 1.3.4; 1.3.18;
using chtype on media instead of vtype
debug.c deleted
 1.2 04-Feb-2012  christos no -g on default install
if you want debugging, you know where to put it.
 1.1 24-Nov-2011  ahoka branches: 1.1.2;
Add module glue for CHFS.
 1.1.2.2 29-Apr-2012  mrg sync to latest -current.
 1.1.2.1 18-Feb-2012  mrg merge to -current.
 1.3.18.1 06-Apr-2015  skrll Sync with HEAD
 1.3.4.1 03-Dec-2017  jdolecek update from HEAD
 1.3.2.2 17-Apr-2012  yamt sync with head
 1.3.2.1 12-Apr-2012  yamt file Makefile was added on branch yamt-pagecache on 2012-04-17 00:08:35 +0000
 1.4.18.1 10-Jun-2019  christos Sync with HEAD
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 28-Dec-2010  jmcneill branches: 1.1.6; 1.1.62;
add "ir" and "cir" modules
 1.1.62.1 10-Jun-2019  christos Sync with HEAD
 1.1.6.2 05-Mar-2011  rmind sync with head
 1.1.6.1 28-Dec-2010  rmind file Makefile was added on branch rmind-uvmplock on 2011-03-05 20:55:39 +0000
 1.1 28-Dec-2010  jmcneill branches: 1.1.6;
add "ir" and "cir" modules
 1.1.6.2 05-Mar-2011  rmind sync with head
 1.1.6.1 28-Dec-2010  rmind file cir.ioconf was added on branch rmind-uvmplock on 2011-03-05 20:55:39 +0000
 1.2 27-Jan-2019  pgoyette Merge the [pgoyette-compat] branch
 1.1 07-Dec-2015  pgoyette branches: 1.1.2; 1.1.18; 1.1.20; 1.1.22;
Modularize the clockctl pseudo-device and link to the build.
 1.1.22.1 10-Jun-2019  christos Sync with HEAD
 1.1.20.3 24-Sep-2018  pgoyette Revert previous. We need a MP-safe way to determine _at_runtime_ if
the NTP option was included or not.
 1.1.20.2 24-Sep-2018  pgoyette For clockctl module purposes, assume that NTP is available.

XXX Will revisit this later
 1.1.20.1 21-Mar-2018  pgoyette Split the compat_50 code out from the dev/clockctl driver and include
it in the compat_50 and compat modules.
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 07-Dec-2015  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:50 +0000
 1.1.2.2 27-Dec-2015  skrll Sync with HEAD (as of 26th Dec)
 1.1.2.1 07-Dec-2015  skrll file Makefile was added on branch nick-nhusb on 2015-12-27 12:10:05 +0000
 1.1 07-Dec-2015  pgoyette branches: 1.1.2; 1.1.18;
Modularize the clockctl pseudo-device and link to the build.
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 07-Dec-2015  jdolecek file clockctl.ioconf was added on branch tls-maxphys on 2017-12-03 11:38:50 +0000
 1.1.2.2 27-Dec-2015  skrll Sync with HEAD (as of 26th Dec)
 1.1.2.1 07-Dec-2015  skrll file clockctl.ioconf was added on branch nick-nhusb on 2015-12-27 12:10:05 +0000
 1.4 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.3 20-Aug-2015  christos branches: 1.3.18;
Add ioconf entries to the pseudo-devices.
 1.2 26-Apr-2012  christos branches: 1.2.2; 1.2.16;
split the coda module in a device one, and a vfs one so that it works.
 1.1 28-Jun-2008  rumble branches: 1.1.2; 1.1.4; 1.1.8; 1.1.20; 1.1.38; 1.1.42;
Add of bunch of file system modules.
 1.1.42.1 29-Apr-2012  mrg sync to latest -current.
 1.1.38.1 23-May-2012  yamt sync with head.
 1.1.20.2 04-May-2009  yamt sync with head.
 1.1.20.1 28-Jun-2008  yamt file Makefile was added on branch yamt-nfs-mp on 2009-05-04 08:14:06 +0000
 1.1.8.2 18-Sep-2008  wrstuden Sync with wrstuden-revivesa-base-2.
 1.1.8.1 28-Jun-2008  wrstuden file Makefile was added on branch wrstuden-revivesa on 2008-09-18 04:36:58 +0000
 1.1.4.2 03-Jul-2008  simonb Sync with head.
 1.1.4.1 28-Jun-2008  simonb file Makefile was added on branch simonb-wapbl on 2008-07-03 18:38:19 +0000
 1.1.2.2 29-Jun-2008  mjf Sync with HEAD.
 1.1.2.1 28-Jun-2008  mjf file Makefile was added on branch mjf-devfs2 on 2008-06-29 09:33:16 +0000
 1.2.16.1 22-Sep-2015  skrll Sync with HEAD
 1.2.2.1 03-Dec-2017  jdolecek update from HEAD
 1.3.18.1 10-Jun-2019  christos Sync with HEAD
 1.1 20-Aug-2015  christos branches: 1.1.2; 1.1.18;
Add ioconf entries to the pseudo-devices.
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 20-Aug-2015  jdolecek file coda.ioconf was added on branch tls-maxphys on 2017-12-03 11:38:50 +0000
 1.1.2.2 22-Sep-2015  skrll Sync with HEAD
 1.1.2.1 20-Aug-2015  skrll file coda.ioconf was added on branch nick-nhusb on 2015-09-22 12:06:08 +0000
 1.3 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.2 20-Aug-2015  christos branches: 1.2.18;
Add ioconf entries to the pseudo-devices.
 1.1 28-Jun-2008  rumble branches: 1.1.2; 1.1.4; 1.1.8; 1.1.20; 1.1.48; 1.1.68;
Add of bunch of file system modules.
 1.1.68.1 22-Sep-2015  skrll Sync with HEAD
 1.1.48.1 03-Dec-2017  jdolecek update from HEAD
 1.1.20.2 04-May-2009  yamt sync with head.
 1.1.20.1 28-Jun-2008  yamt file Makefile was added on branch yamt-nfs-mp on 2009-05-04 08:14:07 +0000
 1.1.8.2 18-Sep-2008  wrstuden Sync with wrstuden-revivesa-base-2.
 1.1.8.1 28-Jun-2008  wrstuden file Makefile was added on branch wrstuden-revivesa on 2008-09-18 04:36:58 +0000
 1.1.4.2 03-Jul-2008  simonb Sync with head.
 1.1.4.1 28-Jun-2008  simonb file Makefile was added on branch simonb-wapbl on 2008-07-03 18:38:19 +0000
 1.1.2.2 29-Jun-2008  mjf Sync with HEAD.
 1.1.2.1 28-Jun-2008  mjf file Makefile was added on branch mjf-devfs2 on 2008-06-29 09:33:16 +0000
 1.2.18.1 10-Jun-2019  christos Sync with HEAD
 1.1 20-Aug-2015  christos branches: 1.1.2; 1.1.18;
Add ioconf entries to the pseudo-devices.
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 20-Aug-2015  jdolecek file coda5.ioconf was added on branch tls-maxphys on 2017-12-03 11:38:50 +0000
 1.1.2.2 22-Sep-2015  skrll Sync with HEAD
 1.1.2.1 20-Aug-2015  skrll file coda5.ioconf was added on branch nick-nhusb on 2015-09-22 12:06:09 +0000
 1.2 27-Jan-2019  pgoyette branches: 1.2.4;
Merge the [pgoyette-compat] branch
 1.1 17-Apr-2018  pgoyette branches: 1.1.2;
file Makefile was initially added on branch pgoyette-compat.
 1.1.2.1 17-Apr-2018  pgoyette First pass at compat modules for 4.3BSD, NetBSD-0.9, and NetBSD-1.0

XXX Still need to deal with the sysctl stuff and other code shared
XXX between 09 and 43
 1.2.4.2 10-Jun-2019  christos Sync with HEAD
 1.2.4.1 27-Jan-2019  christos file Makefile was added on branch phil-wifi on 2019-06-10 22:09:13 +0000
 1.2 27-Jan-2019  pgoyette branches: 1.2.4;
Merge the [pgoyette-compat] branch
 1.1 17-Apr-2018  pgoyette branches: 1.1.2;
file Makefile was initially added on branch pgoyette-compat.
 1.1.2.1 17-Apr-2018  pgoyette First pass at compat modules for 4.3BSD, NetBSD-0.9, and NetBSD-1.0

XXX Still need to deal with the sysctl stuff and other code shared
XXX between 09 and 43
 1.2.4.2 10-Jun-2019  christos Sync with HEAD
 1.2.4.1 27-Jan-2019  christos file Makefile was added on branch phil-wifi on 2019-06-10 22:09:13 +0000
 1.3 29-May-2024  mlelstv The module also needs the syscall for old dup3.
 1.2 05-Sep-2023  christos Add missing file
 1.1 19-Dec-2022  pgoyette Create compat_100 module infrastructure now that we have branched
for NetBSD-10
 1.2 20-May-2024  christos Rename dup3110 to dup3100 to match historical practice for NetBSD-11,
because we already have kevent100. Fix compat_dup3 to belong in compat_100
not compat_110.
 1.1 19-May-2024  christos version dup3
 1.2 27-Jan-2019  pgoyette branches: 1.2.4;
Merge the [pgoyette-compat] branch
 1.1 31-Mar-2018  pgoyette branches: 1.1.2;
file Makefile was initially added on branch pgoyette-compat.
 1.1.2.1 31-Mar-2018  pgoyette create the compat_12 module
 1.2.4.2 10-Jun-2019  christos Sync with HEAD
 1.2.4.1 27-Jan-2019  christos file Makefile was added on branch phil-wifi on 2019-06-10 22:09:13 +0000
 1.5 17-Jun-2024  mrg fix the m68k compat_13 build.

include Makefile.assym to generate assym.h.
use -I. and -x assembler-with-cpp to actually use cpp and find assym.h.
 1.4 17-Jun-2024  pgoyette Ooops missed a source file!
 1.3 16-Jun-2024  pgoyette Introduce sys/modules/Makefile.compat and hook some compat_1[36]
machdep code into the modules. kern/58346
 1.2 27-Jan-2019  pgoyette branches: 1.2.4; 1.2.32;
Merge the [pgoyette-compat] branch
 1.1 30-Mar-2018  pgoyette branches: 1.1.2;
file Makefile was initially added on branch pgoyette-compat.
 1.1.2.2 13-Sep-2018  pgoyette Include required MD code for amd64
 1.1.2.1 30-Mar-2018  pgoyette Add compat_13 module
 1.2.32.1 22-Jun-2024  martin Pull up following revision(s) (requested by pgoyette in ticket #724):

sys/modules/compat_netbsd32_16/Makefile: revision 1.5
sys/arch/powerpc/powerpc/compat_16_machdep.c: revision 1.25
sys/arch/powerpc/powerpc/compat_16_machdep.c: revision 1.26
sys/modules/compat_16/Makefile: revision 1.3
sys/modules/compat_netbsd32_13/Makefile: revision 1.5
sys/modules/compat_16/Makefile: revision 1.4
sys/arch/sun2/sun2/genassym.cf: revision 1.17
sys/arch/sun2/sun2/enable.h: revision 1.5
sys/modules/compat_13/Makefile: revision 1.3
sys/modules/compat_13/Makefile: revision 1.4
sys/modules/compat_13/Makefile: revision 1.5
sys/arch/mips/mips/netbsd32_machdep_16.c: revision 1.8
sys/modules/Makefile.compat: revision 1.1
sys/arch/mips/mips/netbsd32_machdep_13.c: revision 1.4
share/mk/bsd.kmodule.mk: revision 1.86
sys/arch/aarch64/aarch64/netbsd32_machdep_16.c: revision 1.4
sys/arch/powerpc/powerpc/compat_13_machdep.c: revision 1.23
sys/arch/aarch64/aarch64/netbsd32_machdep_13.c: revision 1.4

Import AFLAGS to allow processing of assembler files in modules.
Prerequisite for kern/583346.

Introduce sys/modules/Makefile.compat and hook some compat_1[36]
machdep code into the modules. kern/58346

Ooops missed a source file!

Proteect #include of kernel options files with #ifdef _KERNEL_OPT

XXX Add to existing 10.0 and 9.0 tickets for kern/583346

Include required headers

Add required include for compat_16 machdep code

fix the m68k compat_13 build.

include Makefile.assym to generate assym.h.
use -I. and -x assembler-with-cpp to actually use cpp and find assym.h.
also apply m68k assym.h fix here as well as compat_13.

powerpc64: Provide dummy stubs for compat1[36]
as done for amd64. We haven't had working userland for powerpc64,
and therefore compatible to 1.[36] is only useful for netbsd32.

Fix build failure for evbppc64 for PR kern/58346 (my bug!).
sun2/genassym.cf: Skip KERNBASE for _MODULE
as it is not a compile-time constant; see sun2/vmparam.h.

It should not be, and is not actually, used for modules.

PR kern/58346

sun2/enable.h: Fix -Wold-style-definition for WARNS=5 build as modules
Finally fix sun2 build for PR kern/58346
 1.2.4.2 10-Jun-2019  christos Sync with HEAD
 1.2.4.1 27-Jan-2019  christos file Makefile was added on branch phil-wifi on 2019-06-10 22:09:13 +0000
 1.2 27-Jan-2019  pgoyette branches: 1.2.4;
Merge the [pgoyette-compat] branch
 1.1 30-Mar-2018  pgoyette branches: 1.1.2;
file Makefile was initially added on branch pgoyette-compat.
 1.1.2.1 30-Mar-2018  pgoyette Extract compat_14 stuff into its own module
 1.2.4.2 10-Jun-2019  christos Sync with HEAD
 1.2.4.1 27-Jan-2019  christos file Makefile was added on branch phil-wifi on 2019-06-10 22:09:14 +0000
 1.4 17-Jun-2024  mrg also apply m68k assym.h fix here as well as compat_13.
 1.3 16-Jun-2024  pgoyette Introduce sys/modules/Makefile.compat and hook some compat_1[36]
machdep code into the modules. kern/58346
 1.2 27-Jan-2019  pgoyette branches: 1.2.4; 1.2.32;
Merge the [pgoyette-compat] branch
 1.1 30-Mar-2018  pgoyette branches: 1.1.2;
file Makefile was initially added on branch pgoyette-compat.
 1.1.2.1 30-Mar-2018  pgoyette Forgot a file!
 1.2.32.1 22-Jun-2024  martin Pull up following revision(s) (requested by pgoyette in ticket #724):

sys/modules/compat_netbsd32_16/Makefile: revision 1.5
sys/arch/powerpc/powerpc/compat_16_machdep.c: revision 1.25
sys/arch/powerpc/powerpc/compat_16_machdep.c: revision 1.26
sys/modules/compat_16/Makefile: revision 1.3
sys/modules/compat_netbsd32_13/Makefile: revision 1.5
sys/modules/compat_16/Makefile: revision 1.4
sys/arch/sun2/sun2/genassym.cf: revision 1.17
sys/arch/sun2/sun2/enable.h: revision 1.5
sys/modules/compat_13/Makefile: revision 1.3
sys/modules/compat_13/Makefile: revision 1.4
sys/modules/compat_13/Makefile: revision 1.5
sys/arch/mips/mips/netbsd32_machdep_16.c: revision 1.8
sys/modules/Makefile.compat: revision 1.1
sys/arch/mips/mips/netbsd32_machdep_13.c: revision 1.4
share/mk/bsd.kmodule.mk: revision 1.86
sys/arch/aarch64/aarch64/netbsd32_machdep_16.c: revision 1.4
sys/arch/powerpc/powerpc/compat_13_machdep.c: revision 1.23
sys/arch/aarch64/aarch64/netbsd32_machdep_13.c: revision 1.4

Import AFLAGS to allow processing of assembler files in modules.
Prerequisite for kern/583346.

Introduce sys/modules/Makefile.compat and hook some compat_1[36]
machdep code into the modules. kern/58346

Ooops missed a source file!

Proteect #include of kernel options files with #ifdef _KERNEL_OPT

XXX Add to existing 10.0 and 9.0 tickets for kern/583346

Include required headers

Add required include for compat_16 machdep code

fix the m68k compat_13 build.

include Makefile.assym to generate assym.h.
use -I. and -x assembler-with-cpp to actually use cpp and find assym.h.
also apply m68k assym.h fix here as well as compat_13.

powerpc64: Provide dummy stubs for compat1[36]
as done for amd64. We haven't had working userland for powerpc64,
and therefore compatible to 1.[36] is only useful for netbsd32.

Fix build failure for evbppc64 for PR kern/58346 (my bug!).
sun2/genassym.cf: Skip KERNBASE for _MODULE
as it is not a compile-time constant; see sun2/vmparam.h.

It should not be, and is not actually, used for modules.

PR kern/58346

sun2/enable.h: Fix -Wold-style-definition for WARNS=5 build as modules
Finally fix sun2 build for PR kern/58346
 1.2.4.2 10-Jun-2019  christos Sync with HEAD
 1.2.4.1 27-Jan-2019  christos file Makefile was added on branch phil-wifi on 2019-06-10 22:09:14 +0000
 1.4 26-Sep-2019  christos Kill WARNS = 3 from all the modules that now compile cleanly.
 1.3 17-Feb-2019  rin branches: 1.3.4;
Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.2 27-Jan-2019  pgoyette Merge the [pgoyette-compat] branch
 1.1 30-Mar-2018  pgoyette branches: 1.1.2;
file Makefile was initially added on branch pgoyette-compat.
 1.1.2.1 30-Mar-2018  pgoyette Forgot to commit this previously.
 1.3.4.3 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.3.4.2 10-Jun-2019  christos Sync with HEAD
 1.3.4.1 17-Feb-2019  christos file Makefile was added on branch phil-wifi on 2019-06-10 22:09:14 +0000
 1.4 26-Sep-2019  christos Kill WARNS = 3 from all the modules that now compile cleanly.
 1.3 17-Feb-2019  rin branches: 1.3.4;
Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.2 27-Jan-2019  pgoyette Merge the [pgoyette-compat] branch
 1.1 28-Mar-2018  pgoyette branches: 1.1.2;
file Makefile was initially added on branch pgoyette-compat.
 1.1.2.3 29-Mar-2018  pgoyette Rename usb_30_subr.c --> usb_subr_30.c for consistency with others
 1.1.2.2 28-Mar-2018  pgoyette Split vnd compat_30 code out of the main driver and into the compat_30
module
 1.1.2.1 28-Mar-2018  pgoyette Initial pass at a compat_30 module.

Still needs some work for dev/vnd and various dev/usb/*
 1.3.4.3 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.3.4.2 10-Jun-2019  christos Sync with HEAD
 1.3.4.1 17-Feb-2019  christos file Makefile was added on branch phil-wifi on 2019-06-10 22:09:14 +0000
 1.2 27-Jan-2019  pgoyette branches: 1.2.4;
Merge the [pgoyette-compat] branch
 1.1 27-Mar-2018  pgoyette branches: 1.1.2;
file Makefile was initially added on branch pgoyette-compat.
 1.1.2.1 27-Mar-2018  pgoyette Create a compat_40 module
 1.2.4.2 10-Jun-2019  christos Sync with HEAD
 1.2.4.1 27-Jan-2019  christos file Makefile was added on branch phil-wifi on 2019-06-10 22:09:14 +0000
 1.4 26-Sep-2019  christos Kill WARNS = 3 from all the modules that now compile cleanly.
 1.3 17-Feb-2019  rin branches: 1.3.4;
Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.2 27-Jan-2019  pgoyette Merge the [pgoyette-compat] branch
 1.1 17-Apr-2018  pgoyette branches: 1.1.2;
file Makefile was initially added on branch pgoyette-compat.
 1.1.2.1 17-Apr-2018  pgoyette First pass at compat modules for 4.3BSD, NetBSD-0.9, and NetBSD-1.0

XXX Still need to deal with the sysctl stuff and other code shared
XXX between 09 and 43
 1.3.4.3 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.3.4.2 10-Jun-2019  christos Sync with HEAD
 1.3.4.1 17-Feb-2019  christos file Makefile was added on branch phil-wifi on 2019-06-10 22:09:14 +0000
 1.7 21-Jan-2020  pgoyette Split the compat_50 module into two, separating the QUOTA-related
stuff from the rest of the module. This allows loading of the
(main) compat_50 module on kernels that don't include ``options
QUOTA''.

Welcome to 9.99.40 !

Addresses PR kern/54875
 1.6 26-Sep-2019  christos branches: 1.6.2;
Limit -Wno-sign-compare to only rtsock_50.c which by virtue of including
rtsock_shared.c and using m_len is a mess to fix.
 1.5 17-Jun-2019  christos Add -DQUOTA (Paul Goyette)
 1.4 15-Apr-2019  pgoyette branches: 1.4.4;
Split the COMPAT_50 socket-timeout stuff out of kern/uipc_socket.c
and into its own source file, which is now included in the compat_50
module.

(Not sure how this got missed during the original [pgoyette-compat] work)
 1.3 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.2 27-Jan-2019  pgoyette Merge the [pgoyette-compat] branch
 1.1 19-Mar-2018  pgoyette branches: 1.1.2;
file Makefile was initially added on branch pgoyette-compat.
 1.1.2.15 23-Jan-2019  pgoyette Revert previous. Both opencrypto/ocryptodev and raidframe/rf_compat_xx
already exist in their own modules and do not need to be part of the
compat_{50,80} modules.
 1.1.2.14 23-Jan-2019  pgoyette Ensure that all the compat code gets into the appropriate modules, even
compat code that doesn't live in sys/compat
 1.1.2.13 15-Jan-2019  pgoyette As far as I can tell, neither SCTP not NET_MPSAFE are enabled by default
on any architecture, so they should not be enabled by default in any of
the modules.
 1.1.2.12 15-Jan-2019  pgoyette Add some #defines for rtsock_50
 1.1.2.11 03-Oct-2018  pgoyette There are version-specific raid modules so don't include their code in
the "generic" version-specific module.
 1.1.2.10 23-Sep-2018  pgoyette Split the compat_crypto_50 from the rest of the crypto module

Cleanup some stuff left over from similar changes to raid modules.
 1.1.2.9 19-Sep-2018  pgoyette Split out the vnd COMPAT_50 code
 1.1.2.8 13-Sep-2018  pgoyette Include rtsock_50.c in the build for compat_50 module. It might be
reachable via the rtsock code, but there's stuff in the compat_09
module that refers to the _50 stuff. Including this allows us to
modload the compat_09 module.
 1.1.2.7 24-Mar-2018  pgoyette Move the compat_50-specific code out of wscons/wsevent.c into its own
source file, which is now part of the compat_50 module.
 1.1.2.6 24-Mar-2018  pgoyette Add fs/puffs compat_50 to the modules
 1.1.2.5 24-Mar-2018  pgoyette Separate the compat_50 and compat_80 dispatching code from the main
body of raidframe, and place into the appropriate compat modules.

Enable building of the compat_80 module.
 1.1.2.4 23-Mar-2018  pgoyette Handle the compat_50 stuff for opencrypto/cryptodev
 1.1.2.3 21-Mar-2018  pgoyette Move if_spppsubr compat code into the compat50 module.

More prep work for compat80 module (for raidframe)
 1.1.2.2 21-Mar-2018  pgoyette Split the compat_50 code out from the dev/clockctl driver and include
it in the compat_50 and compat modules.
 1.1.2.1 19-Mar-2018  pgoyette Initial pass at a COMPAT_50 module. More to come.
 1.4.4.3 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.4.4.2 10-Jun-2019  christos Sync with HEAD
 1.4.4.1 15-Apr-2019  christos file Makefile was added on branch phil-wifi on 2019-06-10 22:09:14 +0000
 1.6.2.1 25-Jan-2020  ad Sync with head.
 1.1 21-Jan-2020  pgoyette branches: 1.1.6;
Split the compat_50 module into two, separating the QUOTA-related
stuff from the rest of the module. This allows loading of the
(main) compat_50 module on kernels that don't include ``options
QUOTA''.

Welcome to 9.99.40 !

Addresses PR kern/54875
 1.1.6.2 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.1.6.1 21-Jan-2020  martin file Makefile was added on branch phil-wifi on 2020-04-13 08:05:06 +0000
 1.2 27-Jan-2019  pgoyette branches: 1.2.4;
Merge the [pgoyette-compat] branch
 1.1 15-Mar-2018  pgoyette branches: 1.1.2;
file Makefile was initially added on branch pgoyette-compat.
 1.1.2.13 31-Mar-2018  pgoyette Re-enable inclusion of CPU_UCODE for i386/amd64. Even though it won't
build correctly on XEN (won't use the XEN ABI), it works fine on real
hardware.
 1.1.2.12 26-Mar-2018  pgoyette For now, disable CPU_UCODE stuff since we can't build it properly
with XEN. Re-enable it after we get fix for PR kern/53130
 1.1.2.11 25-Mar-2018  pgoyette Include compat code in the modules
 1.1.2.10 25-Mar-2018  pgoyette Undo previous. Clearly this is not the right thing to do! The ucode
support should already be in the kernel.
 1.1.2.9 25-Mar-2018  pgoyette Include the cpu_ucode*.c files in the module for x86 machines
 1.1.2.8 25-Mar-2018  pgoyette Add missing kern_cpu_60.c to the module
 1.1.2.7 18-Mar-2018  pgoyette Import compat_60 changes for dev/ccd
 1.1.2.6 18-Mar-2018  pgoyette Move closer to a complete compat_60 module. All that remains is some
tty stuff and some ccd ioctl()s.
 1.1.2.5 17-Mar-2018  pgoyette Back out changes on the branch related to kernel microcode compat.

Christos didn't like the way it was done, so waiting for a better
approach/implementation.
 1.1.2.4 17-Mar-2018  pgoyette Move closer to having a compat_60 module
 1.1.2.3 16-Mar-2018  pgoyette Move closer to getting a compat_60 module - still needs more work
 1.1.2.2 16-Mar-2018  pgoyette Add note/reminder to deal with setting of CPU_UCODE option based on
machine architecture. It's needed for i386, amd64, and XEN3_DOM0
(but _not_ needed for XEN3_DOMU).
 1.1.2.1 15-Mar-2018  pgoyette Initial set-up for compat_60 module
 1.2.4.2 10-Jun-2019  christos Sync with HEAD
 1.2.4.1 27-Jan-2019  christos file Makefile was added on branch phil-wifi on 2019-06-10 22:09:15 +0000
 1.2 27-Jan-2019  pgoyette branches: 1.2.4;
Merge the [pgoyette-compat] branch
 1.1 15-Mar-2018  pgoyette branches: 1.1.2;
file Makefile was initially added on branch pgoyette-compat.
 1.1.2.2 15-Mar-2018  pgoyette Use correct module name
 1.1.2.1 15-Mar-2018  pgoyette Create a separate module for COMPAT_70 code only, and untangle the
70 compat code from the current.
 1.2.4.2 10-Jun-2019  christos Sync with HEAD
 1.2.4.1 27-Jan-2019  christos file Makefile was added on branch phil-wifi on 2019-06-10 22:09:15 +0000
 1.5 26-Sep-2019  christos Kill WARNS = 3 from all the modules that now compile cleanly.
 1.4 22-Jun-2019  pgoyette Set WARNS=3 - signed-vs-unsigned integer compare
 1.3 22-Jun-2019  pgoyette Add the if_media_80 source file to the module. The module's initialization
code was already updated.
 1.2 27-Jan-2019  pgoyette branches: 1.2.4;
Merge the [pgoyette-compat] branch
 1.1 21-Mar-2018  pgoyette branches: 1.1.2;
file Makefile was initially added on branch pgoyette-compat.
 1.1.2.6 23-Jan-2019  pgoyette Revert previous. Both opencrypto/ocryptodev and raidframe/rf_compat_xx
already exist in their own modules and do not need to be part of the
compat_{50,80} modules.
 1.1.2.5 23-Jan-2019  pgoyette Ensure that all the compat code gets into the appropriate modules, even
compat code that doesn't live in sys/compat
 1.1.2.4 03-Oct-2018  pgoyette There are version-specific raid modules so don't include their code in
the "generic" version-specific module.
 1.1.2.3 03-Apr-2018  pgoyette Remove fixed allocation of modules' "required" lists (previously
limited to MAXMODDEPS entries). Update the modctl(MODCTL_STAT)
syscall to return the required data in a new format, and retain
the previous data format in MODCTL_OSTAT. Update the compat_80
and compat_netbsd32 modules as needed.
 1.1.2.2 24-Mar-2018  pgoyette Separate the compat_50 and compat_80 dispatching code from the main
body of raidframe, and place into the appropriate compat modules.

Enable building of the compat_80 module.
 1.1.2.1 21-Mar-2018  pgoyette Move if_spppsubr compat code into the compat50 module.

More prep work for compat80 module (for raidframe)
 1.2.4.3 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.2.4.2 10-Jun-2019  christos Sync with HEAD
 1.2.4.1 27-Jan-2019  christos file Makefile was added on branch phil-wifi on 2019-06-10 22:09:15 +0000
 1.3 10-Dec-2023  pgoyette Default the build of compat_90 module to include IPv6, as is done
for other INET6-sensitive modules (see if_lagg).

XXX Pullup to -10 (will add to existing ticket)
 1.2 09-Dec-2023  pgoyette Modularize the COMPAT_90 code that resulted from the removal of
netinet6/nd6 from the kernel. Now, the minimal compat code can
be successfully loaded and unloaded along with the rest of the
COMPAT_90 code.

XXX pullup-10 - hopefully before RC2
 1.1 22-Sep-2019  christos branches: 1.1.8; 1.1.28;
Add a new member to struct vfsstat and grow the unused members
The new member is caled f_mntfromlabel and it is the dkw_wname
of the corresponding wedge. This is now used by df -W to display
the mountpoint name as NAME=
 1.1.28.1 10-Dec-2023  martin Pull up following revision(s) (requested by pgoyette in ticket #487):

sys/compat/common/compat_90_mod.c: revision 1.5
sys/compat/common/compat_90_mod.c: revision 1.6
sys/netinet6/in6.c: revision 1.290
sys/netinet6/in6.c: revision 1.291
sys/compat/common/files.common: revision 1.11
sys/netinet6/icmp6.c: revision 1.255
sys/compat/common/net_inet6_nd_90.c: revision 1.1
sys/compat/common/net_inet6_nd_90.c: revision 1.2
sys/modules/compat_90/Makefile: revision 1.2
sys/modules/compat_90/Makefile: revision 1.3
sys/netinet6/nd6.c: revision 1.281
sys/compat/common/compat_mod.h: revision 1.10
sys/kern/compat_stub.c: revision 1.23
sys/sys/compat_stub.h: revision 1.27

Identify the need to rework the COMPAT_* code to be more
module-aware.
This is an XXX comment block only, NFCI.

Modularize the COMPAT_90 code that resulted from the removal of
netinet6/nd6 from the kernel. Now, the minimal compat code can
be successfully loaded and unloaded along with the rest of the
COMPAT_90 code.

Allow kernels builds which don't define INET6 to compile compat bits
too.

Default the build of compat_90 module to include IPv6, as is done
for other INET6-sensitive modules (see if_lagg).
 1.1.8.2 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.1.8.1 22-Sep-2019  martin file Makefile was added on branch phil-wifi on 2020-04-13 08:05:07 +0000
 1.3 20-Nov-2019  pgoyette Move all non-emulation-specific coredump code into the coredump module,
and remove all #ifdef COREDUMP conditional compilation. Now, the
coredump module is completely separated from the emulation modules, and
they can all be independently loaded and unloaded.

Welcome to 9.99.18 !
 1.2 18-Jun-2019  christos Add QUOTA define
 1.1 15-Oct-2010  tsutsui branches: 1.1.2; 1.1.8; 1.1.64;
Add compat_aoutm68k module build dir.
(See options(4) for details of compat_aoutm68k)
 1.1.64.2 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.1.64.1 08-Apr-2020  martin Merge changes from current as of 20200406
 1.1.8.2 05-Mar-2011  rmind sync with head
 1.1.8.1 15-Oct-2010  rmind file Makefile was added on branch rmind-uvmplock on 2011-03-05 20:55:39 +0000
 1.1.2.2 22-Oct-2010  uebayasi Sync with HEAD (-D20101022).
 1.1.2.1 15-Oct-2010  uebayasi file Makefile was added on branch uebayasi-xip on 2010-10-22 09:23:13 +0000
 1.3 27-Jan-2020  pgoyette Split the module glue out from the rest of opencrypto/ocryptodev to
make rump happy.

Rump doesn't have compat modules (the compat code is included in the
relevant librump*.so), so there's no module compat_50 listed in
link_set_modules, and thus ocryptodev's MODULE(...) can't "require"
it.

This fixes the problem of "built-in module compat_50 not found" when
starting up rump_allserver (or rump_server with -l rumpdev_opencrypto).

XXX This does not resolve the long-standing "crypto: unable to
XXX register devsw, error 17" message noted at line 78 of
XXX sys/rump/dev/lib/libopencrypto/opencrypto_component.c
 1.2 27-Jan-2019  pgoyette branches: 1.2.4; 1.2.8;
Merge the [pgoyette-compat] branch
 1.1 23-Sep-2018  pgoyette branches: 1.1.2;
file Makefile was initially added on branch pgoyette-compat.
 1.1.2.3 23-Sep-2018  pgoyette No need to declare the crypto_50 init/fini routines. The compat_50
module no longer needs them, and they're declared static in the
ocryptodev.c code
 1.1.2.2 23-Sep-2018  pgoyette Fix some thinkos/pastos/typos
 1.1.2.1 23-Sep-2018  pgoyette Split the compat_crypto_50 from the rest of the crypto module

Cleanup some stuff left over from similar changes to raid modules.
 1.2.8.1 29-Feb-2020  ad Sync with head.
 1.2.4.3 08-Apr-2020  martin Merge changes from current as of 20200406
 1.2.4.2 10-Jun-2019  christos Sync with HEAD
 1.2.4.1 27-Jan-2019  christos file Makefile was added on branch phil-wifi on 2019-06-10 22:09:15 +0000
 1.7 18-Jun-2019  christos Add quota option
 1.6 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.5 01-Aug-2017  maxv branches: 1.5.4;
Move arch/i386/i386/freebsd_* into compat/freebsd/. COMPAT_FREEBSD is
i386-specific.
 1.4 29-Jul-2017  maxv Remove exec_aout support in compat_freebsd. The only reason we still have
compat_freebsd is because of tw_cli, and it is an elf32 binary (could test,
manuel sent it to me).
 1.3 14-Feb-2009  abs branches: 1.3.2; 1.3.24; 1.3.42;
Convert more MACHINE tests to MACHINE_ARCH
 1.2 08-Dec-2008  njoly branches: 1.2.2; 1.2.4; 1.2.6;
s/SYSVIPC/SYSVMSG/, for message queues support.
 1.1 19-Nov-2008  ad Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime
 1.2.6.1 13-May-2009  jym Sync with HEAD.

Commit is split, to avoid a "too many arguments" protocol error.
 1.2.4.3 03-Mar-2009  skrll Sync with HEAD.
 1.2.4.2 19-Jan-2009  skrll Sync with HEAD.
 1.2.4.1 08-Dec-2008  skrll file Makefile was added on branch nick-hppapmap on 2009-01-19 13:20:07 +0000
 1.2.2.2 17-Jan-2009  mjf Sync with HEAD.
 1.2.2.1 08-Dec-2008  mjf file Makefile was added on branch mjf-devfs2 on 2009-01-17 13:29:28 +0000
 1.3.42.1 28-Aug-2017  skrll Sync with HEAD
 1.3.24.1 03-Dec-2017  jdolecek update from HEAD
 1.3.2.2 04-May-2009  yamt sync with head.
 1.3.2.1 14-Feb-2009  yamt file Makefile was added on branch yamt-nfs-mp on 2009-05-04 08:14:07 +0000
 1.5.4.2 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.5.4.1 10-Jun-2019  christos Sync with HEAD
 1.8 01-Jul-2024  christos Add linux POSIX message queue support (Ricardo Branco)
 1.7 21-Aug-2023  christos branches: 1.7.6;
Add inotify (thanks Ryo)
 1.6 09-Oct-2021  ryo Modularize compat_linux(8) for aarch64.
 1.5 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.4 24-Feb-2009  he branches: 1.4.2; 1.4.66;
Follow up the removal of linux_support.S for amd64 and i386.
 1.3 08-Dec-2008  njoly branches: 1.3.2; 1.3.4; 1.3.6;
s/SYSVIPC/SYSVMSG/, for message queues support.
 1.2 20-Nov-2008  ad PR port-amd64/39964 modules/compat_linux: missing symbols on amd64
 1.1 19-Nov-2008  ad Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime
 1.3.6.1 13-May-2009  jym Sync with HEAD.

Commit is split, to avoid a "too many arguments" protocol error.
 1.3.4.3 03-Mar-2009  skrll Sync with HEAD.
 1.3.4.2 19-Jan-2009  skrll Sync with HEAD.
 1.3.4.1 08-Dec-2008  skrll file Makefile was added on branch nick-hppapmap on 2009-01-19 13:20:07 +0000
 1.3.2.2 17-Jan-2009  mjf Sync with HEAD.
 1.3.2.1 08-Dec-2008  mjf file Makefile was added on branch mjf-devfs2 on 2009-01-17 13:29:28 +0000
 1.4.66.1 10-Jun-2019  christos Sync with HEAD
 1.4.2.2 04-May-2009  yamt sync with head.
 1.4.2.1 24-Feb-2009  yamt file Makefile was added on branch yamt-nfs-mp on 2009-05-04 08:14:07 +0000
 1.7.6.1 02-Aug-2025  perseant Sync with HEAD
 1.11 27-Nov-2021  ryo fix build for aarch64eb
 1.10 25-Nov-2021  ryo add support COMPAT_LINUX32 for aarch64
 1.9 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.8 26-Nov-2018  mlelstv One more - we also need the libnv for compat_linux32 module
 1.7 02-Aug-2011  joerg branches: 1.7.52; 1.7.54;
Remove a number of now unnecessary -no-integrated-as cases.
 1.6 20-May-2011  joerg LLVM's assembler parser doesn't support .code32 yet, so disable it as
needed.
 1.5 14-Feb-2009  abs branches: 1.5.2; 1.5.6; 1.5.8;
Convert more MACHINE tests to MACHINE_ARCH
 1.4 08-Dec-2008  njoly branches: 1.4.2; 1.4.4; 1.4.6;
s/SYSVIPC/SYSVMSG/, for message queues support.
 1.3 03-Dec-2008  ad PR port-amd64/40091 compat_linux32 module loading = panic due to missing syms
 1.2 21-Nov-2008  ad PR port-amd64/39990 modules/compat_linux32: build fix
 1.1 19-Nov-2008  ad Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime
 1.4.6.1 13-May-2009  jym Sync with HEAD.

Commit is split, to avoid a "too many arguments" protocol error.
 1.4.4.3 03-Mar-2009  skrll Sync with HEAD.
 1.4.4.2 19-Jan-2009  skrll Sync with HEAD.
 1.4.4.1 08-Dec-2008  skrll file Makefile was added on branch nick-hppapmap on 2009-01-19 13:20:07 +0000
 1.4.2.2 17-Jan-2009  mjf Sync with HEAD.
 1.4.2.1 08-Dec-2008  mjf file Makefile was added on branch mjf-devfs2 on 2009-01-17 13:29:29 +0000
 1.5.8.1 06-Jun-2011  jruoho Sync with HEAD.
 1.5.6.1 31-May-2011  rmind sync with head
 1.5.2.2 04-May-2009  yamt sync with head.
 1.5.2.1 14-Feb-2009  yamt file Makefile was added on branch yamt-nfs-mp on 2009-05-04 08:14:07 +0000
 1.7.54.1 10-Jun-2019  christos Sync with HEAD
 1.7.52.2 26-Dec-2018  pgoyette Sync with HEAD, resolve a few conflicts
 1.7.52.1 26-Nov-2018  pgoyette One more - we also need the libnv for compat_linux32 module
 1.38 30-Aug-2023  christos Add missing netbsd32_epoll.c
 1.37 07-Nov-2020  christos fix arm test
 1.36 01-Nov-2020  pgoyette Separate the compat_netbsd32_coredump from the compat_netbsd32 and
coredump modules, into its own module.

Welcome to 7.99.75 !!!
 1.35 16-May-2020  christos branches: 1.35.2;
Add ACL support for FFS. From FreeBSD.
 1.34 02-May-2020  thorpej Include netbsd32_futex.c in the module.
 1.33 19-Apr-2020  maya Turn off compat drm.
XXX issue security advisory
 1.32 12-Mar-2020  pgoyette branches: 1.32.2;
Split out the quota code from the rest of compat_netbsd32 module. This
allows loading of compat_netbsd32 on kernels that don't have ``options
QUOTA'' enabled.
 1.31 05-Mar-2020  christos disable a.out on aarch64
 1.30 20-Nov-2019  pgoyette Move all non-emulation-specific coredump code into the coredump module,
and remove all #ifdef COREDUMP conditional compilation. Now, the
coredump module is completely separated from the emulation modules, and
they can all be independently loaded and unloaded.

Welcome to 9.99.18 !
 1.29 28-Sep-2019  christos Disable NETBSD32_DRMKMS by not using it, but keep compiling it.
 1.28 26-Sep-2019  christos Kill WARNS = 3 from all the modules that now compile cleanly.
 1.27 20-Aug-2019  maxv Disable netbsd32_drm.c until it receives proper review.
 1.26 20-Aug-2019  christos Add netbsd32 drm support from Surya Shankar at GSoC 2019
 1.25 18-Jun-2019  christos Add QUOTA define
 1.24 23-Mar-2019  pgoyette The main compat_netbsd32 module doesn't contain any prior-version-compat
code, so we don't need these CPP_FLAGS. The appropriate CPP_FLAGS are
included in the Makefiles for the various compat_netbsd32_xx modules.
 1.23 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.22 27-Jan-2019  pgoyette Merge the [pgoyette-compat] branch
 1.21 26-Nov-2018  mlelstv compat modules now require an extra include path for libnv.
 1.20 26-Jan-2017  christos branches: 1.20.12; 1.20.14;
Define MODULAR so we can have syscalls autoload after the module autoloads.
XXX: This is toxic, and currently caused LOCKDEBUG crashes.
 1.19 17-Sep-2016  christos branches: 1.19.2;
Add KTRACE
 1.18 03-Dec-2015  pgoyette branches: 1.18.2;
Split out the SYSV IPC stuff into its own compat_netbsd32_sysvipc
module. Adjust dependencies as needed.
 1.17 01-Dec-2015  pgoyette Create new compat_netbsd32_mqueue module, and descend into subdir to
build it.
 1.16 01-Dec-2015  pgoyette Descend into new compat_netbsd32_nfssrv directory for new module, and
remove netbsd32_nfssvc.c from the original compat_netbsd32 module.
 1.15 31-Aug-2015  christos add missing files
 1.14 30-Jul-2015  christos Add VMSWAP
 1.13 10-May-2015  matt mips doesn't do a.out and never has.
 1.12 05-Dec-2014  christos Add COMPAT_NOMID
 1.11 10-May-2013  christos branches: 1.11.10;
add new file
 1.10 22-Jan-2013  christos We need more defines for this to actually work!
 1.9 10-Mar-2012  joerg branches: 1.9.2;
P1003_1B_SEMAPHORE is no longer optional.
 1.8 19-Feb-2012  rmind Remove COMPAT_SA / KERN_SA. Welcome to 6.99.3!
Approved by core@.
 1.7 02-Aug-2011  joerg branches: 1.7.2; 1.7.6;
Remove a number of now unnecessary -no-integrated-as cases.
 1.6 20-May-2011  joerg LLVM's assembler parser doesn't support .code32 yet, so disable it.
 1.5 04-Jan-2011  pgoyette branches: 1.5.2;
Define KERN_SA when building the module
 1.4 21-Dec-2009  njoly branches: 1.4.4;
Add netbsd32_compat_50.c to netbsd32 module sources list.
 1.3 14-Feb-2009  abs branches: 1.3.2;
Convert more MACHINE tests to MACHINE_ARCH
 1.2 08-Dec-2008  njoly branches: 1.2.2; 1.2.4; 1.2.6;
s/SYSVIPC/SYSVMSG/, for message queues support.
 1.1 19-Nov-2008  ad Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime
 1.2.6.1 13-May-2009  jym Sync with HEAD.

Commit is split, to avoid a "too many arguments" protocol error.
 1.2.4.3 03-Mar-2009  skrll Sync with HEAD.
 1.2.4.2 19-Jan-2009  skrll Sync with HEAD.
 1.2.4.1 08-Dec-2008  skrll file Makefile was added on branch nick-hppapmap on 2009-01-19 13:20:08 +0000
 1.2.2.2 17-Jan-2009  mjf Sync with HEAD.
 1.2.2.1 08-Dec-2008  mjf file Makefile was added on branch mjf-devfs2 on 2009-01-17 13:29:29 +0000
 1.3.2.3 11-Mar-2010  yamt sync with head
 1.3.2.2 04-May-2009  yamt sync with head.
 1.3.2.1 14-Feb-2009  yamt file Makefile was added on branch yamt-nfs-mp on 2009-05-04 08:14:07 +0000
 1.4.4.2 31-May-2011  rmind sync with head
 1.4.4.1 05-Mar-2011  rmind sync with head
 1.5.2.1 06-Jun-2011  jruoho Sync with HEAD.
 1.7.6.2 11-Mar-2012  mrg sync to latest -current
 1.7.6.1 24-Feb-2012  mrg sync to -current.
 1.7.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.7.2.2 23-Jan-2013  yamt sync with head
 1.7.2.1 17-Apr-2012  yamt sync with head
 1.9.2.3 03-Dec-2017  jdolecek update from HEAD
 1.9.2.2 23-Jun-2013  tls resync from head
 1.9.2.1 25-Feb-2013  tls resync with head
 1.11.10.6 05-Feb-2017  skrll Sync with HEAD
 1.11.10.5 05-Oct-2016  skrll Sync with HEAD
 1.11.10.4 27-Dec-2015  skrll Sync with HEAD (as of 26th Dec)
 1.11.10.3 22-Sep-2015  skrll Sync with HEAD
 1.11.10.2 06-Jun-2015  skrll Sync with HEAD
 1.11.10.1 06-Apr-2015  skrll Sync with HEAD
 1.18.2.2 20-Mar-2017  pgoyette Sync with HEAD
 1.18.2.1 04-Nov-2016  pgoyette Sync with HEAD
 1.19.2.1 21-Apr-2017  bouyer Sync with HEAD
 1.20.14.3 21-Apr-2020  martin Sync with HEAD
 1.20.14.2 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.20.14.1 10-Jun-2019  christos Sync with HEAD
 1.20.12.17 10-Jan-2019  pgoyette Include newly-created files in compat_netbsd32 module build. Missed
this when resolving conflicts in most recent sync-with-HEAD
 1.20.12.16 26-Nov-2018  pgoyette Update from HEAD - need to add sys/external/bsd/libnv to the #include list
 1.20.12.15 04-Oct-2018  pgoyette Add missing file to the build
 1.20.12.14 27-Sep-2018  pgoyette WIP - clean up some of the Makefiles and conf/files stuff for the
netbsd32 modules.
 1.20.12.13 24-Sep-2018  pgoyette Work in progress
 1.20.12.12 14-Sep-2018  pgoyette OMG it builds!

Finish rearranging the amd64 MD compat_netbsd32 code.

XXX Other architectures will be dealt with later.
 1.20.12.11 14-Sep-2018  pgoyette Work in progress - get the arch-specific netbsd32_machdep.c code to
build as a module.

XXX Doesn't work when the code is built-in to the kernel.
 1.20.12.10 13-Sep-2018  pgoyette Include required MD code for amd64
 1.20.12.9 12-Sep-2018  pgoyette Split compat_netbsd32_sysvipc into version-specific modules
 1.20.12.8 11-Sep-2018  pgoyette Move the NTP compat_30 and compat_50 routines into the version-specific
modules.
 1.20.12.7 11-Sep-2018  pgoyette Move netbsd32_rndpseudo_50.c out of the main netbsd32 module and into
the module that handles netbsd32_50 compatability.
 1.20.12.6 11-Sep-2018  pgoyette Get ready for compat_netbsd32_43 module
 1.20.12.5 11-Sep-2018  pgoyette Don't include the 60-specific code in the monolithic compat_netbsd32 module
 1.20.12.4 10-Sep-2018  pgoyette More work on splitting the compat_netbsd32 module
 1.20.12.3 10-Sep-2018  pgoyette Remove from the generic module those files which are being included
in their own version-specific modules.
 1.20.12.2 10-Sep-2018  pgoyette More compat_netbsd32_xx modules
 1.20.12.1 21-Mar-2018  pgoyette Split compat/rndpseudo_50.c into two pieces, one for native compat and
a second piece for compat32. Update both modules accordingly.
 1.32.2.1 20-Apr-2020  bouyer Sync with HEAD
 1.35.2.1 14-Dec-2020  thorpej Sync w/ HEAD.
 1.2 01-Jun-2015  roy Back out prior

gimpy1@ we don't #include driver .h in netbsd32
 1.1 31-May-2015  roy Revert prior change, optionally include PPPOE and SPPP support again.
Fix compat_netbsd32 module building by enforcing both.
 1.2 01-Jun-2015  roy Back out prior

gimpy1@ we don't #include driver .h in netbsd32
 1.1 31-May-2015  roy Revert prior change, optionally include PPPOE and SPPP support again.
Fix compat_netbsd32 module building by enforcing both.
 1.4 26-Sep-2019  christos Kill WARNS = 3 from all the modules that now compile cleanly.
 1.3 20-Feb-2019  rin branches: 1.3.4;
WARNS=3 for compat_netbsd32_* in order to appease sign-compare warnings
for mips64, where NETBSD32_POINTER_TYPE is signed.
 1.2 27-Jan-2019  pgoyette Merge the [pgoyette-compat] branch
 1.1 10-Sep-2018  pgoyette branches: 1.1.2;
file Makefile was initially added on branch pgoyette-compat.
 1.1.2.3 26-Nov-2018  pgoyette Add the libnv directory for all of the compat_netbsd32* modules
 1.1.2.2 11-Sep-2018  pgoyette Add -DCOMPAT_NETBSD32 for all the version-specific modules
 1.1.2.1 10-Sep-2018  pgoyette Initial cut at a compat_netbsd32_09 and compat_netbsd32_12 modules.
 1.3.4.3 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.3.4.2 10-Jun-2019  christos Sync with HEAD
 1.3.4.1 20-Feb-2019  christos file Makefile was added on branch phil-wifi on 2019-06-10 22:09:16 +0000
 1.1 19-Dec-2022  pgoyette Create compat_100 module infrastructure now that we have branched
for NetBSD-10
 1.1 19-May-2024  christos version dup3
 1.4 26-Sep-2019  christos Kill WARNS = 3 from all the modules that now compile cleanly.
 1.3 20-Feb-2019  rin branches: 1.3.4;
WARNS=3 for compat_netbsd32_* in order to appease sign-compare warnings
for mips64, where NETBSD32_POINTER_TYPE is signed.
 1.2 27-Jan-2019  pgoyette Merge the [pgoyette-compat] branch
 1.1 10-Sep-2018  pgoyette branches: 1.1.2;
file Makefile was initially added on branch pgoyette-compat.
 1.1.2.3 26-Nov-2018  pgoyette Add the libnv directory for all of the compat_netbsd32* modules
 1.1.2.2 11-Sep-2018  pgoyette Add -DCOMPAT_NETBSD32 for all the version-specific modules
 1.1.2.1 10-Sep-2018  pgoyette Initial cut at a compat_netbsd32_09 and compat_netbsd32_12 modules.
 1.3.4.3 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.3.4.2 10-Jun-2019  christos Sync with HEAD
 1.3.4.1 20-Feb-2019  christos file Makefile was added on branch phil-wifi on 2019-06-10 22:09:16 +0000
 1.5 16-Jun-2024  pgoyette Introduce sys/modules/Makefile.compat and hook some compat_1[36]
machdep code into the modules. kern/58346
 1.4 26-Sep-2019  christos branches: 1.4.26;
Kill WARNS = 3 from all the modules that now compile cleanly.
 1.3 20-Feb-2019  rin branches: 1.3.4;
WARNS=3 for compat_netbsd32_* in order to appease sign-compare warnings
for mips64, where NETBSD32_POINTER_TYPE is signed.
 1.2 27-Jan-2019  pgoyette Merge the [pgoyette-compat] branch
 1.1 10-Sep-2018  pgoyette branches: 1.1.2;
file Makefile was initially added on branch pgoyette-compat.
 1.1.2.6 26-Nov-2018  pgoyette Add the libnv directory for all of the compat_netbsd32* modules
 1.1.2.5 27-Sep-2018  pgoyette WIP - clean up some of the Makefiles and conf/files stuff for the
netbsd32 modules.
 1.1.2.4 14-Sep-2018  pgoyette Work in progress - get the arch-specific netbsd32_machdep.c code to
build as a module.

XXX Doesn't work when the code is built-in to the kernel.
 1.1.2.3 11-Sep-2018  pgoyette Fix some typos
 1.1.2.2 11-Sep-2018  pgoyette Add -DCOMPAT_NETBSD32 for all the version-specific modules
 1.1.2.1 10-Sep-2018  pgoyette More compat_netbsd32_xx modules
 1.3.4.3 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.3.4.2 10-Jun-2019  christos Sync with HEAD
 1.3.4.1 20-Feb-2019  christos file Makefile was added on branch phil-wifi on 2019-06-10 22:09:16 +0000
 1.4.26.1 22-Jun-2024  martin Pull up following revision(s) (requested by pgoyette in ticket #724):

sys/modules/compat_netbsd32_16/Makefile: revision 1.5
sys/arch/powerpc/powerpc/compat_16_machdep.c: revision 1.25
sys/arch/powerpc/powerpc/compat_16_machdep.c: revision 1.26
sys/modules/compat_16/Makefile: revision 1.3
sys/modules/compat_netbsd32_13/Makefile: revision 1.5
sys/modules/compat_16/Makefile: revision 1.4
sys/arch/sun2/sun2/genassym.cf: revision 1.17
sys/arch/sun2/sun2/enable.h: revision 1.5
sys/modules/compat_13/Makefile: revision 1.3
sys/modules/compat_13/Makefile: revision 1.4
sys/modules/compat_13/Makefile: revision 1.5
sys/arch/mips/mips/netbsd32_machdep_16.c: revision 1.8
sys/modules/Makefile.compat: revision 1.1
sys/arch/mips/mips/netbsd32_machdep_13.c: revision 1.4
share/mk/bsd.kmodule.mk: revision 1.86
sys/arch/aarch64/aarch64/netbsd32_machdep_16.c: revision 1.4
sys/arch/powerpc/powerpc/compat_13_machdep.c: revision 1.23
sys/arch/aarch64/aarch64/netbsd32_machdep_13.c: revision 1.4

Import AFLAGS to allow processing of assembler files in modules.
Prerequisite for kern/583346.

Introduce sys/modules/Makefile.compat and hook some compat_1[36]
machdep code into the modules. kern/58346

Ooops missed a source file!

Proteect #include of kernel options files with #ifdef _KERNEL_OPT

XXX Add to existing 10.0 and 9.0 tickets for kern/583346

Include required headers

Add required include for compat_16 machdep code

fix the m68k compat_13 build.

include Makefile.assym to generate assym.h.
use -I. and -x assembler-with-cpp to actually use cpp and find assym.h.
also apply m68k assym.h fix here as well as compat_13.

powerpc64: Provide dummy stubs for compat1[36]
as done for amd64. We haven't had working userland for powerpc64,
and therefore compatible to 1.[36] is only useful for netbsd32.

Fix build failure for evbppc64 for PR kern/58346 (my bug!).
sun2/genassym.cf: Skip KERNBASE for _MODULE
as it is not a compile-time constant; see sun2/vmparam.h.

It should not be, and is not actually, used for modules.

PR kern/58346

sun2/enable.h: Fix -Wold-style-definition for WARNS=5 build as modules
Finally fix sun2 build for PR kern/58346
 1.5 16-Jun-2024  pgoyette Introduce sys/modules/Makefile.compat and hook some compat_1[36]
machdep code into the modules. kern/58346
 1.4 26-Sep-2019  christos branches: 1.4.26;
Kill WARNS = 3 from all the modules that now compile cleanly.
 1.3 20-Feb-2019  rin branches: 1.3.4;
WARNS=3 for compat_netbsd32_* in order to appease sign-compare warnings
for mips64, where NETBSD32_POINTER_TYPE is signed.
 1.2 27-Jan-2019  pgoyette Merge the [pgoyette-compat] branch
 1.1 12-Sep-2018  pgoyette branches: 1.1.2;
file Makefile was initially added on branch pgoyette-compat.
 1.1.2.6 26-Nov-2018  pgoyette Add the libnv directory for all of the compat_netbsd32* modules
 1.1.2.5 27-Sep-2018  pgoyette WIP - clean up some of the Makefiles and conf/files stuff for the
netbsd32 modules.
 1.1.2.4 23-Sep-2018  pgoyette Split the compat_crypto_50 from the rest of the crypto module

Cleanup some stuff left over from similar changes to raid modules.
 1.1.2.3 14-Sep-2018  pgoyette OMG it builds!

Finish rearranging the amd64 MD compat_netbsd32 code.

XXX Other architectures will be dealt with later.
 1.1.2.2 14-Sep-2018  pgoyette Work in progress - get the arch-specific netbsd32_machdep.c code to
build as a module.

XXX Doesn't work when the code is built-in to the kernel.
 1.1.2.1 12-Sep-2018  pgoyette Add a compat_netbsd32_16 to handle the sigcode stuff.
 1.3.4.3 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.3.4.2 10-Jun-2019  christos Sync with HEAD
 1.3.4.1 20-Feb-2019  christos file Makefile was added on branch phil-wifi on 2019-06-10 22:09:16 +0000
 1.4.26.1 22-Jun-2024  martin Pull up following revision(s) (requested by pgoyette in ticket #724):

sys/modules/compat_netbsd32_16/Makefile: revision 1.5
sys/arch/powerpc/powerpc/compat_16_machdep.c: revision 1.25
sys/arch/powerpc/powerpc/compat_16_machdep.c: revision 1.26
sys/modules/compat_16/Makefile: revision 1.3
sys/modules/compat_netbsd32_13/Makefile: revision 1.5
sys/modules/compat_16/Makefile: revision 1.4
sys/arch/sun2/sun2/genassym.cf: revision 1.17
sys/arch/sun2/sun2/enable.h: revision 1.5
sys/modules/compat_13/Makefile: revision 1.3
sys/modules/compat_13/Makefile: revision 1.4
sys/modules/compat_13/Makefile: revision 1.5
sys/arch/mips/mips/netbsd32_machdep_16.c: revision 1.8
sys/modules/Makefile.compat: revision 1.1
sys/arch/mips/mips/netbsd32_machdep_13.c: revision 1.4
share/mk/bsd.kmodule.mk: revision 1.86
sys/arch/aarch64/aarch64/netbsd32_machdep_16.c: revision 1.4
sys/arch/powerpc/powerpc/compat_13_machdep.c: revision 1.23
sys/arch/aarch64/aarch64/netbsd32_machdep_13.c: revision 1.4

Import AFLAGS to allow processing of assembler files in modules.
Prerequisite for kern/583346.

Introduce sys/modules/Makefile.compat and hook some compat_1[36]
machdep code into the modules. kern/58346

Ooops missed a source file!

Proteect #include of kernel options files with #ifdef _KERNEL_OPT

XXX Add to existing 10.0 and 9.0 tickets for kern/583346

Include required headers

Add required include for compat_16 machdep code

fix the m68k compat_13 build.

include Makefile.assym to generate assym.h.
use -I. and -x assembler-with-cpp to actually use cpp and find assym.h.
also apply m68k assym.h fix here as well as compat_13.

powerpc64: Provide dummy stubs for compat1[36]
as done for amd64. We haven't had working userland for powerpc64,
and therefore compatible to 1.[36] is only useful for netbsd32.

Fix build failure for evbppc64 for PR kern/58346 (my bug!).
sun2/genassym.cf: Skip KERNBASE for _MODULE
as it is not a compile-time constant; see sun2/vmparam.h.

It should not be, and is not actually, used for modules.

PR kern/58346

sun2/enable.h: Fix -Wold-style-definition for WARNS=5 build as modules
Finally fix sun2 build for PR kern/58346
 1.4 26-Sep-2019  christos Kill WARNS = 3 from all the modules that now compile cleanly.
 1.3 20-Feb-2019  rin branches: 1.3.4;
WARNS=3 for compat_netbsd32_* in order to appease sign-compare warnings
for mips64, where NETBSD32_POINTER_TYPE is signed.
 1.2 27-Jan-2019  pgoyette Merge the [pgoyette-compat] branch
 1.1 10-Sep-2018  pgoyette branches: 1.1.2;
file Makefile was initially added on branch pgoyette-compat.
 1.1.2.3 26-Nov-2018  pgoyette Add the libnv directory for all of the compat_netbsd32* modules
 1.1.2.2 11-Sep-2018  pgoyette Add -DCOMPAT_NETBSD32 for all the version-specific modules
 1.1.2.1 10-Sep-2018  pgoyette More compat_netbsd32_xx modules
 1.3.4.3 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.3.4.2 10-Jun-2019  christos Sync with HEAD
 1.3.4.1 20-Feb-2019  christos file Makefile was added on branch phil-wifi on 2019-06-10 22:09:16 +0000
 1.4 26-Sep-2019  christos Kill WARNS = 3 from all the modules that now compile cleanly.
 1.3 20-Feb-2019  rin branches: 1.3.4;
WARNS=3 for compat_netbsd32_* in order to appease sign-compare warnings
for mips64, where NETBSD32_POINTER_TYPE is signed.
 1.2 27-Jan-2019  pgoyette Merge the [pgoyette-compat] branch
 1.1 10-Sep-2018  pgoyette branches: 1.1.2;
file Makefile was initially added on branch pgoyette-compat.
 1.1.2.4 26-Nov-2018  pgoyette Add the libnv directory for all of the compat_netbsd32* modules
 1.1.2.3 11-Sep-2018  pgoyette Move the NTP compat_30 and compat_50 routines into the version-specific
modules.
 1.1.2.2 11-Sep-2018  pgoyette Add -DCOMPAT_NETBSD32 for all the version-specific modules
 1.1.2.1 10-Sep-2018  pgoyette More compat_netbsd32_xx modules
 1.3.4.3 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.3.4.2 10-Jun-2019  christos Sync with HEAD
 1.3.4.1 20-Feb-2019  christos file Makefile was added on branch phil-wifi on 2019-06-10 22:09:16 +0000
 1.4 26-Sep-2019  christos Kill WARNS = 3 from all the modules that now compile cleanly.
 1.3 20-Feb-2019  rin branches: 1.3.4;
WARNS=3 for compat_netbsd32_* in order to appease sign-compare warnings
for mips64, where NETBSD32_POINTER_TYPE is signed.
 1.2 27-Jan-2019  pgoyette Merge the [pgoyette-compat] branch
 1.1 12-Sep-2018  pgoyette branches: 1.1.2;
file Makefile was initially added on branch pgoyette-compat.
 1.1.2.2 26-Nov-2018  pgoyette Add the libnv directory for all of the compat_netbsd32* modules
 1.1.2.1 12-Sep-2018  pgoyette Add a netbsd32_compat40 module, move the 4.0 mount stuff there.
 1.3.4.3 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.3.4.2 10-Jun-2019  christos Sync with HEAD
 1.3.4.1 20-Feb-2019  christos file Makefile was added on branch phil-wifi on 2019-06-10 22:09:17 +0000
 1.4 26-Sep-2019  christos Kill WARNS = 3 from all the modules that now compile cleanly.
 1.3 17-Feb-2019  rin branches: 1.3.4;
Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.2 27-Jan-2019  pgoyette Merge the [pgoyette-compat] branch
 1.1 11-Sep-2018  pgoyette branches: 1.1.2;
file Makefile was initially added on branch pgoyette-compat.
 1.1.2.3 26-Nov-2018  pgoyette Add the libnv directory for all of the compat_netbsd32* modules
 1.1.2.2 11-Sep-2018  pgoyette Use the real version numbers, not just the ones from the template.
 1.1.2.1 11-Sep-2018  pgoyette Get ready for compat_netbsd32_43 module
 1.3.4.3 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.3.4.2 10-Jun-2019  christos Sync with HEAD
 1.3.4.1 17-Feb-2019  christos file Makefile was added on branch phil-wifi on 2019-06-10 22:09:17 +0000
 1.6 12-Mar-2020  pgoyette Split out the quota code from the rest of compat_netbsd32 module. This
allows loading of compat_netbsd32 on kernels that don't have ``options
QUOTA'' enabled.
 1.5 26-Sep-2019  christos Kill WARNS = 3 from all the modules that now compile cleanly.
 1.4 18-Jun-2019  pgoyette Include quota compat code by default
 1.3 17-Feb-2019  rin branches: 1.3.4;
Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.2 27-Jan-2019  pgoyette Merge the [pgoyette-compat] branch
 1.1 10-Sep-2018  pgoyette branches: 1.1.2;
file Makefile was initially added on branch pgoyette-compat.
 1.1.2.5 26-Nov-2018  pgoyette Add the libnv directory for all of the compat_netbsd32* modules
 1.1.2.4 11-Sep-2018  pgoyette Move the NTP compat_30 and compat_50 routines into the version-specific
modules.
 1.1.2.3 11-Sep-2018  pgoyette Move netbsd32_rndpseudo_50.c out of the main netbsd32 module and into
the module that handles netbsd32_50 compatability.
 1.1.2.2 11-Sep-2018  pgoyette Add -DCOMPAT_NETBSD32 for all the version-specific modules
 1.1.2.1 10-Sep-2018  pgoyette More work on splitting the compat_netbsd32 module
 1.3.4.3 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.3.4.2 10-Jun-2019  christos Sync with HEAD
 1.3.4.1 17-Feb-2019  christos file Makefile was added on branch phil-wifi on 2019-06-10 22:09:17 +0000
 1.4 26-Sep-2019  christos Kill WARNS = 3 from all the modules that now compile cleanly.
 1.3 20-Feb-2019  rin branches: 1.3.4;
WARNS=3 for compat_netbsd32_* in order to appease sign-compare warnings
for mips64, where NETBSD32_POINTER_TYPE is signed.
 1.2 27-Jan-2019  pgoyette Merge the [pgoyette-compat] branch
 1.1 10-Sep-2018  pgoyette branches: 1.1.2;
file Makefile was initially added on branch pgoyette-compat.
 1.1.2.3 26-Nov-2018  pgoyette Add the libnv directory for all of the compat_netbsd32* modules
 1.1.2.2 11-Sep-2018  pgoyette Add -DCOMPAT_NETBSD32 for all the version-specific modules
 1.1.2.1 10-Sep-2018  pgoyette More work on splitting the compat_netbsd32 module
 1.3.4.3 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.3.4.2 10-Jun-2019  christos Sync with HEAD
 1.3.4.1 20-Feb-2019  christos file Makefile was added on branch phil-wifi on 2019-06-10 22:09:17 +0000
 1.4 26-Sep-2019  christos Kill WARNS = 3 from all the modules that now compile cleanly.
 1.3 20-Feb-2019  rin branches: 1.3.4;
WARNS=3 for compat_netbsd32_* in order to appease sign-compare warnings
for mips64, where NETBSD32_POINTER_TYPE is signed.
 1.2 27-Jan-2019  pgoyette Merge the [pgoyette-compat] branch
 1.1 10-Sep-2018  pgoyette branches: 1.1.2;
file Makefile was initially added on branch pgoyette-compat.
 1.1.2.4 26-Nov-2018  pgoyette Add the libnv directory for all of the compat_netbsd32* modules
 1.1.2.3 11-Sep-2018  pgoyette Fix some typos
 1.1.2.2 11-Sep-2018  pgoyette Add -DCOMPAT_NETBSD32 for all the version-specific modules
 1.1.2.1 10-Sep-2018  pgoyette More work on splitting the compat_netbsd32 module
 1.3.4.3 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.3.4.2 10-Jun-2019  christos Sync with HEAD
 1.3.4.1 20-Feb-2019  christos file Makefile was added on branch phil-wifi on 2019-06-10 22:09:17 +0000
 1.1 22-Sep-2019  christos branches: 1.1.8;
Add a new member to struct vfsstat and grow the unused members
The new member is caled f_mntfromlabel and it is the dkw_wname
of the corresponding wedge. This is now used by df -W to display
the mountpoint name as NAME=
 1.1.8.2 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.1.8.1 22-Sep-2019  martin file Makefile was added on branch phil-wifi on 2020-04-13 08:05:09 +0000
 1.2 04-Nov-2020  pgoyette branches: 1.2.2;
Use opt_execfmt.h to get build options.

Only include elf32 hooks if we have elf32 defined and elf32 is not the
"native" emulation. This allows for having compat_netbsd32 without
elf32 (although it's probably not too useful), and also enables arm's
old-ABI usage of compat_netbsd32.
 1.1 01-Nov-2020  pgoyette Separate the compat_netbsd32_coredump from the compat_netbsd32 and
coredump modules, into its own module.

Welcome to 7.99.75 !!!
 1.2.2.2 14-Dec-2020  thorpej Sync w/ HEAD.
 1.2.2.1 04-Nov-2020  thorpej file Makefile was added on branch thorpej-futex on 2020-12-14 14:38:14 +0000
 1.4 26-Sep-2019  christos Kill WARNS = 3 from all the modules that now compile cleanly.
 1.3 20-Feb-2019  rin WARNS=3 for compat_netbsd32_* in order to appease sign-compare warnings
for mips64, where NETBSD32_POINTER_TYPE is signed.
 1.2 26-Nov-2018  mlelstv compat modules now require an extra include path for libnv.
 1.1 01-Dec-2015  pgoyette branches: 1.1.2; 1.1.18; 1.1.20; 1.1.22;
Create new compat_netbsd32_mqueue module, and descend into subdir to
build it.
 1.1.22.2 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.1.22.1 10-Jun-2019  christos Sync with HEAD
 1.1.20.1 26-Nov-2018  pgoyette Update from HEAD - need to add sys/external/bsd/libnv to the #include list
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 01-Dec-2015  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:51 +0000
 1.1.2.2 27-Dec-2015  skrll Sync with HEAD (as of 26th Dec)
 1.1.2.1 01-Dec-2015  skrll file Makefile was added on branch nick-nhusb on 2015-12-27 12:10:06 +0000
 1.4 26-Sep-2019  christos Kill WARNS = 3 from all the modules that now compile cleanly.
 1.3 20-Feb-2019  rin WARNS=3 for compat_netbsd32_* in order to appease sign-compare warnings
for mips64, where NETBSD32_POINTER_TYPE is signed.
 1.2 26-Nov-2018  mlelstv compat modules now require an extra include path for libnv.
 1.1 01-Dec-2015  pgoyette branches: 1.1.2; 1.1.18; 1.1.20; 1.1.22;
Descend into new compat_netbsd32_nfssrv directory for new module, and
remove netbsd32_nfssvc.c from the original compat_netbsd32 module.
 1.1.22.2 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.1.22.1 10-Jun-2019  christos Sync with HEAD
 1.1.20.1 26-Nov-2018  pgoyette Update from HEAD - need to add sys/external/bsd/libnv to the #include list
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 01-Dec-2015  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:51 +0000
 1.1.2.2 27-Dec-2015  skrll Sync with HEAD (as of 26th Dec)
 1.1.2.1 01-Dec-2015  skrll file Makefile was added on branch nick-nhusb on 2015-12-27 12:10:06 +0000
 1.5 26-Sep-2019  christos Kill WARNS = 3 from all the modules that now compile cleanly.
 1.4 20-Feb-2019  rin WARNS=3 for compat_netbsd32_* in order to appease sign-compare warnings
for mips64, where NETBSD32_POINTER_TYPE is signed.
 1.3 26-Nov-2018  mlelstv compat modules now require an extra include path for libnv.
 1.2 13-Jan-2017  christos branches: 1.2.14; 1.2.16; 1.2.18;
Don't define PT_{S,G}ETREGS on the command line. Yes, it can make things
compile, but when it does, it is always bogus!
 1.1 19-Oct-2016  skrll branches: 1.1.2; 1.1.4;
PR kern/51514: ptrace(2) fails for 32-bit process on 64-bit kernel

Updated from the original patch in the PR by me.
 1.1.4.3 05-Feb-2017  skrll Sync with HEAD
 1.1.4.2 05-Dec-2016  skrll Sync with HEAD
 1.1.4.1 19-Oct-2016  skrll file Makefile was added on branch nick-nhusb on 2016-12-05 10:55:27 +0000
 1.1.2.3 20-Mar-2017  pgoyette Sync with HEAD
 1.1.2.2 04-Nov-2016  pgoyette Sync with HEAD
 1.1.2.1 19-Oct-2016  pgoyette file Makefile was added on branch pgoyette-localcount on 2016-11-04 14:49:18 +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.16.1 26-Nov-2018  pgoyette Update from HEAD - need to add sys/external/bsd/libnv to the #include list
 1.2.14.2 03-Dec-2017  jdolecek update from HEAD
 1.2.14.1 13-Jan-2017  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:51 +0000
 1.1 12-Mar-2020  pgoyette branches: 1.1.4;
Split out the quota code from the rest of compat_netbsd32 module. This
allows loading of compat_netbsd32 on kernels that don't have ``options
QUOTA'' enabled.
 1.1.4.2 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.1.4.1 12-Mar-2020  martin file Makefile was added on branch phil-wifi on 2020-04-13 08:05:09 +0000
 1.1 12-Mar-2020  pgoyette branches: 1.1.4;
Split out the quota code from the rest of compat_netbsd32 module. This
allows loading of compat_netbsd32 on kernels that don't have ``options
QUOTA'' enabled.
 1.1.4.2 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.1.4.1 12-Mar-2020  martin file Makefile was added on branch phil-wifi on 2020-04-13 08:05:09 +0000
 1.3 26-Sep-2019  christos Kill WARNS = 3 from all the modules that now compile cleanly.
 1.2 20-Feb-2019  rin branches: 1.2.4;
WARNS=3 for compat_netbsd32_* in order to appease sign-compare warnings
for mips64, where NETBSD32_POINTER_TYPE is signed.
 1.1 03-Feb-2019  pgoyette Don't include the raidframe compat code in the main raid module, the
compat code lives in their own compat_raid_xx modules, which will now
be autoloaded if needed.

While here, extract the compat_netbsd32_raid code into its own module,
too.

Welcome to 8.99.34
 1.2.4.3 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.2.4.2 10-Jun-2019  christos Sync with HEAD
 1.2.4.1 20-Feb-2019  christos file Makefile was added on branch phil-wifi on 2019-06-10 22:09:18 +0000
 1.5 26-Sep-2019  christos Kill WARNS = 3 from all the modules that now compile cleanly.
 1.4 20-Feb-2019  rin WARNS=3 for compat_netbsd32_* in order to appease sign-compare warnings
for mips64, where NETBSD32_POINTER_TYPE is signed.
 1.3 27-Jan-2019  pgoyette Merge the [pgoyette-compat] branch
 1.2 26-Nov-2018  mlelstv compat modules now require an extra include path for libnv.
 1.1 03-Dec-2015  pgoyette branches: 1.1.2; 1.1.18; 1.1.20; 1.1.22;
Split out the SYSV IPC stuff into its own compat_netbsd32_sysvipc
module. Adjust dependencies as needed.
 1.1.22.2 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.1.22.1 10-Jun-2019  christos Sync with HEAD
 1.1.20.2 26-Nov-2018  pgoyette Update from HEAD - need to add sys/external/bsd/libnv to the #include list
 1.1.20.1 12-Sep-2018  pgoyette Split compat_netbsd32_sysvipc into version-specific modules
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 03-Dec-2015  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:51 +0000
 1.1.2.2 27-Dec-2015  skrll Sync with HEAD (as of 26th Dec)
 1.1.2.1 03-Dec-2015  skrll file Makefile was added on branch nick-nhusb on 2015-12-27 12:10:06 +0000
 1.4 26-Sep-2019  christos Kill WARNS = 3 from all the modules that now compile cleanly.
 1.3 20-Feb-2019  rin branches: 1.3.4;
WARNS=3 for compat_netbsd32_* in order to appease sign-compare warnings
for mips64, where NETBSD32_POINTER_TYPE is signed.
 1.2 27-Jan-2019  pgoyette Merge the [pgoyette-compat] branch
 1.1 13-Sep-2018  pgoyette branches: 1.1.2;
file Makefile was initially added on branch pgoyette-compat.
 1.1.2.2 26-Nov-2018  pgoyette Add the libnv directory for all of the compat_netbsd32* modules
 1.1.2.1 13-Sep-2018  pgoyette Add Makefiles for version-specific compat_netbsd32_sysvipc* modules
 1.3.4.3 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.3.4.2 10-Jun-2019  christos Sync with HEAD
 1.3.4.1 20-Feb-2019  christos file Makefile was added on branch phil-wifi on 2019-06-10 22:09:18 +0000
 1.4 26-Sep-2019  christos Kill WARNS = 3 from all the modules that now compile cleanly.
 1.3 20-Feb-2019  rin branches: 1.3.4;
WARNS=3 for compat_netbsd32_* in order to appease sign-compare warnings
for mips64, where NETBSD32_POINTER_TYPE is signed.
 1.2 27-Jan-2019  pgoyette Merge the [pgoyette-compat] branch
 1.1 13-Sep-2018  pgoyette branches: 1.1.2;
file Makefile was initially added on branch pgoyette-compat.
 1.1.2.2 26-Nov-2018  pgoyette Add the libnv directory for all of the compat_netbsd32* modules
 1.1.2.1 13-Sep-2018  pgoyette Add Makefiles for version-specific compat_netbsd32_sysvipc* modules
 1.3.4.3 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.3.4.2 10-Jun-2019  christos Sync with HEAD
 1.3.4.1 20-Feb-2019  christos file Makefile was added on branch phil-wifi on 2019-06-10 22:09:18 +0000
 1.4 26-Sep-2019  christos Kill WARNS = 3 from all the modules that now compile cleanly.
 1.3 20-Feb-2019  rin branches: 1.3.4;
WARNS=3 for compat_netbsd32_* in order to appease sign-compare warnings
for mips64, where NETBSD32_POINTER_TYPE is signed.
 1.2 27-Jan-2019  pgoyette Merge the [pgoyette-compat] branch
 1.1 13-Sep-2018  pgoyette branches: 1.1.2;
file Makefile was initially added on branch pgoyette-compat.
 1.1.2.2 26-Nov-2018  pgoyette Add the libnv directory for all of the compat_netbsd32* modules
 1.1.2.1 13-Sep-2018  pgoyette Add Makefiles for version-specific compat_netbsd32_sysvipc* modules
 1.3.4.3 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.3.4.2 10-Jun-2019  christos Sync with HEAD
 1.3.4.1 20-Feb-2019  christos file Makefile was added on branch phil-wifi on 2019-06-10 22:09:18 +0000
 1.3 26-Sep-2019  christos Kill WARNS = 3 from all the modules that now compile cleanly.
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 13-Nov-2008  ad branches: 1.1.4; 1.1.6; 1.1.10; 1.1.74;
compat_ossaudio module, so others can depend on it.
 1.1.74.2 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.1.74.1 10-Jun-2019  christos Sync with HEAD
 1.1.10.2 04-May-2009  yamt sync with head.
 1.1.10.1 13-Nov-2008  yamt file Makefile was added on branch yamt-nfs-mp on 2009-05-04 08:14:07 +0000
 1.1.6.2 19-Jan-2009  skrll Sync with HEAD.
 1.1.6.1 13-Nov-2008  skrll file Makefile was added on branch nick-hppapmap on 2009-01-19 13:20:08 +0000
 1.1.4.2 17-Jan-2009  mjf Sync with HEAD.
 1.1.4.1 13-Nov-2008  mjf file Makefile was added on branch mjf-devfs2 on 2009-01-17 13:29:29 +0000
 1.4 26-Sep-2019  christos Kill WARNS = 3 from all the modules that now compile cleanly.
 1.3 17-Feb-2019  rin branches: 1.3.4;
Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.2 27-Jan-2019  pgoyette Merge the [pgoyette-compat] branch
 1.1 22-Sep-2018  pgoyette branches: 1.1.2;
file Makefile was initially added on branch pgoyette-compat.
 1.1.2.3 24-Jan-2019  pgoyette The raidframe compat code lives in sys/dev/raidframe/ so move all the
module stuff there. Update the Makefiles appropriately.
 1.1.2.2 23-Sep-2018  pgoyette Split the compat_crypto_50 from the rest of the crypto module

Cleanup some stuff left over from similar changes to raid modules.
 1.1.2.1 22-Sep-2018  pgoyette Split the raidframe compatability code out into separate modules, since
the driver is already a module. This avoids having to pass a bunch of
function pointers as arguments to raidframe's compat_ioctl().
 1.3.4.3 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.3.4.2 10-Jun-2019  christos Sync with HEAD
 1.3.4.1 17-Feb-2019  christos file Makefile was added on branch phil-wifi on 2019-06-10 22:09:19 +0000
 1.2 27-Jan-2019  pgoyette branches: 1.2.4;
Merge the [pgoyette-compat] branch
 1.1 22-Sep-2018  pgoyette branches: 1.1.2;
file Makefile was initially added on branch pgoyette-compat.
 1.1.2.3 24-Jan-2019  pgoyette The raidframe compat code lives in sys/dev/raidframe/ so move all the
module stuff there. Update the Makefiles appropriately.
 1.1.2.2 04-Oct-2018  pgoyette Don't include common compat_80 code in the raid-speific module
 1.1.2.1 22-Sep-2018  pgoyette Split the raidframe compatability code out into separate modules, since
the driver is already a module. This avoids having to pass a bunch of
function pointers as arguments to raidframe's compat_ioctl().
 1.2.4.2 10-Jun-2019  christos Sync with HEAD
 1.2.4.1 27-Jan-2019  christos file Makefile was added on branch phil-wifi on 2019-06-10 22:09:19 +0000
 1.4 13-Dec-2009  nakayama System utilities, boot programs and kernel modules are machine
(port) specific not CPU, so use MACHINE not MACHINE_ARCH.
 1.3 14-Feb-2009  abs branches: 1.3.2;
Convert more MACHINE tests to MACHINE_ARCH
 1.2 08-Dec-2008  njoly branches: 1.2.2; 1.2.4; 1.2.6;
s/SYSVIPC/SYSVMSG/, for message queues support.
 1.1 19-Nov-2008  ad Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime
 1.2.6.1 13-May-2009  jym Sync with HEAD.

Commit is split, to avoid a "too many arguments" protocol error.
 1.2.4.3 03-Mar-2009  skrll Sync with HEAD.
 1.2.4.2 19-Jan-2009  skrll Sync with HEAD.
 1.2.4.1 08-Dec-2008  skrll file Makefile was added on branch nick-hppapmap on 2009-01-19 13:20:08 +0000
 1.2.2.2 17-Jan-2009  mjf Sync with HEAD.
 1.2.2.1 08-Dec-2008  mjf file Makefile was added on branch mjf-devfs2 on 2009-01-17 13:29:29 +0000
 1.3.2.3 11-Mar-2010  yamt sync with head
 1.3.2.2 04-May-2009  yamt sync with head.
 1.3.2.1 14-Feb-2009  yamt file Makefile was added on branch yamt-nfs-mp on 2009-05-04 08:14:08 +0000
 1.4 13-Dec-2009  nakayama System utilities, boot programs and kernel modules are machine
(port) specific not CPU, so use MACHINE not MACHINE_ARCH.
 1.3 14-Feb-2009  abs branches: 1.3.2;
Convert more MACHINE tests to MACHINE_ARCH
 1.2 08-Dec-2008  njoly branches: 1.2.2; 1.2.4; 1.2.6;
s/SYSVIPC/SYSVMSG/, for message queues support.
 1.1 19-Nov-2008  ad Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime
 1.2.6.1 13-May-2009  jym Sync with HEAD.

Commit is split, to avoid a "too many arguments" protocol error.
 1.2.4.3 03-Mar-2009  skrll Sync with HEAD.
 1.2.4.2 19-Jan-2009  skrll Sync with HEAD.
 1.2.4.1 08-Dec-2008  skrll file Makefile was added on branch nick-hppapmap on 2009-01-19 13:20:08 +0000
 1.2.2.2 17-Jan-2009  mjf Sync with HEAD.
 1.2.2.1 08-Dec-2008  mjf file Makefile was added on branch mjf-devfs2 on 2009-01-17 13:29:29 +0000
 1.3.2.3 11-Mar-2010  yamt sync with head
 1.3.2.2 04-May-2009  yamt sync with head.
 1.3.2.1 14-Feb-2009  yamt file Makefile was added on branch yamt-nfs-mp on 2009-05-04 08:14:08 +0000
 1.4 26-Sep-2019  christos Kill WARNS = 3 from all the modules that now compile cleanly.
 1.3 17-Feb-2019  rin branches: 1.3.4;
Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.2 27-Jan-2019  pgoyette Merge the [pgoyette-compat] branch
 1.1 17-Apr-2018  pgoyette branches: 1.1.2;
file Makefile was initially added on branch pgoyette-compat.
 1.1.2.1 17-Apr-2018  pgoyette Actually create the new compat_sysctl_09_43 module
 1.3.4.3 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.3.4.2 10-Jun-2019  christos Sync with HEAD
 1.3.4.1 17-Feb-2019  christos file Makefile was added on branch phil-wifi on 2019-06-10 22:09:19 +0000
 1.2 27-Jan-2019  pgoyette branches: 1.2.4;
Merge the [pgoyette-compat] branch
 1.1 17-Apr-2018  pgoyette branches: 1.1.2;
file Makefile was initially added on branch pgoyette-compat.
 1.1.2.1 17-Apr-2018  pgoyette Split the compat_sysv module into several version-specific modules,
similar to the compat module.
 1.2.4.2 10-Jun-2019  christos Sync with HEAD
 1.2.4.1 27-Jan-2019  christos file Makefile was added on branch phil-wifi on 2019-06-10 22:09:19 +0000
 1.2 27-Jan-2019  pgoyette branches: 1.2.4;
Merge the [pgoyette-compat] branch
 1.1 17-Apr-2018  pgoyette branches: 1.1.2;
file Makefile was initially added on branch pgoyette-compat.
 1.1.2.1 17-Apr-2018  pgoyette Split the compat_sysv module into several version-specific modules,
similar to the compat module.
 1.2.4.2 10-Jun-2019  christos Sync with HEAD
 1.2.4.1 27-Jan-2019  christos file Makefile was added on branch phil-wifi on 2019-06-10 22:09:19 +0000
 1.2 27-Jan-2019  pgoyette branches: 1.2.4;
Merge the [pgoyette-compat] branch
 1.1 17-Apr-2018  pgoyette branches: 1.1.2;
file Makefile was initially added on branch pgoyette-compat.
 1.1.2.1 17-Apr-2018  pgoyette Split the compat_sysv module into several version-specific modules,
similar to the compat module.
 1.2.4.2 10-Jun-2019  christos Sync with HEAD
 1.2.4.1 27-Jan-2019  christos file Makefile was added on branch phil-wifi on 2019-06-10 22:09:19 +0000
 1.2 27-Jan-2019  pgoyette branches: 1.2.4;
Merge the [pgoyette-compat] branch
 1.1 30-Mar-2018  pgoyette branches: 1.1.2;
file Makefile was initially added on branch pgoyette-compat.
 1.1.2.1 30-Mar-2018  pgoyette Create the compat_util module for use by version-specific compat code.
(It's automatically included in the monolithic compat module, as well
as in kernels with built-in compat code.)
 1.2.4.2 10-Jun-2019  christos Sync with HEAD
 1.2.4.1 27-Jan-2019  christos file Makefile was added on branch phil-wifi on 2019-06-10 22:09:20 +0000
 1.3 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.2 28-Aug-2011  jmcneill branches: 1.2.54;
WARNS=3 is the default
 1.1 04-Aug-2011  jmcneill add mt2131, cx24227, and coram module glue
 1.2.54.1 10-Jun-2019  christos Sync with HEAD
 1.1 04-Aug-2011  jmcneill add mt2131, cx24227, and coram module glue
 1.9 03-Jun-2023  lukem bsd.own.mk: rename GCC_NO_* to CC_WNO_*

Rename compiler-warning-disable variables from
GCC_NO_warning
to
CC_WNO_warning
where warning is the full warning name as used by the compiler.

GCC_NO_IMPLICIT_FALLTHRU is CC_WNO_IMPLICIT_FALLTHROUGH

Using the convention CC_compilerflag, where compilerflag
is based on the full compiler flag name.
 1.8 01-Nov-2020  pgoyette Separate the compat_netbsd32_coredump from the compat_netbsd32 and
coredump modules, into its own module.

Welcome to 7.99.75 !!!
 1.7 19-Oct-2020  christos branches: 1.7.2;
Arrange so that no options COREDUMP and no options PTRACE work together.
Thanks to Paul Goyette for testing.
 1.6 20-Nov-2019  pgoyette Move all non-emulation-specific coredump code into the coredump module,
and remove all #ifdef COREDUMP conditional compilation. Now, the
coredump module is completely separated from the emulation modules, and
they can all be independently loaded and unloaded.

Welcome to 9.99.18 !
 1.5 13-Oct-2019  mrg introduce some common variables for use in GCC warning disables:

GCC_NO_FORMAT_TRUNCATION -Wno-format-truncation (GCC 7/8)
GCC_NO_STRINGOP_TRUNCATION -Wno-stringop-truncation (GCC 8)
GCC_NO_STRINGOP_OVERFLOW -Wno-stringop-overflow (GCC 8)
GCC_NO_CAST_FUNCTION_TYPE -Wno-cast-function-type (GCC 8)

use these to turn off warnings for most GCC-8 complaints. many
of these are false positives, most of the real bugs are already
commited, or are yet to come.


we plan to introduce versions of (some?) of these that use the
"-Wno-error=" form, which still displays the warnings but does
not make it an error, and all of the above will be re-considered
as either being "fix me" (warning still displayed) or "warning
is wrong."
 1.4 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.3 22-Mar-2010  mrg branches: 1.3.60;
add powerpc64 support. from dennis.c.ferguson@gmail.com in PR#43029.
 1.2 31-Mar-2009  dyoung branches: 1.2.2; 1.2.4; 1.2.6;
Also look for sources in sys/arch/x86/x86/ if MACHINE_ARCH is i386 or
x86_64.
 1.1 19-Nov-2008  ad branches: 1.1.4; 1.1.6; 1.1.8;
Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime
 1.1.8.1 13-May-2009  jym Sync with HEAD.

Commit is split, to avoid a "too many arguments" protocol error.
 1.1.6.3 28-Apr-2009  skrll Sync with HEAD.
 1.1.6.2 19-Jan-2009  skrll Sync with HEAD.
 1.1.6.1 19-Nov-2008  skrll file Makefile was added on branch nick-hppapmap on 2009-01-19 13:20:08 +0000
 1.1.4.2 17-Jan-2009  mjf Sync with HEAD.
 1.1.4.1 19-Nov-2008  mjf file Makefile was added on branch mjf-devfs2 on 2009-01-17 13:29:29 +0000
 1.2.6.1 30-May-2010  rmind sync with head
 1.2.4.1 30-Apr-2010  uebayasi Sync with HEAD.
 1.2.2.3 11-Aug-2010  yamt sync with head.
 1.2.2.2 04-May-2009  yamt sync with head.
 1.2.2.1 31-Mar-2009  yamt file Makefile was added on branch yamt-nfs-mp on 2009-05-04 08:14:08 +0000
 1.3.60.3 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.3.60.2 08-Apr-2020  martin Merge changes from current as of 20200406
 1.3.60.1 10-Jun-2019  christos Sync with HEAD
 1.7.2.1 14-Dec-2020  thorpej Sync w/ HEAD.
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 20-Feb-2011  jruoho branches: 1.1.2; 1.1.4; 1.1.8; 1.1.62;
Add build glue for coretemp(4).
 1.1.62.1 10-Jun-2019  christos Sync with HEAD
 1.1.8.2 06-Jun-2011  jruoho Sync with HEAD.
 1.1.8.1 20-Feb-2011  jruoho file Makefile was added on branch jruoho-x86intr on 2011-06-06 09:09:47 +0000
 1.1.4.2 05-Mar-2011  rmind sync with head
 1.1.4.1 20-Feb-2011  rmind file Makefile was added on branch rmind-uvmplock on 2011-03-05 20:55:39 +0000
 1.1.2.2 05-Mar-2011  bouyer Sync with HEAD
 1.1.2.1 20-Feb-2011  bouyer file Makefile was added on branch bouyer-quota2 on 2011-03-05 15:10:43 +0000
 1.1 20-Feb-2011  jruoho branches: 1.1.2; 1.1.4; 1.1.8;
Add build glue for coretemp(4).
 1.1.8.2 06-Jun-2011  jruoho Sync with HEAD.
 1.1.8.1 20-Feb-2011  jruoho file coretemp.ioconf was added on branch jruoho-x86intr on 2011-06-06 09:09:47 +0000
 1.1.4.2 05-Mar-2011  rmind sync with head
 1.1.4.1 20-Feb-2011  rmind file coretemp.ioconf was added on branch rmind-uvmplock on 2011-03-05 20:55:39 +0000
 1.1.2.2 05-Mar-2011  bouyer Sync with HEAD
 1.1.2.1 20-Feb-2011  bouyer file coretemp.ioconf was added on branch bouyer-quota2 on 2011-03-05 15:10:43 +0000
 1.6 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.5 27-Jan-2019  pgoyette Merge the [pgoyette-compat] branch
 1.4 20-Aug-2015  christos branches: 1.4.16; 1.4.18;
Add ioconf entries to the pseudo-devices.
 1.3 03-Feb-2014  pgoyette branches: 1.3.4; 1.3.6; 1.3.10; 1.3.12;
Undo previous - it still needs a lot more work.

For now, we'll use the hand-crafted cf* structures and directly
call all the config routines.
 1.2 31-Jan-2014  pgoyette Provide ioconf file to generate config data structures
 1.1 29-Dec-2013  pgoyette Start modularizing the opencrypto framework.
 1.3.12.1 22-Sep-2015  skrll Sync with HEAD
 1.3.10.3 03-Dec-2017  jdolecek update from HEAD
 1.3.10.2 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.3.10.1 03-Feb-2014  tls file Makefile was added on branch tls-maxphys on 2014-08-20 00:04:32 +0000
 1.3.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.3.6.1 03-Feb-2014  yamt file Makefile was added on branch yamt-pagecache on 2014-05-22 11:41:06 +0000
 1.3.4.2 18-May-2014  rmind sync with head
 1.3.4.1 03-Feb-2014  rmind file Makefile was added on branch rmind-smpnet on 2014-05-18 17:46:10 +0000
 1.4.18.1 10-Jun-2019  christos Sync with HEAD
 1.4.16.1 23-Sep-2018  pgoyette Split the compat_crypto_50 from the rest of the crypto module

Cleanup some stuff left over from similar changes to raid modules.
 1.3 20-Aug-2015  christos branches: 1.3.2; 1.3.18;
Add ioconf entries to the pseudo-devices.
 1.2 03-Feb-2014  pgoyette Undo previous - it still needs a lot more work.

For now, we'll use the hand-crafted cf* structures and directly
call all the config routines.
 1.1 31-Jan-2014  pgoyette Provide ioconf file to generate config data structures
 1.3.18.2 03-Dec-2017  jdolecek update from HEAD
 1.3.18.1 20-Aug-2015  jdolecek file crypto.ioconf was added on branch tls-maxphys on 2017-12-03 11:38:51 +0000
 1.3.2.2 22-Sep-2015  skrll Sync with HEAD
 1.3.2.1 20-Aug-2015  skrll file crypto.ioconf was added on branch nick-nhusb on 2015-09-22 12:06:09 +0000
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 04-Aug-2011  jmcneill branches: 1.1.54;
add mt2131, cx24227, and coram module glue
 1.1.54.1 10-Jun-2019  christos Sync with HEAD
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 14-Jul-2011  jmcneill branches: 1.1.54;
module glue for nxt2k, tvpll, cxdtv
 1.1.54.1 10-Jun-2019  christos Sync with HEAD
 1.1 14-Jul-2011  jmcneill module glue for nxt2k, tvpll, cxdtv
 1.5 12-Feb-2020  riastradh cyclic.kmod needs -Wno-sign-compare for aarch64 CPU_INFO_FOREACH.

Provisional workaround; feel free to fix.
 1.4 03-Dec-2019  jmcneill branches: 1.4.2;
dtrace: add support for aarch64
 1.3 05-Mar-2014  ozaki-r branches: 1.3.30; 1.3.34;
Tidy up Makefile of cyclic and dtrace modules to support ARM
 1.2 14-Dec-2012  christos branches: 1.2.2; 1.2.4; 1.2.6;
make this work
 1.1 02-Dec-2012  chs adapt the cyclic module and profile dtrace provider to netbsd.
for now, just hook the cyclic callback into hardclock().
 1.2.6.3 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.2.6.2 25-Feb-2013  tls resync with head
 1.2.6.1 14-Dec-2012  tls file Makefile was added on branch tls-maxphys on 2013-02-25 00:30:00 +0000
 1.2.4.1 18-May-2014  rmind sync with head
 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 23-Jan-2013  yamt sync with head
 1.2.2.2 16-Jan-2013  yamt sync with (a bit old) head
 1.2.2.1 14-Dec-2012  yamt file Makefile was added on branch yamt-pagecache on 2013-01-16 05:33:47 +0000
 1.3.34.2 12-Feb-2020  martin Pull up following revision(s) (requested by riastradh in ticket #701):

external/cddl/osnet/dev/dtrace/aarch64/dtrace_isa.c: revision 1.2
external/cddl/osnet/dist/lib/libdtrace/common/dt_open.c: revision 1.17
external/cddl/osnet/dist/lib/libdtrace/common/dt_module.c: revision 1.18
sys/modules/cyclic/Makefile: revision 1.5
external/cddl/osnet/dev/dtrace/aarch64/dtrace_subr.c: revision 1.2
external/cddl/osnet/dev/dtrace/aarch64/dtrace_subr.c: revision 1.3
sys/arch/aarch64/aarch64/vectors.S: revision 1.10
external/cddl/osnet/dev/fbt/aarch64/fbt_isa.c: revision 1.2
external/cddl/osnet/dev/fbt/aarch64/fbt_isa.c: revision 1.3
external/cddl/osnet/dev/fbt/aarch64/fbt_isa.c: revision 1.4
external/cddl/osnet/dev/fbt/aarch64/fbt_isa.c: revision 1.5
external/cddl/osnet/dev/fbt/aarch64/fbt_isa.c: revision 1.6
sys/arch/aarch64/include/cpu.h: revision 1.20
external/cddl/osnet/dist/lib/libdtrace/common/dt_impl.h: revision 1.9

Create a buffer space of 512 bytes before the trapframe.

dtrace fbt needs enough space to emulate an

stp x29, x30, [sp,#-FRAMESIZE]!

instruction in a function prologue. In the aarch64 instruction
encoding, FRAMESIZE can be as large as 512 bytes, so reserve this
much space when KDTRACE_HOOKS is enabled.

Use db_write_bytes to overwrite kernel text.

Tidy up a bit. No functional change intended.

aarch64 fbt_invop doesn't actually use the argument, but it would
make more sense for it to be the return value and/or first argument
register. Certainly it's not `eax'!

Tidy up a bit: don't set things we won't use; assert nonzeroness.

Use /dev/ksyms, not /netbsd, for the running kernel's symbols.

Teach dtrace about el1_trap_exit frames on aarch64.

Implement dtrace_getarg and dtrace_getreg while here.

Count the number of artificial frames in aarch64 fbt probe correctly.

Change the address ranges that aarch64 considers toxic for dtrace.
`Toxic' means dtrace forbids D scripts from even attempting to read
or write at them.

Previously we considered [0, VM_MIN_KERNEL_ADDRESS) toxic, but
VM_MIN_KERNEL_ADDRESS is only the minimum address of the kernel map;
the direct-mapped region lies below it, and with PMAP_MAP_POOLPAGE we
allocate virtual pages for pool backing directly from physical pages
through the direct-mapped region. Also, this did not consider I/O
mappings to be toxic, which they probably should be.

Instead, treat:

[0, AARCH64_KSEG_START)
and
[VM_KERNEL_IO_ADDRESS, 0xfff...ff)

as toxic. (The upper bound for 0xfff...ff ought to be inclusive, not
exclusive, but I think we'll need another mechanism for expressing
that to dtrace!)

Switch from db_write_bytes to using direct-mapping.

This way there's no dependency on ddb.

Define the MULTIPROCESSOR cpu_number() for modules too.
Modules should work whether the main kernel is multiprocessor or not.
In particular, dtrace should not think cpu_number() is 0 while
cpu_index(curcpu()) and curcpu()->ci_index are nonzero, leading to
rather spectacularly bogus results...

cyclic.kmod needs -Wno-sign-compare for aarch64 CPU_INFO_FOREACH.
Provisional workaround; feel free to fix.
 1.3.34.1 09-Dec-2019  martin Pull up following revision(s) (requested by jmcneill in ticket #525):

external/cddl/osnet/dev/dtrace/aarch64/dtrace_isa.c: revision 1.1
distrib/sets/lists/modules/md.i386: revision 1.83
share/mk/bsd.own.mk: revision 1.1168
usr.bin/mkubootimage/mkubootimage.c: revision 1.25
sys/modules/dtrace/Makefile: revision 1.7
usr.bin/mkubootimage/mkubootimage.c: revision 1.26
sys/modules/dtrace/Makefile: revision 1.8
external/cddl/osnet/dist/lib/libdtrace/aarch64/dt_isadep.c: revision 1.2
distrib/sets/lists/modules/mi: revision 1.128
sys/arch/aarch64/include/frame.h: revision 1.3
sys/arch/evbarm/conf/mk.generic64: revision 1.4
external/cddl/osnet/dist/lib/libdtrace/common/dt_link.c: revision 1.12
sys/modules/cyclic/Makefile: revision 1.4
sys/arch/aarch64/conf/Makefile.aarch64: revision 1.16
external/cddl/osnet/dev/dtrace/aarch64/dtrace_subr.c: revision 1.1
sys/arch/aarch64/aarch64/start.S: revision 1.3
sys/arch/aarch64/aarch64/trap.c: revision 1.22
external/cddl/osnet/dev/fbt/aarch64/fbt_isa.c: revision 1.1
external/cddl/osnet/dev/dtrace/aarch64/dtrace_asm.S: revision 1.1
external/cddl/osnet/dev/fbt/aarch64/fbt_isa.h: revision 1.1
external/cddl/osnet/dev/dtrace/aarch64/regset.h: revision 1.1
external/cddl/osnet/lib/libdtrace/Makefile: revision 1.26
distrib/sets/lists/modules/md.amd64: revision 1.82
usr.bin/mkubootimage/mkubootimage.1: revision 1.13
distrib/sets/lists/modules/ad.arm: revision 1.14

Add KDTRACE_HOOKS support.

Define lwp_trapframe() macro

dtrace: add support for aarch64

Add syscall_linux back for other arm architectures (accidently removed
in previous)

Add -u flag for updating headers in place.

Fix alignment of .text section by changing load address to
0xffffffc000000000 and adding 64 bytes of padding before the entry point.

Update arm64 image header in place

Move dtrace_syscall_linux out of mi set list

Enable DTrace on aarch64

Fix signed/unsigned comparison
 1.3.30.1 08-Apr-2020  martin Merge changes from current as of 20200406
 1.4.2.1 29-Feb-2020  ad Sync with head.
 1.3 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.2 28-Aug-2011  jmcneill branches: 1.2.54;
WARNS=3 is the default
 1.1 31-Jul-2011  jmcneill add module glue for dbcool
 1.2.54.1 10-Jun-2019  christos Sync with HEAD
 1.1 31-Jul-2011  jmcneill add module glue for dbcool
 1.1 01-Jan-2014  pgoyette branches: 1.1.4; 1.1.6; 1.1.10;
Create modules for software crypto components.
 1.1.10.2 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.1.10.1 01-Jan-2014  tls file Makefile was added on branch tls-maxphys on 2014-08-20 00:04:32 +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 01-Jan-2014  yamt file Makefile was added on branch yamt-pagecache on 2014-05-22 11:41:06 +0000
 1.1.4.2 18-May-2014  rmind sync with head
 1.1.4.1 01-Jan-2014  rmind file Makefile was added on branch rmind-smpnet on 2014-05-18 17:46:10 +0000
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 28-Dec-2013  pgoyette branches: 1.1.4; 1.1.6; 1.1.10; 1.1.36;
Make dksubr.c into a module, and make the cgd and dm modules depend on
it.

Now that cgd is completely modularized, descend into modules/cgd to
actually create the module.
 1.1.36.1 10-Jun-2019  christos Sync with HEAD
 1.1.10.2 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.1.10.1 28-Dec-2013  tls file Makefile was added on branch tls-maxphys on 2014-08-20 00:04:32 +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 28-Dec-2013  yamt file Makefile was added on branch yamt-pagecache on 2014-05-22 11:41:06 +0000
 1.1.4.2 18-May-2014  rmind sync with head
 1.1.4.1 28-Dec-2013  rmind file Makefile was added on branch rmind-smpnet on 2014-05-18 17:46:10 +0000
 1.8 16-Dec-2019  tkusumi dm: Enable dm-error and dm-zero target

Add these two targets to dm.kmod.
These are generally available in Linux and DragonFlyBSD,
so enable them in NetBSD as well.
 1.7 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.6 20-Aug-2015  christos branches: 1.6.18;
Add ioconf entries to the pseudo-devices.
 1.5 07-Dec-2009  uebayasi branches: 1.5.22; 1.5.40;
Typo.
 1.4 02-Jan-2009  haad branches: 1.4.2; 1.4.4; 1.4.8;
Add stubs for mirror target, too. This target does nothing for now, but lvm
tools support mirror target and trying to create LV with mirrorred backend
caused panic in dm_table_load_ioctl.
 1.3 02-Jan-2009  haad Remove unneeded targets from dm driver and build them as separate modules.

The zero, error and snapshot targets are build as modules and can be loaded
to dm driver with modload. I do not build/install these drivers by default.

The linear and stripe targets are needed for LVM so I keep them compiled in
dm.
 1.2 19-Dec-2008  haad Add makefile for building device-mapper kernel module.
 1.1 03-Aug-2008  haad branches: 1.1.2;
file Makefile was initially added on branch haad-dm.
 1.1.2.1 03-Aug-2008  haad Add device-mapper module dir.
 1.4.8.3 11-Mar-2010  yamt sync with head
 1.4.8.2 04-May-2009  yamt sync with head.
 1.4.8.1 02-Jan-2009  yamt file Makefile was added on branch yamt-nfs-mp on 2009-05-04 08:14:08 +0000
 1.4.4.2 19-Jan-2009  skrll Sync with HEAD.
 1.4.4.1 02-Jan-2009  skrll file Makefile was added on branch nick-hppapmap on 2009-01-19 13:20:08 +0000
 1.4.2.2 17-Jan-2009  mjf Sync with HEAD.
 1.4.2.1 02-Jan-2009  mjf file Makefile was added on branch mjf-devfs2 on 2009-01-17 13:29:29 +0000
 1.5.40.1 22-Sep-2015  skrll Sync with HEAD
 1.5.22.1 03-Dec-2017  jdolecek update from HEAD
 1.6.18.2 08-Apr-2020  martin Merge changes from current as of 20200406
 1.6.18.1 10-Jun-2019  christos Sync with HEAD
 1.1 20-Aug-2015  christos branches: 1.1.2; 1.1.18;
Add ioconf entries to the pseudo-devices.
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 20-Aug-2015  jdolecek file dm.ioconf was added on branch tls-maxphys on 2017-12-03 11:38:51 +0000
 1.1.2.2 22-Sep-2015  skrll Sync with HEAD
 1.1.2.1 20-Aug-2015  skrll file dm.ioconf was added on branch nick-nhusb on 2015-09-22 12:06:09 +0000
 1.2 05-Feb-2012  christos -D flags belong in CPPFLAGS
 1.1 02-Jan-2009  haad branches: 1.1.2; 1.1.4; 1.1.8; 1.1.20; 1.1.24;
Remove unneeded targets from dm driver and build them as separate modules.

The zero, error and snapshot targets are build as modules and can be loaded
to dm driver with modload. I do not build/install these drivers by default.

The linear and stripe targets are needed for LVM so I keep them compiled in
dm.
 1.1.24.1 18-Feb-2012  mrg merge to -current.
 1.1.20.1 17-Apr-2012  yamt sync with head
 1.1.8.2 04-May-2009  yamt sync with head.
 1.1.8.1 02-Jan-2009  yamt file Makefile was added on branch yamt-nfs-mp on 2009-05-04 08:14:08 +0000
 1.1.4.2 19-Jan-2009  skrll Sync with HEAD.
 1.1.4.1 02-Jan-2009  skrll file Makefile was added on branch nick-hppapmap on 2009-01-19 13:20:08 +0000
 1.1.2.2 17-Jan-2009  mjf Sync with HEAD.
 1.1.2.1 02-Jan-2009  mjf file Makefile was added on branch mjf-devfs2 on 2009-01-17 13:29:29 +0000
 1.2 05-Feb-2012  christos -D flags belong in CPPFLAGS
 1.1 02-Jan-2009  haad branches: 1.1.2; 1.1.4; 1.1.8; 1.1.20; 1.1.24;
Add stubs for mirror target, too. This target does nothing for now, but lvm
tools support mirror target and trying to create LV with mirrorred backend
caused panic in dm_table_load_ioctl.
 1.1.24.1 18-Feb-2012  mrg merge to -current.
 1.1.20.1 17-Apr-2012  yamt sync with head
 1.1.8.2 04-May-2009  yamt sync with head.
 1.1.8.1 02-Jan-2009  yamt file Makefile was added on branch yamt-nfs-mp on 2009-05-04 08:14:08 +0000
 1.1.4.2 19-Jan-2009  skrll Sync with HEAD.
 1.1.4.1 02-Jan-2009  skrll file Makefile was added on branch nick-hppapmap on 2009-01-19 13:20:08 +0000
 1.1.2.2 17-Jan-2009  mjf Sync with HEAD.
 1.1.2.1 02-Jan-2009  mjf file Makefile was added on branch mjf-devfs2 on 2009-01-17 13:29:29 +0000
 1.2 05-Feb-2012  christos -D flags belong in CPPFLAGS
 1.1 02-Jan-2009  haad branches: 1.1.2; 1.1.4; 1.1.8; 1.1.20; 1.1.24;
Remove unneeded targets from dm driver and build them as separate modules.

The zero, error and snapshot targets are build as modules and can be loaded
to dm driver with modload. I do not build/install these drivers by default.

The linear and stripe targets are needed for LVM so I keep them compiled in
dm.
 1.1.24.1 18-Feb-2012  mrg merge to -current.
 1.1.20.1 17-Apr-2012  yamt sync with head
 1.1.8.2 04-May-2009  yamt sync with head.
 1.1.8.1 02-Jan-2009  yamt file Makefile was added on branch yamt-nfs-mp on 2009-05-04 08:14:08 +0000
 1.1.4.2 19-Jan-2009  skrll Sync with HEAD.
 1.1.4.1 02-Jan-2009  skrll file Makefile was added on branch nick-hppapmap on 2009-01-19 13:20:08 +0000
 1.1.2.2 17-Jan-2009  mjf Sync with HEAD.
 1.1.2.1 02-Jan-2009  mjf file Makefile was added on branch mjf-devfs2 on 2009-01-17 13:29:29 +0000
 1.2 05-Feb-2012  christos -D flags belong in CPPFLAGS
 1.1 02-Jan-2009  haad branches: 1.1.2; 1.1.4; 1.1.8; 1.1.20; 1.1.24;
Remove unneeded targets from dm driver and build them as separate modules.

The zero, error and snapshot targets are build as modules and can be loaded
to dm driver with modload. I do not build/install these drivers by default.

The linear and stripe targets are needed for LVM so I keep them compiled in
dm.
 1.1.24.1 18-Feb-2012  mrg merge to -current.
 1.1.20.1 17-Apr-2012  yamt sync with head
 1.1.8.2 04-May-2009  yamt sync with head.
 1.1.8.1 02-Jan-2009  yamt file Makefile was added on branch yamt-nfs-mp on 2009-05-04 08:14:08 +0000
 1.1.4.2 19-Jan-2009  skrll Sync with HEAD.
 1.1.4.1 02-Jan-2009  skrll file Makefile was added on branch nick-hppapmap on 2009-01-19 13:20:08 +0000
 1.1.2.2 17-Jan-2009  mjf Sync with HEAD.
 1.1.2.1 02-Jan-2009  mjf file Makefile was added on branch mjf-devfs2 on 2009-01-17 13:29:29 +0000
 1.5 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.4 18-Feb-2011  jmcneill branches: 1.4.56;
add drm_sman, drm_mm, drm_hashtab
 1.3 22-Jun-2009  tron branches: 1.3.4; 1.3.6; 1.3.8;
Fix modules build after update of drm(4).
 1.2 19-May-2008  tnn branches: 1.2.2; 1.2.4; 1.2.10; 1.2.14; 1.2.18; 1.2.22; 1.2.24;
Fix build.
 1.1 18-May-2008  jmcneill Add Makefiles for building drmbase and i915drm as kmods.
 1.2.24.1 21-Apr-2010  matt sync to netbsd-5
 1.2.22.3 18-Jul-2009  yamt sync with head.
 1.2.22.2 04-May-2009  yamt sync with head.
 1.2.22.1 19-May-2008  yamt file Makefile was added on branch yamt-nfs-mp on 2009-05-04 08:14:09 +0000
 1.2.18.1 23-Jul-2009  jym Sync with HEAD.
 1.2.14.1 23-Jun-2009  snj Pull up following revision(s) (requested by mrg in ticket #829):
sys/modules/drm/Makefile: revision 1.3
sys/modules/i915drm/Makefile: revision 1.4
sys/modules/radeondrm/Makefile: revision 1.6
Fix modules build after update of drm(4).
 1.2.10.2 24-Sep-2008  wrstuden Sync with wrstuden-revivesa-base-2
 1.2.10.1 19-May-2008  wrstuden file Makefile was added on branch wrstuden-revivesa on 2008-09-24 05:28:33 +0000
 1.2.4.2 04-Jun-2008  yamt sync with head
 1.2.4.1 19-May-2008  yamt file Makefile was added on branch yamt-pf42 on 2008-06-04 02:05:47 +0000
 1.2.2.2 02-Jun-2008  mjf Sync with HEAD.
 1.2.2.1 19-May-2008  mjf file Makefile was added on branch mjf-devfs2 on 2008-06-02 13:24:21 +0000
 1.3.8.1 05-Mar-2011  bouyer Sync with HEAD
 1.3.6.1 06-Jun-2011  jruoho Sync with HEAD.
 1.3.4.1 05-Mar-2011  rmind sync with head
 1.4.56.1 10-Jun-2019  christos Sync with HEAD
 1.19 31-Jan-2023  riastradh sys/modules/drmkms: Remove GPU scheduler files.

These have been moved out to drmkms_sched.kmod.

XXX pullup-10
 1.18 17-Jul-2022  riastradh branches: 1.18.4;
drm: Include GPU scheduler in drmkms.kmod.

Could be split into a separate module, but whatever.
 1.17 17-Jul-2022  riastradh drm: Sync module/drmkms/Makefile with files.drmkms.

Unconditionally include legacy APIs for viadrmums.
 1.16 17-Jul-2022  riastradh drm: Dust off module build a little.
 1.15 19-Dec-2021  riastradh drm: Sync (device-independent) drmkms*.kmod makefiles.
 1.14 03-Jun-2021  nia build the drmkms modules with -fwrapv too
 1.13 14-Feb-2020  riastradh branches: 1.13.10; 1.13.14;
Carry new CWARNFLAGS over to module reachover makefiles.

Forgot these modules existed!
 1.12 17-Feb-2019  rin branches: 1.12.6;
Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.11 28-Aug-2018  riastradh Rework PCI and AGP conditionalization.

- Push drm_pci_set_unique into driver callback.
- Eliminate drm_pci_set_unique_hook.
- Gather all drm_agp_* functions into struct drm_agp_hooks.
- Replace the nonsensical old atomic garbage by serious locking.
- Make drm_agpsupport.c its own module.
- Eliminate NDRMKMS_PCI.
- Use NAGP from "agp.h" only in drm_module.c for horrible hack.
=> See comment in file for rationale.
- Always define CONFIG_PCI=1 and CONFIG_AGP=1.
- Always go through the drm_agp_* function hooks.
- Ifdef out nouveau agp stuff that doesn't go through drm_agp_*
for reasons that I'm too frustrated to figure out tonight.
- pci_iomap no longer automagically does agp_i810_borrow.
=> Use drm_agp_borrow instead.
 1.10 27-Aug-2018  riastradh Make drmkms.kmod build again on amd64.
 1.9 05-Mar-2015  riastradh branches: 1.9.16; 1.9.18;
Factor generic parts of intelfb out into a drmfb.

Adapting radeondrmkmsfb should not be hard.

This will make nouveaufb easier too.
 1.8 05-Mar-2015  riastradh Rewrite drm_encoder_slave.c, as nouveau will need.
 1.7 22-Nov-2014  riastradh branches: 1.7.2;
Move all PCI/AGP code back to drmkms_pci module where it belongs.
 1.6 12-Nov-2014  christos this module needs MKLDSCRIPT too now
 1.5 12-Nov-2014  christos make this work: add agpsupport and sysctl code
 1.4 11-Nov-2014  nonaka fix build failure.

> /tmp/bracket/build/2014.11.10.22.43.46-i386/src/sys/external/bsd/drm2/include/linux/pci.h:36:20: fatal error: acpica.h: No such file or directory
 1.3 16-Jul-2014  riastradh branches: 1.3.2; 1.3.4;
Make it build and boot on my test machines.

Screen blanks on boot on the Ivy Bridge system with

DRM error in cpt_serr_int_handler: PCH transcoder A FIFO underrun

But after that everything is OK. Appears to be an upstream problem.
To investigate...

I think there's a cache flushing issue somewhere -- there are little
display artefacts on my T60.
 1.2 18-Mar-2014  riastradh branches: 1.2.2; 1.2.4; 1.2.6;
Merge riastradh-drm2 to HEAD.
 1.1 04-Mar-2014  riastradh branches: 1.1.2;
file Makefile was initially added on branch riastradh-drm2.
 1.1.2.1 04-Mar-2014  riastradh Rework drm2 configuration and modularization.

- Split drm2.kmod into drmkms_linux, drmkms, drmkms_pci.
- Split up drmkms-related files.* similarly.
- Make drm_agp_* routines hooks that the drmkms_pci module installs.
- Reuse drm device major 180 for (old) drm and drmkms.

Now old drm and new drmkms can coexist happily in the same tree, with
or without PCI, and require no changes to userland.
 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 18-Mar-2014  yamt file Makefile was added on branch yamt-pagecache on 2014-05-22 11:41:07 +0000
 1.2.4.2 18-May-2014  rmind sync with head
 1.2.4.1 18-Mar-2014  rmind file Makefile was added on branch rmind-smpnet on 2014-05-18 17:46:11 +0000
 1.2.2.1 10-Aug-2014  tls Rebase.
 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 16-Jul-2014  tls file Makefile was added on branch tls-maxphys on 2014-08-20 00:04:32 +0000
 1.3.2.2 06-Mar-2015  snj Pull up following revision(s) (requested by mrg in ticket #573):
sys/external/bsd/common/include/linux/kernel.h: 1.5, 1.6
sys/external/bsd/drm2/dist/drm/drm_ioctl.c: 1.4
sys/external/bsd/drm2/dist/drm/drm_irq.c: 1.6-1.8
sys/external/bsd/drm2/dist/drm/i915/i915_dma.c: 1.13-1.15
sys/external/bsd/drm2/dist/drm/i915/i915_gem.c: 1.23-1.27
sys/external/bsd/drm2/dist/drm/i915/i915_gem_execbuffer.c: 1.5
sys/external/bsd/drm2/dist/drm/i915/intel_display.c: 1.14, 1.15
sys/external/bsd/drm2/dist/drm/i915/intel_dp.c: 1.10
sys/external/bsd/drm2/dist/drm/i915/intel_drv.h: 1.8
sys/external/bsd/drm2/dist/drm/i915/intel_i2c.c: 1.8-1.13
sys/external/bsd/drm2/dist/drm/i915/intel_pm.c: 1.6
sys/external/bsd/drm2/dist/drm/i915/intel_ringbuffer.c: 1.5, 1.6
sys/external/bsd/drm2/dist/drm/nouveau/core/engine/device/nouveau_engine_device_base.c: 1.4
sys/external/bsd/drm2/dist/drm/nouveau/core/engine/fifo/nouveau_engine_fifo_nvc0.c: 1.3, 1.4
sys/external/bsd/drm2/dist/drm/nouveau/core/engine/fifo/nouveau_engine_fifo_nve0.c: 1.3, 1.4
sys/external/bsd/drm2/dist/drm/nouveau/core/include/core/device.h: 1.4
sys/external/bsd/drm2/dist/drm/nouveau/core/include/subdev/mc.h: 1.2
sys/external/bsd/drm2/dist/drm/nouveau/core/include/subdev/pwr.h: 1.3, 1.4
sys/external/bsd/drm2/dist/drm/nouveau/core/os.h: 1.4, 1.5
sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/bios/nouveau_subdev_bios_base.c: 1.2
sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/bios/nouveau_subdev_bios_pll.c: 1.2
sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/clock/nouveau_subdev_clock_base.c: 1.2
sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/clock/nouveau_subdev_clock_nv50.c: 1.2
sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/devinit/fbmem.h: 1.2
sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/devinit/nouveau_subdev_devinit_nv04.c: 1.2
sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/fb/nouveau_subdev_fb_nv50.c: 1.2
sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/fb/nouveau_subdev_fb_nvc0.c: 1.2
sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/fb/nv50.h: 1.2
sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/fb/nvc0.h: 1.2
sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/mc/nouveau_subdev_mc_base.c: 1.2, 1.3
sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/mxm/nouveau_subdev_mxm_nv50.c: 1.2
sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/pwr/nouveau_subdev_pwr_base.c: 1.3, 1.4
sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/therm/nouveau_subdev_therm_ic.c: 1.2
sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/timer/nouveau_subdev_timer_nv04.c: 1.2
sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/vm/nouveau_subdev_vm_base.c: 1.2
sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/vm/nouveau_subdev_vm_nv04.c: 1.2
sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/vm/nouveau_subdev_vm_nv44.c: 1.2
sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/vm/nv04.h: 1.2
sys/external/bsd/drm2/dist/drm/nouveau/nouveau_bo.h: 1.3
sys/external/bsd/drm2/dist/drm/nouveau/nouveau_drm.c: 1.4, 1.5
sys/external/bsd/drm2/dist/drm/nouveau/nouveau_fbcon.c: 1.2
sys/external/bsd/drm2/dist/drm/nouveau/nouveau_nv50_display.c: 1.3
sys/external/bsd/drm2/dist/drm/nouveau/nouveau_nv84_fence.c: 1.2
sys/external/bsd/drm2/dist/drm/nouveau/nouveau_ttm.c: 1.3
sys/external/bsd/drm2/dist/drm/nouveau/nouveau_ttm.h: 1.2
sys/external/bsd/drm2/dist/drm/nouveau/nouveau_vga.h: 1.2
sys/external/bsd/drm2/dist/drm/radeon/radeon_fence.c: 1.6-1.8
sys/external/bsd/drm2/dist/drm/radeon/radeon_pm.c: 1.3
sys/external/bsd/drm2/dist/drm/radeon/rs400.c: 1.3
sys/external/bsd/drm2/dist/drm/via/via_dmablit.c: 1.3, 1.4
sys/external/bsd/drm2/dist/drm/via/via_drv.h: 1.3
sys/external/bsd/drm2/dist/drm/via/via_irq.c: 1.3, 1.4
sys/external/bsd/drm2/dist/drm/via/via_video.c: 1.3, 1.4
sys/external/bsd/drm2/dist/include/drm/drmP.h: 1.10
sys/external/bsd/drm2/dist/include/drm/drm_crtc.h: 1.4
sys/external/bsd/drm2/dist/include/drm/drm_modes.h: 1.3
sys/external/bsd/drm2/dist/uapi/drm/i915_drm.h: 1.2
sys/external/bsd/drm2/drm/drm_cache.c: 1.4-1.6
sys/external/bsd/drm2/drm/drm_drv.c: 1.14
sys/external/bsd/drm2/drm/drm_module.c: 1.10
sys/external/bsd/drm2/drm/drm_sysctl.c: 1.5
sys/external/bsd/drm2/drm/drm_vma_manager.c: 1.2
sys/external/bsd/drm2/drm/drmfb.c: 1.1
sys/external/bsd/drm2/drm/files.drmkms: 1.10, 1.11
sys/external/bsd/drm2/i2c/drm_encoder_slave.c: 1.1
sys/external/bsd/drm2/i915drm/files.i915drmkms: 1.7, 1.10
sys/external/bsd/drm2/i915drm/intelfb.c: 1.11, 1.12
sys/external/bsd/drm2/include/asm/io.h: 1.4
sys/external/bsd/drm2/include/asm/unaligned.h: 1.2, 1.3
sys/external/bsd/drm2/include/drm/drm_encoder_slave.h: 1.1
sys/external/bsd/drm2/include/drm/drm_wait_netbsd.h: 1.7-1.11
sys/external/bsd/drm2/include/drm/drmfb.h: 1.1
sys/external/bsd/drm2/include/drm/drmfb_pci.h: 1.1, 1.2
sys/external/bsd/drm2/include/linux/bitops.h: 1.9
sys/external/bsd/drm2/include/linux/i2c.h: 1.7, 1.8
sys/external/bsd/drm2/include/linux/io-mapping.h: 1.5
sys/external/bsd/drm2/include/linux/moduleparam.h: 1.5
sys/external/bsd/drm2/include/linux/pci.h: 1.12-1.15
sys/external/bsd/drm2/include/linux/pm.h: 1.4
sys/external/bsd/drm2/include/linux/reboot.h: 1.2
sys/external/bsd/drm2/include/linux/slab.h: 1.5
sys/external/bsd/drm2/include/linux/string.h: 1.4
sys/external/bsd/drm2/include/linux/vgaarb.h: 1.3
sys/external/bsd/drm2/include/linux/ww_mutex.h: 1.10
sys/external/bsd/drm2/linux/files.drmkms_linux: 1.8
sys/external/bsd/drm2/linux/linux_i2c.c: 1.3
sys/external/bsd/drm2/linux/linux_ww_mutex.c: 1.1
sys/external/bsd/drm2/nouveau/files.nouveau: 1.5-1.8
sys/external/bsd/drm2/nouveau/nouveau_pci.c: 1.1-1.3
sys/external/bsd/drm2/nouveau/nouveau_pci.h: 1.1
sys/external/bsd/drm2/nouveau/nouveau_sysfs.c: 1.1
sys/external/bsd/drm2/nouveau/nouveau_vga.c: 1.1
sys/external/bsd/drm2/nouveau/nouveaufb.c: 1.1
sys/external/bsd/drm2/nouveau/nouveaufb.h: 1.1
sys/external/bsd/drm2/pci/drm_pci.c: 1.10-1.12
sys/external/bsd/drm2/pci/drm_pci_module.c: 1.4
sys/external/bsd/drm2/pci/drmfb_pci.c: 1.1-1.3
sys/external/bsd/drm2/pci/files.drmkms_pci: 1.5
sys/external/bsd/drm2/radeon/radeon_pci.c: 1.5-1.7
sys/modules/drmkms/Makefile: 1.8, 1.9
sys/modules/drmkms_linux/Makefile: 1.6
sys/modules/drmkms_pci/Makefile: 1.5
sync drm2 with HEAD.
 1.3.2.1 11-Jan-2015  snj Pull up following revision(s) (requested by chs in ticket #401):
distrib/sets/lists/modules/md.amd64: revisions 1.46, 1.47 via patch
distrib/sets/lists/modules/md.i386: revisions 1.49, 1.50
sys/dev/ic/pcdisplayvar.h: revision 1.20
sys/dev/ic/vgavar.h: revision 1.32
sys/external/bsd/drm/dist/bsd-core/drm_drv.c: revision 1.26
sys/external/bsd/drm2/dist/drm/drm_agpsupport.c: revisions 1.5, 1.6
sys/external/bsd/drm2/dist/drm/drm_pci.c: revisions 1.4, 1.5
sys/external/bsd/drm2/dist/drm/drm_stub.c: revisions 1.6-1.8
sys/external/bsd/drm2/dist/drm/i915/i915_drv.h: revision 1.11
sys/external/bsd/drm2/dist/drm/radeon/cik.c: revision 1.3
sys/external/bsd/drm2/dist/drm/radeon/ni.c: revision 1.3
sys/external/bsd/drm2/dist/drm/radeon/si.c: revision 1.3
sys/external/bsd/drm2/dist/include/drm/drmP.h: revisions 1.8, 1.9
sys/external/bsd/drm2/dist/include/drm/drm_agpsupport.h: revisions 1.3, 1.4
sys/external/bsd/drm2/drm/drm_drv.c: revision 1.11
sys/external/bsd/drm2/drm/drm_module.c: revision 1.9
sys/external/bsd/drm2/drm/drm_sysctl.c: revisions 1.1-1.4
sys/external/bsd/drm2/drm/drm_vm.c: revision 1.7
sys/external/bsd/drm2/drm/files.drmkms: revisions 1.8, 1.9
sys/external/bsd/drm2/i915drm/files.i915drmkms: revision 1.9
sys/external/bsd/drm2/i915drm/i915_module.c: revisions 1.4, 1.5
sys/external/bsd/drm2/include/drm/drm_sysctl.h: revisions 1.1, 1.2
sys/external/bsd/drm2/include/linux/hdmi.h: revisions 1.3-1.5
sys/external/bsd/drm2/include/linux/module.h: revision 1.5
sys/external/bsd/drm2/include/linux/moduleparam.h: revisions 1.3, 1.4
sys/external/bsd/drm2/include/linux/pci.h: revision 1.11
sys/external/bsd/drm2/linux/linux_module.c: revision 1.5
sys/external/bsd/drm2/nouveau/files.nouveau: revision 1.4
sys/external/bsd/drm2/nouveau/nouveau_module.c: revision 1.3
sys/external/bsd/drm2/pci/drm_pci.c: revision 1.8
sys/external/bsd/drm2/pci/drm_pci_module.c: revision 1.3
sys/external/bsd/drm2/radeon/radeon_module.c: revision 1.3
sys/external/bsd/drm2/ttm/files.ttm: revision 1.1
sys/modules/drm2pci/Makefile: file removal
sys/modules/drmkms/Makefile: revisions 1.4-1.7
sys/modules/drmkms_linux/Makefile: revision 1.5
sys/modules/drmkms_pci/Makefile: revisions 1.3, 1.4
sys/modules/i915drmkms/Makefile: revisions 1.5-1.7
Split drm ttm config into a separate file.
--
Fix module build of drmkms_linux.
--
Remove vestigial drm2pci module, replaced by drmkms_pci.
--
fix the module class.
--
add the drmkms modules
--
make a drm_agp_destroy() function to resolve the circular dependency between
drmkms and drmkms_pci
--
finalize the idr code.
--
add drm_agp_destroy
--
fix drmkms module path for xen.
--
fix build failure.
/tmp/bracket/build/2014.11.10.22.43.46-i386/src/sys/external/bsd/drm2/include/linux/pci.h:36:20: fatal error: acpica.h: No such file or directory
--
make this work: add agpsupport and sysctl code
--
move agpsupport to drmkms to avoid circular dependencies.
--
turn on dynamic ldscript creation to handle link set symbol definitions
used in the automatic sysctl creation.
--
Add __link_set based code to automatically convert the linux module parameters
into sysctls.
--
this module needs MKLDSCRIPT too now
--
more _KERNEL_OPT
--
prettify and add to all the modules that have it.
--
fix description setting.
--
Adjust flags to allow building with clang.
--
Fix build with clang.
--
Drop casts in favour of expressions that actually give the right
pointer.
--
Move all PCI/AGP code back to drmkms_pci module where it belongs.
--
Use correct length for hdmi_infoframe_header_pack in <linux/hdmi.h>.
Fixes PR kern/49411.
--
Back out previous, fix PR kern/49411 correctly.
frame->header.length is not initialized in the vendor packet case.
Instead, make hdmi_infoframe_header_pack take the packet length and
subtract the size of the header when packing the header.
(Could make it take the payload length instead, but for callers it is
more convenient to have a name for the whole packet length.)
--
Fix bounds checking in hdmi_infoframe_header_pack (PR kern/49411).
--
Trivial build fix for no options SYSCTL_INCLUDE_DESCR case, to
avoid -Werror.
OK christos@ and riastradh@
--
fix debugging compilation (ALL kernel)
--
nouveau_nv50_fence.c needs -Wno-shadow.
--
fix a confusion between dev_t and devmajor_t, and include the primary
minor when calling makedev().
 1.7.2.1 06-Apr-2015  skrll Sync with HEAD
 1.9.18.2 08-Apr-2020  martin Merge changes from current as of 20200406
 1.9.18.1 10-Jun-2019  christos Sync with HEAD
 1.9.16.1 06-Sep-2018  pgoyette Sync with HEAD

Resolve a couple of conflicts (result of the uimin/uimax changes)
 1.12.6.1 29-Feb-2020  ad Sync with head.
 1.13.14.1 06-Jun-2021  cjep sync with head
 1.13.10.1 17-Jun-2021  thorpej Sync w/ HEAD.
 1.18.4.1 22-Feb-2023  martin Pull up following revision(s) (requested by riastradh in ticket #97):

sys/modules/drmkms/Makefile: revision 1.19
sys/modules/drmkms_pci/Makefile: revision 1.11

sys/modules/drmkms: Remove GPU scheduler files.
These have been moved out to drmkms_sched.kmod.

sys/modules/drmkms_pci: Remove drm_agpsupport.c.
This was moved to a separate drmkms_agp module.
 1.9 20-Jul-2022  riastradh drm: Undefine `alpha' in the module build too.
 1.8 17-Jul-2022  riastradh drm: Sync module/drmkms/Makefile with files.drmkms.

Unconditionally include legacy APIs for viadrmums.
 1.7 17-Jul-2022  riastradh drm: Dust off module build a little.
 1.6 19-Dec-2021  riastradh drm: Sync (device-independent) drmkms*.kmod makefiles.
 1.5 27-Aug-2018  riastradh Make drmkms.kmod build again on amd64.
 1.4 16-Jul-2014  riastradh branches: 1.4.4; 1.4.28; 1.4.30;
Make it build and boot on my test machines.

Screen blanks on boot on the Ivy Bridge system with

DRM error in cpt_serr_int_handler: PCH transcoder A FIFO underrun

But after that everything is OK. Appears to be an upstream problem.
To investigate...

I think there's a cache flushing issue somewhere -- there are little
display artefacts on my T60.
 1.3 01-Apr-2014  riastradh branches: 1.3.2; 1.3.4; 1.3.6;
Make drmkms find header files from sys/external/bsd/common.
 1.2 18-Mar-2014  riastradh Merge riastradh-drm2 to HEAD.
 1.1 04-Mar-2014  riastradh branches: 1.1.2;
file Makefile.inc was initially added on branch riastradh-drm2.
 1.1.2.1 04-Mar-2014  riastradh Rework drm2 configuration and modularization.

- Split drm2.kmod into drmkms_linux, drmkms, drmkms_pci.
- Split up drmkms-related files.* similarly.
- Make drm_agp_* routines hooks that the drmkms_pci module installs.
- Reuse drm device major 180 for (old) drm and drmkms.

Now old drm and new drmkms can coexist happily in the same tree, with
or without PCI, and require no changes to userland.
 1.3.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.3.6.1 01-Apr-2014  yamt file Makefile.inc was added on branch yamt-pagecache on 2014-05-22 11:41:07 +0000
 1.3.4.2 18-May-2014  rmind sync with head
 1.3.4.1 01-Apr-2014  rmind file Makefile.inc was added on branch rmind-smpnet on 2014-05-18 17:46:11 +0000
 1.3.2.1 10-Aug-2014  tls Rebase.
 1.4.30.1 10-Jun-2019  christos Sync with HEAD
 1.4.28.1 06-Sep-2018  pgoyette Sync with HEAD

Resolve a couple of conflicts (result of the uimin/uimax changes)
 1.4.4.2 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.4.4.1 16-Jul-2014  tls file Makefile.inc was added on branch tls-maxphys on 2014-08-20 00:04:32 +0000
 1.1 28-Aug-2018  riastradh branches: 1.1.2; 1.1.6;
Rework PCI and AGP conditionalization.

- Push drm_pci_set_unique into driver callback.
- Eliminate drm_pci_set_unique_hook.
- Gather all drm_agp_* functions into struct drm_agp_hooks.
- Replace the nonsensical old atomic garbage by serious locking.
- Make drm_agpsupport.c its own module.
- Eliminate NDRMKMS_PCI.
- Use NAGP from "agp.h" only in drm_module.c for horrible hack.
=> See comment in file for rationale.
- Always define CONFIG_PCI=1 and CONFIG_AGP=1.
- Always go through the drm_agp_* function hooks.
- Ifdef out nouveau agp stuff that doesn't go through drm_agp_*
for reasons that I'm too frustrated to figure out tonight.
- pci_iomap no longer automagically does agp_i810_borrow.
=> Use drm_agp_borrow instead.
 1.1.6.2 10-Jun-2019  christos Sync with HEAD
 1.1.6.1 28-Aug-2018  christos file agp.h was added on branch phil-wifi on 2019-06-10 22:09:21 +0000
 1.1.2.2 06-Sep-2018  pgoyette Sync with HEAD

Resolve a couple of conflicts (result of the uimin/uimax changes)
 1.1.2.1 28-Aug-2018  pgoyette file agp.h was added on branch pgoyette-compat on 2018-09-06 06:56:43 +0000
 1.3 16-Jul-2014  riastradh Make it build and boot on my test machines.

Screen blanks on boot on the Ivy Bridge system with

DRM error in cpt_serr_int_handler: PCH transcoder A FIFO underrun

But after that everything is OK. Appears to be an upstream problem.
To investigate...

I think there's a cache flushing issue somewhere -- there are little
display artefacts on my T60.
 1.2 18-Mar-2014  riastradh branches: 1.2.2; 1.2.4; 1.2.6;
Merge riastradh-drm2 to HEAD.
 1.1 04-Mar-2014  riastradh branches: 1.1.2;
file drmkms.ioconf was initially added on branch riastradh-drm2.
 1.1.2.1 04-Mar-2014  riastradh Rework drm2 configuration and modularization.

- Split drm2.kmod into drmkms_linux, drmkms, drmkms_pci.
- Split up drmkms-related files.* similarly.
- Make drm_agp_* routines hooks that the drmkms_pci module installs.
- Reuse drm device major 180 for (old) drm and drmkms.

Now old drm and new drmkms can coexist happily in the same tree, with
or without PCI, and require no changes to userland.
 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 18-Mar-2014  yamt file drmkms.ioconf was added on branch yamt-pagecache on 2014-05-22 11:41:07 +0000
 1.2.4.2 18-May-2014  rmind sync with head
 1.2.4.1 18-Mar-2014  rmind file drmkms.ioconf was added on branch rmind-smpnet on 2014-05-18 17:46:11 +0000
 1.2.2.1 10-Aug-2014  tls Rebase.
 1.1 05-Sep-2023  riastradh branches: 1.1.8;
drmkms: Fix module build.
 1.1.8.2 04-Oct-2024  martin Pull up following revision(s) (requested by rin in ticket #928):

sys/external/bsd/drm2/dist/drm/drm_gem.c: revision 1.25
sys/external/bsd/drm2/dist/drm/radeon/radeon_ci_dpm.c: revision 1.7
sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/priv.h: revision 1.4
sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_acpi.c: revision 1.4
sys/external/bsd/drm2/dist/drm/i915/display/intel_opregion.h: revision 1.6
sys/external/bsd/drm2/dist/drm/i915/i915_drv.h: revision 1.49
sys/external/bsd/drm2/include/linux/mxm-wmi.h: revision 1.1
sys/external/bsd/drm2/dist/drm/nouveau/nvkm/subdev/pci/nouveau_nvkm_subdev_pci_pcie.c: revision 1.4
sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_base.c: revision 1.13
sys/external/bsd/common/include/linux/bitops.h: revision 1.17
sys/external/bsd/drm2/nouveau/files.nouveau: revision 1.40
sys/external/bsd/drm2/linux/linux_pci.c: revision 1.30
sys/external/bsd/drm2/dist/drm/radeon/radeon_drv.h: revision 1.5
sys/external/bsd/drm2/dist/drm/nouveau/nvkm/subdev/pci/nouveau_nvkm_subdev_pci_pcie.c: revision 1.5
sys/external/bsd/drm2/dist/drm/nouveau/nvkm/subdev/mxm/nouveau_nvkm_subdev_mxm_base.c: revision 1.5
sys/external/bsd/drm2/dist/drm/amd/amdgpu/amdgpu_gart.c: revision 1.12
sys/external/bsd/drm2/dist/drm/radeon/radeon_rv770.c: revision 1.3
sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/disp/nouveau_nvkm_engine_disp_sorgm200.c: revision 1.3
sys/external/bsd/common/include/linux/printk.h: revision 1.14
sys/external/bsd/drm2/dist/drm/nouveau/nvkm/subdev/instmem/nouveau_nvkm_subdev_instmem_gk20a.c: revision 1.10
sys/external/bsd/drm2/dist/drm/amd/amdgpu/amdgpu_vi.c: revision 1.4
sys/external/bsd/drm2/include/linux/acpi.h: revision 1.11
sys/external/bsd/drm2/drm/drm_cdevsw.c: revision 1.31
sys/external/bsd/drm2/dist/drm/radeon/radeon_si.c: revision 1.6
sys/external/bsd/drm2/dist/drm/nouveau/nouveau_acpi.c: revision 1.5
sys/external/bsd/drm2/dist/drm/i915/display/intel_acpi.h: revision 1.5
sys/external/bsd/drm2/include/acpi/video.h: revision 1.3
sys/external/bsd/drm2/dist/drm/radeon/radeon_evergreen.c: revision 1.6
sys/external/bsd/drm2/dist/drm/nouveau/nouveau_acpi.h: revision 1.4
sys/arch/sparc64/include/pci_machdep.h: revision 1.31
sys/arch/sparc64/dev/pci_machdep.c: revision 1.83
sys/external/bsd/drm2/include/linux/kref.h: revision 1.14
sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_pci.c: revision 1.12
sys/external/bsd/drm2/linux/linux_dma_buf.c: revision 1.17
sys/external/bsd/drm2/dist/drm/nouveau/nvkm/subdev/bios/nouveau_nvkm_subdev_bios_shadowacpi.c: revision 1.4
sys/external/bsd/drm2/drm/drm_module.c: revision 1.32
sys/external/bsd/drm2/dist/drm/i915/i915_gem.h: revision 1.8
sys/external/bsd/drm2/dist/drm/i915/gem/i915_gem_dmabuf.c: revision 1.7
sys/external/bsd/drm2/include/linux/smp.h: revision 1.5
sys/external/bsd/drm2/dist/drm/amd/amdgpu/amdgpu_si.c: revision 1.5
sys/external/bsd/drm2/dist/drm/amd/amdgpu/amdgpu_device.c: revision 1.20
sys/arch/x86/x86/bus_dma.c: revision 1.91
sys/external/bsd/drm2/radeon/files.radeon: revision 1.40
sys/external/bsd/drm2/include/acpi/acpi_bus.h: revision 1.1
sys/external/bsd/drm2/dist/drm/nouveau/nouveau_drv.h: revision 1.5
sys/external/bsd/drm2/dist/drm/amd/amdgpu/amdgpu_device.c: revision 1.21
sys/external/bsd/common/include/asm/barrier.h: revision 1.20
sys/external/bsd/drm2/include/linux/nbsd-namespace-acpi.h: revision 1.2
sys/external/bsd/common/include/asm/barrier.h: revision 1.21
sys/modules/drmkms/drmkms_pci.h: revision 1.1
sys/external/bsd/drm2/dist/drm/drm_dp_helper.c: revision 1.17
sys/external/bsd/drm2/radeon/radeon_pci.c: revision 1.23
sys/external/bsd/drm2/linux/linux_xa.c: revision 1.4
sys/external/bsd/drm2/ttm/ttm_bo_vm.c: revision 1.23
sys/external/bsd/drm2/ttm/ttm_bo_vm.c: revision 1.24
sys/external/bsd/drm2/ttm/ttm_bo_vm.c: revision 1.25
sys/external/bsd/drm2/linux/linux_pci.c: revision 1.26
sys/dev/pci/pcivar.h: revision 1.120
sys/arch/xen/include/pci_machdep.h: revision 1.24
sys/external/bsd/drm2/ttm/ttm_bo_vm.c: revision 1.26
sys/external/bsd/drm2/linux/linux_pci.c: revision 1.27
sys/external/bsd/drm2/ttm/ttm_bo_vm.c: revision 1.27
sys/external/bsd/drm2/linux/linux_pci.c: revision 1.28
sys/external/bsd/drm2/dist/drm/radeon/radeon_cik.c: revision 1.8
sys/external/bsd/drm2/ttm/ttm_bo_vm.c: revision 1.28
sys/external/bsd/drm2/linux/linux_pci.c: revision 1.29
sys/external/bsd/drm2/include/linux/pci.h: revision 1.57
sys/external/bsd/drm2/include/linux/pci.h: revision 1.58
sys/external/bsd/drm2/dist/drm/radeon/radeon_acpi.c: revision 1.5
sys/external/bsd/drm2/dist/drm/nouveau/nouveau_display.c: revision 1.6
sys/external/bsd/drm2/dist/drm/amd/powerplay/hwmgr/amdgpu_hwmgr.c: revision 1.3
sys/external/bsd/drm2/dist/drm/amd/display/dc/core/amdgpu_dc_stream.c: revision 1.3
share/man/man9/bus_dma.9: revision 1.69
sys/external/bsd/drm2/drm/drm_gem_cma_helper.c: revision 1.15
sys/external/bsd/drm2/dist/drm/radeon/radeon_acpi.c: revision 1.6
sys/external/bsd/drm2/dist/drm/radeon/radeon.h: revision 1.12
sys/external/bsd/drm2/dist/drm/amd/amdgpu/amdgpu_cik.c: revision 1.7
sys/dev/acpi/acpi_mcfg.c: revision 1.29
sys/external/bsd/drm2/dist/drm/amd/amdgpu/amdgpu_acpi.c: revision 1.6
sys/external/bsd/drm2/dist/drm/radeon/radeon_r600.c: revision 1.7
sys/external/bsd/drm2/dist/drm/radeon/radeon_bios.c: revision 1.13
sys/modules/amdgpu/Makefile: revision 1.9
sys/external/bsd/drm2/dist/drm/radeon/radeon_bios.c: revision 1.14
sys/external/bsd/common/linux/linux_tasklet.c: revision 1.12
sys/external/bsd/drm2/dist/drm/nouveau/include/nvkm/core/device.h: revision 1.10
sys/external/bsd/drm2/dist/drm/i915/gem/i915_gem_mman.c: revision 1.23
sys/external/bsd/drm2/dist/drm/amd/amdgpu/amdgpu.h: revision 1.9
sys/external/bsd/drm2/include/linux/interval_tree.h: revision 1.14
sys/external/bsd/drm2/dist/drm/i915/gem/i915_gem_mman.c: revision 1.26
sys/external/bsd/drm2/dist/drm/amd/powerplay/hwmgr/amdgpu_smu7_hwmgr.c: revision 1.5
sys/dev/pci/pci.c: revision 1.168
sys/external/bsd/drm2/dist/drm/i915/gem/i915_gem_mman.c: revision 1.27
sys/external/bsd/drm2/dist/drm/radeon/radeon_si_dpm.c: revision 1.9
sys/external/bsd/drm2/pci/files.drmkms_pci: revision 1.18
sys/external/bsd/drm2/linux/linux_sync_file.c: revision 1.3
sys/external/bsd/drm2/amdgpu/files.amdgpu: revision 1.31
sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/device/nouveau_nvkm_engine_device_tegra.c: revision 1.4
sys/external/bsd/drm2/dist/drm/drm_gem.c: revision 1.24
sys/arch/xen/xen/xpci_xenbus.c: revision 1.29

drm: Eliminate __HAVE_ATOMIC_AS_MEMBAR conditionals.
Discussed on tech-kern:
https://mail-index.netbsd.org/tech-kern/2023/02/23/msg028729.html

linux asm/barrier.h: Fix !MULTIPROCESSOR build.

remove "nouveau" from a comment. noted by jmcneill.

drm: KASSERT(A && B) -> KASSERT(A); KASSERT(B)
comment a function that has a clear overbounds read but it isn't used.
found by GCC 12.

nix the NetBSD specific GEM_BUG_ON().
avoids GCC 12 warnings, and matches upstream closer.
avoid uninitialised variable usage in drm_gem_cma_create_internal().
in the case nothing has returned 'error', 'nsegs' and the dma info
are (potentially) uninitialised, so consider this an error.
found by GCC 12.

avoid a GCC 12 warning.
there's a 1-element long array and a loop conditional that tries to see
if indexes for it are not identical. as these indexes will always both
be 0, the only valid index, the condition is always false. GCC 12
triggers a strange warning on this code that can never run (see below),
so simply assert the array size is 1 and comment the rest.
amdgpu_dc_stream.c:470:55: error: array subscript [0, 0] is outside array bounds of 'struct dc_writeback_info[1]' [-Werror=array-bounds]
470 | stream->writeback_info[j] = stream->writeback_info[i];

convert a KASSERT() into an if () panic() sequence to appease GCC 12.
OK riastradh@.

drm: Fix conditionals around drmkms_pci and agp.
Kernel should build now with all pci drm drivers stripped out but
DRM_LEGACY still enabled. (Might not be very useful, but it'll
build. Maybe we should also have DRM_LEGACY_PCI so those drivers can
be modloaded later.)

drmkms: Fix module build.
avoid an unlikely array bounds issue picked up by GCC 12.
nvkm_pcie_speed() can return -1, which is then used as an array index,
so make this default return PCIe 1.0 speeds.

drm: enable almost all PCIe functionality
linux_pci.c revisions 1.24 and 1.25 implemented most of the remaining
missing PCIe backends, but only enabled them for some amdgpu portions.
this enables all code marked with "XXX amdgpu pcie", "XXX radeon pcie",
and "XXX pcie speed". for most of it, simply removing #ifndefs __NetBSD__
to enable compliation was required, once the new "bus->max_bus_speed"
member was added to struct pci_bus. add an "always fails" backend for
pci_enable_atomic_ops_to_root() which seems to only be necessary
for virtual GPU functionality (and could be implemented if needed.)
tested on radeon 5450, 7750, R7 240 [radeon], and RX 550 [amdgpu], and
nvidia 750 and 1030 [nouveau].
this still does not quite work on nvidia cards. there are two problems
that remain:
- the call to set the link speed is skipped because the speed is set
to the default value of "-1". nvkm_pcie_set_link() will actually
determine the right value for this and for some cards, calling this
function if the current speed is -1 helps set the link speed. it
may be that on linux other paths we don't have enabled properly
would set this (there's one via debugfs, and a jetson specific one,
though perhaps setting either AC or DC speed values as boot options
(after hooking up these for netbsd) would currently work.
- worse, cards newer than kepler - geforce 900, 1000, and newer, are
all lacking the backing support to set pcie link speed. the GT 1030
card i have been testing with remains at pcie 1.0.

radeon: fix and enable ACPI methods for getting ROM BIOS
The hacky way of getting the BIOS mapped only works on x86. ACPI
should be preferred if available. Makes BIOS reading though VFCT
work on aarch64 with EDK2. (But only if EDK2 has POSTed the GPU.)
XXX amdgpu should get the same treatment.

drm: put_cpu() should enable preemption, not disable it again

drm(4): make pr_debug equivalent to aprint_debug
significantly reduces the default spam from amdgpu(4).

drm: Set CONFIG_ACPI in linux/acpi.h and make it build.

Leave a little ACPI-related functionality disabled for now, like
getting EDID out of ACPI -- needs a bit more work to make this work,
and I don't have hardware to work on that.
Should help with failures of the forms:
- unable to locate a BIOS ROM
- bios: unable to locate usable image
on various machines.

radeon_acpi.c: ifdef out unused function on NetBSD.
Should fix syzkaller build.

drm(4): Fix st_rdev in stat.
dminor->index already has the 64*type adjustment, as allocated in
drm_minor_alloc.
PR kern/58180

linux_sync_file: Fix missing init/fini steps.
Noted by rjs@.
PR kern/58210

ttm: Sync ttm_bo_uvm_fault_idle better with Linux.
PR xsrc/58133
ttm: Undo mistake in previous.

PR xsrc/58133
linux: Add a few more cases to pci_get_class.
Should fix crash on boot with amdgpu now that the ACPI business is
enabled.

i915: Fix dmabuf mmap object.

drm: Fix missing bounds checks in dma buf mmap.

drm_gem.c: Fix sense of assertion.
This is the opposite of WARN_ON.
Noted by rjs@.

drm_gem.c: Enable drm_gem_fence_array_add now that we emulate xa.
linux_xa: Delete and replace collision in xa_store as intended.
Don't free the colliding node that's still in the tree.
Noted by rjs@.

i915_gem_mman.c: Apply mmap types via pmap flags.
This way, userland gets buffers mapped write-combining or uncached as
needed.
PR xsrc/58307

x86: Teach bus_dmamem_map about BUS_DMA_PREFETCHABLE.
PR port-amd64/58308

bus_dma(9): Document BUS_DMA_PREFETCHABLE.
Like BUS_DMA_NOCACHE. Doesn't absolve you of the need for
bus_dmamap_sync, but if you later pass the vaddr to bus_dmamap_load,
the DMA map might notice the mapping is write-combining and use this
to make bus_dmamap_sync cheaper.
PR kern/58309

nouveau_nvkm_subdev_instmem_gk20a.c: Use BUS_DMA_PREFETCHABLE.
Matches Linux's pgprot_writecombine.
Unclear where the appropriate bus_dmamap_sync happens, or is supposed
to happen -- not using it would be wrong, but asking for a
prefetchable mapping may paper over symptoms, at least!

ttm: Sync more with Linux.
Add the original copyright and attribution since this is now,
intentionally, a modified copy of the original and not just roughly
the same algorithm.

ttm: Respect PGO_ALLPAGES.
Not sure this is useful but it reduces XXX's and makes this match
udv_fault better so it's easier to understand.

ttm: Sync cacheability flag logic with Linux.

ttm: Add XXX about readahead fault failures.

pci: Pass cookie through pci_find_device, pci_enumerate_bus, take 2.
New functions pci_find_device1 and pci_enumerate_bus1 have the cookie
argument. Existing symbols pci_find_device and pci_enumerate_bus are
now wrappers for the cookieless version.
This will allow pci_find_device callers to pass a cookie through to
the match function so they can keep state or pass in extra parameters
like b/d/f numbers, which will allow us to nix some horrible kludges
in the Linux PCI API emulation for drm (and, perhaps, Intel wifi).
This change drops the symbol pci_probe_device, in favour of a new
pci_probe_device1 with the cookie argument. But I don't think that
requires a revbump because it's only called by MD pci_enumerate_bus1
implementations, which don't live in modules anyway.
Take 2: Make sure to handle NULL match function.
linux_pci: Nix pci enumeration kludges.
Now that we can pass a cookie through, this stuff will be a little
less fragile.

i915: Omit needless i915_gem_object_pin/unpin_pages cycle in fault.
vm_fault_cpu and vm_fault_gtt, called by i915_gem_fault, already do
the pinning and unpinning internally, so there is no need for
i915_gem_fault to do it.
No functional change intended, except that the transient pin count
will be one lower than before during the fault routine (but it will
still be positive).

i915: Match Linux fault routine return code actions.
Omit needless EINTR interception -- this is now handled by
i915_error_to_vmf_fault.
Earlier revert was over a false alarm -- bisection shows the new
warnings arose from linux_pci.c 1.29 here:
https://mail-index.netbsd.org/source-changes/2024/06/23/msg151929.html

linux_pci: Fix shifto in pci_get_class.
It looks like Linux's pci_get_class also matches the interface part
of the PCI class register (but not the revision part), and I hadn't
noticed that in the previous shim structured differently.

With GCC12 kernel ALL/amd64 triggers "'sor' may be used uninitialized".
If "sublinks & 3" is zero GCC is right and sor[1] may be returned unitialized.
Fix by initializing "sor" to zero to return -1 instead of uninitialized value.
Ok: Taylor R Campbell <riastradh@>

amdgpu: Map BAR 2, not BAR 5, on pre-bonaire chips.
PR kern/58384

amdgpu: Map consecutive pages, not the same one over and over again.
PR kern/58385

linux/bitops: Fix overestimate for BITS_TO_LONGS(9)
Fortunately, this seems harmless except for allocating
excessive buffer memory.
Pointed out by nonaka@, OK riastradh@.
 1.1.8.1 05-Sep-2023  martin file drmkms_pci.h was added on branch netbsd-10 on 2024-10-04 11:40:53 +0000
 1.2 17-Feb-2019  rin branches: 1.2.4;
Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 28-Aug-2018  riastradh branches: 1.1.2;
Rework PCI and AGP conditionalization.

- Push drm_pci_set_unique into driver callback.
- Eliminate drm_pci_set_unique_hook.
- Gather all drm_agp_* functions into struct drm_agp_hooks.
- Replace the nonsensical old atomic garbage by serious locking.
- Make drm_agpsupport.c its own module.
- Eliminate NDRMKMS_PCI.
- Use NAGP from "agp.h" only in drm_module.c for horrible hack.
=> See comment in file for rationale.
- Always define CONFIG_PCI=1 and CONFIG_AGP=1.
- Always go through the drm_agp_* function hooks.
- Ifdef out nouveau agp stuff that doesn't go through drm_agp_*
for reasons that I'm too frustrated to figure out tonight.
- pci_iomap no longer automagically does agp_i810_borrow.
=> Use drm_agp_borrow instead.
 1.1.2.2 06-Sep-2018  pgoyette Sync with HEAD

Resolve a couple of conflicts (result of the uimin/uimax changes)
 1.1.2.1 28-Aug-2018  pgoyette file Makefile was added on branch pgoyette-compat on 2018-09-06 06:56:43 +0000
 1.2.4.2 10-Jun-2019  christos Sync with HEAD
 1.2.4.1 17-Feb-2019  christos file Makefile was added on branch phil-wifi on 2019-06-10 22:09:21 +0000
 1.15 17-Jul-2022  riastradh drm: Dust off module build a little.
 1.14 19-Dec-2021  riastradh drm: Sync (device-independent) drmkms*.kmod makefiles.
 1.13 19-Dec-2021  riastradh Rename fence -> dma_fence, step 2: files files.
 1.12 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.11 28-Aug-2018  riastradh Rework PCI and AGP conditionalization.

- Push drm_pci_set_unique into driver callback.
- Eliminate drm_pci_set_unique_hook.
- Gather all drm_agp_* functions into struct drm_agp_hooks.
- Replace the nonsensical old atomic garbage by serious locking.
- Make drm_agpsupport.c its own module.
- Eliminate NDRMKMS_PCI.
- Use NAGP from "agp.h" only in drm_module.c for horrible hack.
=> See comment in file for rationale.
- Always define CONFIG_PCI=1 and CONFIG_AGP=1.
- Always go through the drm_agp_* function hooks.
- Ifdef out nouveau agp stuff that doesn't go through drm_agp_*
for reasons that I'm too frustrated to figure out tonight.
- pci_iomap no longer automagically does agp_i810_borrow.
=> Use drm_agp_borrow instead.
 1.10 27-Aug-2018  riastradh Move the Linux PCI shim into its very own .c file.

The poor thing has deserved this for a very long time, even though it
is full of kludges. Also I'm tired of recompiling everything every
time I touch it.
 1.9 27-Aug-2018  riastradh Add some components to drmkms_linux.kmod.
 1.8 27-Aug-2018  riastradh Sort.
 1.7 24-Feb-2016  skrll branches: 1.7.16; 1.7.18;
Move linux_work.c and workqueue.h from sys/external/bsd/drm2 to
sys/external/common so that they can be used by others.

LGTM from riastradh@

These should really live outside sys/external, but that can be decided
later
 1.6 08-Jan-2015  riastradh Move Linux ww_mutex code into a .c file where it belongs.
 1.5 14-Sep-2014  riastradh branches: 1.5.2;
Fix module build of drmkms_linux.
 1.4 17-Jul-2014  riastradh branches: 1.4.2; 1.4.4;
Remove needless linux_gfp.c.

Trying to make do with Linux's page allocation interface is pretty
much always wrong: either we let uvm allocate pages in uvm objects
for us, or we use bus_dma.
 1.3 16-Jul-2014  riastradh Make it build and boot on my test machines.

Screen blanks on boot on the Ivy Bridge system with

DRM error in cpt_serr_int_handler: PCH transcoder A FIFO underrun

But after that everything is OK. Appears to be an upstream problem.
To investigate...

I think there's a cache flushing issue somewhere -- there are little
display artefacts on my T60.
 1.2 18-Mar-2014  riastradh branches: 1.2.2; 1.2.4; 1.2.6;
Merge riastradh-drm2 to HEAD.
 1.1 04-Mar-2014  riastradh branches: 1.1.2;
file Makefile was initially added on branch riastradh-drm2.
 1.1.2.1 04-Mar-2014  riastradh Rework drm2 configuration and modularization.

- Split drm2.kmod into drmkms_linux, drmkms, drmkms_pci.
- Split up drmkms-related files.* similarly.
- Make drm_agp_* routines hooks that the drmkms_pci module installs.
- Reuse drm device major 180 for (old) drm and drmkms.

Now old drm and new drmkms can coexist happily in the same tree, with
or without PCI, and require no changes to userland.
 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 18-Mar-2014  yamt file Makefile was added on branch yamt-pagecache on 2014-05-22 11:41:07 +0000
 1.2.4.2 18-May-2014  rmind sync with head
 1.2.4.1 18-Mar-2014  rmind file Makefile was added on branch rmind-smpnet on 2014-05-18 17:46:11 +0000
 1.2.2.1 10-Aug-2014  tls Rebase.
 1.4.4.3 03-Dec-2017  jdolecek update from HEAD
 1.4.4.2 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.4.4.1 17-Jul-2014  tls file Makefile was added on branch tls-maxphys on 2014-08-20 00:04:33 +0000
 1.4.2.3 05-Apr-2017  snj Pull up following revision(s) (requested by skrll in ticket #1395):
share/man/man4/axe.4: netbsd-7-nhusb
share/man/man4/axen.4: netbsd-7-nhusb
share/man/man4/cdce.4: netbsd-7-nhusb
share/man/man4/uaudio.4: netbsd-7-nhusb
share/man/man4/ucom.4: netbsd-7-nhusb
share/man/man4/uep.4: netbsd-7-nhusb
share/man/man4/urtw.4: netbsd-7-nhusb
share/man/man4/usb.4: netbsd-7-nhusb
share/man/man4/uyap.4: netbsd-7-nhusb
share/man/man4/xhci.4: netbsd-7-nhusb
share/man/man9/usbdi.9: netbsd-7-nhusb
sys/arch/amd64/conf/ALL: netbsd-7-nhusb
sys/arch/amd64/conf/GENERIC: netbsd-7-nhusb
sys/arch/amiga/dev/slhci_zbus.c: netbsd-7-nhusb
sys/arch/arm/allwinner/awin_otg.c: netbsd-7-nhusb
sys/arch/arm/allwinner/awin_usb.c: netbsd-7-nhusb
sys/arch/arm/amlogic/amlogic_dwctwo.c: netbsd-7-nhusb
sys/arch/arm/at91/at91ohci.c: netbsd-7-nhusb
sys/arch/arm/broadcom/bcm2835_dwctwo.c: netbsd-7-nhusb
sys/arch/arm/broadcom/bcm53xx_usb.c: netbsd-7-nhusb
sys/arch/arm/ep93xx/epohci.c: netbsd-7-nhusb
sys/arch/arm/gemini/obio_ehci.c: netbsd-7-nhusb
sys/arch/arm/imx/files.imx23: netbsd-7-nhusb
sys/arch/arm/imx/imxusb.c: netbsd-7-nhusb
sys/arch/arm/imx/imxusbreg.h: netbsd-7-nhusb
sys/arch/arm/omap/obio_ohci.c: netbsd-7-nhusb
sys/arch/arm/omap/omap3_ehci.c: netbsd-7-nhusb
sys/arch/arm/omap/omapl1x_ohci.c: netbsd-7-nhusb
sys/arch/arm/omap/tiotg.c: netbsd-7-nhusb
sys/arch/arm/s3c2xx0/ohci_s3c24x0.c: netbsd-7-nhusb
sys/arch/arm/samsung/exynos_usb.c: netbsd-7-nhusb
sys/arch/arm/xscale/pxa2x0_ohci.c: netbsd-7-nhusb
sys/arch/arm/zynq/zynq_usb.c: netbsd-7-nhusb
sys/arch/hpcarm/dev/nbp_slhci.c: netbsd-7-nhusb
sys/arch/hpcmips/dev/plumohci.c: netbsd-7-nhusb
sys/arch/i386/conf/ALL: netbsd-7-nhusb
sys/arch/i386/conf/GENERIC: netbsd-7-nhusb
sys/arch/i386/pci/gcscehci.c: netbsd-7-nhusb
sys/arch/luna68k/conf/GENERIC: netbsd-7-nhusb
sys/arch/mips/adm5120/dev/ahci.c: netbsd-7-nhusb
sys/arch/mips/adm5120/dev/ahcivar.h: netbsd-7-nhusb
sys/arch/mips/alchemy/dev/ohci_aubus.c: netbsd-7-nhusb
sys/arch/mips/atheros/dev/ehci_arbus.c: netbsd-7-nhusb
sys/arch/mips/atheros/dev/ohci_arbus.c: netbsd-7-nhusb
sys/arch/mips/conf/files.adm5120: netbsd-7-nhusb
sys/arch/mips/ralink/ralink_ehci.c: netbsd-7-nhusb
sys/arch/mips/ralink/ralink_ohci.c: netbsd-7-nhusb
sys/arch/mips/rmi/rmixl_ehci.c: netbsd-7-nhusb
sys/arch/mips/rmi/rmixl_ohci.c: netbsd-7-nhusb
sys/arch/playstation2/dev/ohci_sbus.c: netbsd-7-nhusb
sys/arch/powerpc/booke/dev/pq3ehci.c: netbsd-7-nhusb
sys/arch/powerpc/ibm4xx/dev/dwctwo_plb.c: netbsd-7-nhusb
sys/arch/x68k/dev/slhci_intio.c: netbsd-7-nhusb
sys/conf/files: netbsd-7-nhusb
sys/dev/cardbus/ehci_cardbus.c: netbsd-7-nhusb
sys/dev/cardbus/ohci_cardbus.c: netbsd-7-nhusb
sys/dev/cardbus/uhci_cardbus.c: netbsd-7-nhusb
sys/dev/ic/sl811hs.c: netbsd-7-nhusb
sys/dev/ic/sl811hsvar.h: netbsd-7-nhusb
sys/dev/isa/slhci_isa.c: netbsd-7-nhusb
sys/dev/marvell/ehci_mv.c: netbsd-7-nhusb
sys/dev/pci/ehci_pci.c: netbsd-7-nhusb
sys/dev/pci/ohci_pci.c: netbsd-7-nhusb
sys/dev/pci/uhci_pci.c: netbsd-7-nhusb
sys/dev/pci/xhci_pci.c: netbsd-7-nhusb
sys/dev/pcmcia/slhci_pcmcia.c: netbsd-7-nhusb
sys/dev/usb/Makefile.usbdevs: netbsd-7-nhusb
sys/dev/usb/TODO: netbsd-7-nhusb
sys/dev/usb/TODO.usbmp: netbsd-7-nhusb
sys/dev/usb/aubtfwl.c: netbsd-7-nhusb
sys/dev/usb/auvitek.c: netbsd-7-nhusb
sys/dev/usb/auvitek_audio.c: netbsd-7-nhusb
sys/dev/usb/auvitek_dtv.c: netbsd-7-nhusb
sys/dev/usb/auvitek_i2c.c: netbsd-7-nhusb
sys/dev/usb/auvitek_video.c: netbsd-7-nhusb
sys/dev/usb/auvitekvar.h: netbsd-7-nhusb
sys/dev/usb/ehci.c: netbsd-7-nhusb
sys/dev/usb/ehcireg.h: netbsd-7-nhusb
sys/dev/usb/ehcivar.h: netbsd-7-nhusb
sys/dev/usb/emdtv.c: netbsd-7-nhusb
sys/dev/usb/emdtv_dtv.c: netbsd-7-nhusb
sys/dev/usb/emdtv_ir.c: netbsd-7-nhusb
sys/dev/usb/emdtvvar.h: netbsd-7-nhusb
sys/dev/usb/ezload.c: netbsd-7-nhusb
sys/dev/usb/ezload.h: netbsd-7-nhusb
sys/dev/usb/files.usb: netbsd-7-nhusb
sys/dev/usb/hid.c: netbsd-7-nhusb
sys/dev/usb/hid.h: netbsd-7-nhusb
sys/dev/usb/if_athn_usb.c: netbsd-7-nhusb
sys/dev/usb/if_athn_usb.h: netbsd-7-nhusb
sys/dev/usb/if_atu.c: netbsd-7-nhusb
sys/dev/usb/if_atureg.h: netbsd-7-nhusb
sys/dev/usb/if_aue.c: netbsd-7-nhusb
sys/dev/usb/if_auereg.h: netbsd-7-nhusb
sys/dev/usb/if_axe.c: netbsd-7-nhusb
sys/dev/usb/if_axen.c: netbsd-7-nhusb
sys/dev/usb/if_axenreg.h: netbsd-7-nhusb
sys/dev/usb/if_axereg.h: netbsd-7-nhusb
sys/dev/usb/if_cdce.c: netbsd-7-nhusb
sys/dev/usb/if_cdcereg.h: netbsd-7-nhusb
sys/dev/usb/if_cue.c: netbsd-7-nhusb
sys/dev/usb/if_cuereg.h: netbsd-7-nhusb
sys/dev/usb/if_kue.c: netbsd-7-nhusb
sys/dev/usb/if_kuereg.h: netbsd-7-nhusb
sys/dev/usb/if_otus.c: netbsd-7-nhusb
sys/dev/usb/if_otusvar.h: netbsd-7-nhusb
sys/dev/usb/if_rum.c: netbsd-7-nhusb
sys/dev/usb/if_rumreg.h: netbsd-7-nhusb
sys/dev/usb/if_rumvar.h: netbsd-7-nhusb
sys/dev/usb/if_run.c: netbsd-7-nhusb
sys/dev/usb/if_runvar.h: netbsd-7-nhusb
sys/dev/usb/if_smsc.c: netbsd-7-nhusb
sys/dev/usb/if_smscreg.h: netbsd-7-nhusb
sys/dev/usb/if_smscvar.h: netbsd-7-nhusb
sys/dev/usb/if_udav.c: netbsd-7-nhusb
sys/dev/usb/if_udavreg.h: netbsd-7-nhusb
sys/dev/usb/if_upgt.c: netbsd-7-nhusb
sys/dev/usb/if_upgtvar.h: netbsd-7-nhusb
sys/dev/usb/if_upl.c: netbsd-7-nhusb
sys/dev/usb/if_ural.c: netbsd-7-nhusb
sys/dev/usb/if_uralreg.h: netbsd-7-nhusb
sys/dev/usb/if_uralvar.h: netbsd-7-nhusb
sys/dev/usb/if_url.c: netbsd-7-nhusb
sys/dev/usb/if_urlreg.h: netbsd-7-nhusb
sys/dev/usb/if_urndis.c: netbsd-7-nhusb
sys/dev/usb/if_urndisreg.h: netbsd-7-nhusb
sys/dev/usb/if_urtw.c: netbsd-7-nhusb
sys/dev/usb/if_urtwn.c: netbsd-7-nhusb
sys/dev/usb/if_urtwn_data.h: netbsd-7-nhusb
sys/dev/usb/if_urtwnreg.h: netbsd-7-nhusb
sys/dev/usb/if_urtwnvar.h: netbsd-7-nhusb
sys/dev/usb/if_urtwreg.h: netbsd-7-nhusb
sys/dev/usb/if_zyd.c: netbsd-7-nhusb
sys/dev/usb/if_zydreg.h: netbsd-7-nhusb
sys/dev/usb/irmce.c: netbsd-7-nhusb
sys/dev/usb/moscom.c: netbsd-7-nhusb
sys/dev/usb/motg.c: netbsd-7-nhusb
sys/dev/usb/motgvar.h: netbsd-7-nhusb
sys/dev/usb/ohci.c: netbsd-7-nhusb
sys/dev/usb/ohcireg.h: netbsd-7-nhusb
sys/dev/usb/ohcivar.h: netbsd-7-nhusb
sys/dev/usb/pseye.c: netbsd-7-nhusb
sys/dev/usb/slurm.c: netbsd-7-nhusb
sys/dev/usb/stuirda.c: netbsd-7-nhusb
sys/dev/usb/u3g.c: netbsd-7-nhusb
sys/dev/usb/uark.c: netbsd-7-nhusb
sys/dev/usb/uatp.c: netbsd-7-nhusb
sys/dev/usb/uaudio.c: netbsd-7-nhusb
sys/dev/usb/uberry.c: netbsd-7-nhusb
sys/dev/usb/ubsa.c: netbsd-7-nhusb
sys/dev/usb/ubsa_common.c: netbsd-7-nhusb
sys/dev/usb/ubsavar.h: netbsd-7-nhusb
sys/dev/usb/ubt.c: netbsd-7-nhusb
sys/dev/usb/uchcom.c: netbsd-7-nhusb
sys/dev/usb/ucom.c: netbsd-7-nhusb
sys/dev/usb/ucomvar.h: netbsd-7-nhusb
sys/dev/usb/ucycom.c: netbsd-7-nhusb
sys/dev/usb/udl.c: netbsd-7-nhusb
sys/dev/usb/udl.h: netbsd-7-nhusb
sys/dev/usb/udsbr.c: netbsd-7-nhusb
sys/dev/usb/udsir.c: netbsd-7-nhusb
sys/dev/usb/uep.c: netbsd-7-nhusb
sys/dev/usb/uftdi.c: netbsd-7-nhusb
sys/dev/usb/uftdireg.h: netbsd-7-nhusb
sys/dev/usb/ugen.c: netbsd-7-nhusb
sys/dev/usb/ugensa.c: netbsd-7-nhusb
sys/dev/usb/uhci.c: netbsd-7-nhusb
sys/dev/usb/uhcireg.h: netbsd-7-nhusb
sys/dev/usb/uhcivar.h: netbsd-7-nhusb
sys/dev/usb/uhid.c: netbsd-7-nhusb
sys/dev/usb/uhidev.c: netbsd-7-nhusb
sys/dev/usb/uhidev.h: netbsd-7-nhusb
sys/dev/usb/uhmodem.c: netbsd-7-nhusb
sys/dev/usb/uhso.c: netbsd-7-nhusb
sys/dev/usb/uhub.c: netbsd-7-nhusb
sys/dev/usb/uipad.c: netbsd-7-nhusb
sys/dev/usb/uipaq.c: netbsd-7-nhusb
sys/dev/usb/uirda.c: netbsd-7-nhusb
sys/dev/usb/uirdavar.h: netbsd-7-nhusb
sys/dev/usb/ukbd.c: netbsd-7-nhusb
sys/dev/usb/ukbdmap.c: netbsd-7-nhusb
sys/dev/usb/ukyopon.c: netbsd-7-nhusb
sys/dev/usb/ukyopon.h: netbsd-7-nhusb
sys/dev/usb/ulpt.c: netbsd-7-nhusb
sys/dev/usb/umass.c: netbsd-7-nhusb
sys/dev/usb/umass_isdata.c: netbsd-7-nhusb
sys/dev/usb/umass_isdata.h: netbsd-7-nhusb
sys/dev/usb/umass_quirks.c: netbsd-7-nhusb
sys/dev/usb/umass_quirks.h: netbsd-7-nhusb
sys/dev/usb/umass_scsipi.c: netbsd-7-nhusb
sys/dev/usb/umass_scsipi.h: netbsd-7-nhusb
sys/dev/usb/umassvar.h: netbsd-7-nhusb
sys/dev/usb/umcs.c: netbsd-7-nhusb
sys/dev/usb/umct.c: netbsd-7-nhusb
sys/dev/usb/umidi.c: netbsd-7-nhusb
sys/dev/usb/umidi_quirks.c: netbsd-7-nhusb
sys/dev/usb/umidi_quirks.h: netbsd-7-nhusb
sys/dev/usb/umodem.c: netbsd-7-nhusb
sys/dev/usb/umodem_common.c: netbsd-7-nhusb
sys/dev/usb/umodemvar.h: netbsd-7-nhusb
sys/dev/usb/ums.c: netbsd-7-nhusb
sys/dev/usb/uplcom.c: netbsd-7-nhusb
sys/dev/usb/urio.c: netbsd-7-nhusb
sys/dev/usb/urio.h: netbsd-7-nhusb
sys/dev/usb/usb.c: netbsd-7-nhusb
sys/dev/usb/usb.h: netbsd-7-nhusb
sys/dev/usb/usb_mem.c: netbsd-7-nhusb
sys/dev/usb/usb_mem.h: netbsd-7-nhusb
sys/dev/usb/usb_quirks.c: netbsd-7-nhusb
sys/dev/usb/usb_quirks.h: netbsd-7-nhusb
sys/dev/usb/usb_subr.c: netbsd-7-nhusb
sys/dev/usb/usbdevices.config: netbsd-7-nhusb
sys/dev/usb/usbdevs: netbsd-7-nhusb
sys/dev/usb/usbdevs.h: netbsd-7-nhusb
sys/dev/usb/usbdevs_data.h: netbsd-7-nhusb
sys/dev/usb/usbdi.c: netbsd-7-nhusb
sys/dev/usb/usbdi.h: netbsd-7-nhusb
sys/dev/usb/usbdi_util.c: netbsd-7-nhusb
sys/dev/usb/usbdi_util.h: netbsd-7-nhusb
sys/dev/usb/usbdivar.h: netbsd-7-nhusb
sys/dev/usb/usbhid.h: netbsd-7-nhusb
sys/dev/usb/usbhist.h: netbsd-7-nhusb
sys/dev/usb/usbroothub.c: netbsd-7-nhusb
sys/dev/usb/usbroothub.h: netbsd-7-nhusb
sys/dev/usb/usbroothub_subr.c: delete
sys/dev/usb/usbroothub_subr.h: delete
sys/dev/usb/uscanner.c: netbsd-7-nhusb
sys/dev/usb/uslsa.c: netbsd-7-nhusb
sys/dev/usb/usscanner.c: netbsd-7-nhusb
sys/dev/usb/ustir.c: netbsd-7-nhusb
sys/dev/usb/uthum.c: netbsd-7-nhusb
sys/dev/usb/utoppy.c: netbsd-7-nhusb
sys/dev/usb/uts.c: netbsd-7-nhusb
sys/dev/usb/uvideo.c: netbsd-7-nhusb
sys/dev/usb/uvisor.c: netbsd-7-nhusb
sys/dev/usb/uvscom.c: netbsd-7-nhusb
sys/dev/usb/uyap.c: netbsd-7-nhusb
sys/dev/usb/uyap_firmware.h: netbsd-7-nhusb
sys/dev/usb/uyurex.c: netbsd-7-nhusb
sys/dev/usb/x1input_rdesc.h: netbsd-7-nhusb
sys/dev/usb/xhci.c: netbsd-7-nhusb
sys/dev/usb/xhcireg.h: netbsd-7-nhusb
sys/dev/usb/xhcivar.h: netbsd-7-nhusb
sys/dev/usb/xinput_rdesc.h: netbsd-7-nhusb
sys/external/bsd/common/conf/files.linux: netbsd-7-nhusb
sys/external/bsd/common/include/linux/err.h: netbsd-7-nhusb
sys/external/bsd/common/include/linux/kernel.h: netbsd-7-nhusb
sys/external/bsd/common/include/linux/workqueue.h: netbsd-7-nhusb
sys/external/bsd/common/linux/linux_work.c: netbsd-7-nhusb
sys/external/bsd/drm2/dist/drm/radeon/atombios_encoders.c: netbsd-7-nhusb
sys/external/bsd/drm2/dist/drm/radeon/radeon_legacy_encoders.c: netbsd-7-nhusb
sys/external/bsd/drm2/drm/files.drmkms: netbsd-7-nhusb
sys/external/bsd/drm2/i915drm/files.i915drmkms: netbsd-7-nhusb
sys/external/bsd/drm2/include/linux/err.h: delete
sys/external/bsd/drm2/include/linux/workqueue.h: delete
sys/external/bsd/drm2/linux/files.drmkms_linux: netbsd-7-nhusb
sys/external/bsd/drm2/linux/linux_work.c: delete
sys/external/bsd/dwc2/dwc2.c: netbsd-7-nhusb
sys/external/bsd/dwc2/dwc2.h: netbsd-7-nhusb
sys/external/bsd/dwc2/dwc2var.h: netbsd-7-nhusb
sys/external/bsd/dwc2/dwctwo2netbsd: netbsd-7-nhusb
sys/external/bsd/dwc2/conf/files.dwc2: netbsd-7-nhusb
sys/external/bsd/dwc2/dist/dwc2_core.c: netbsd-7-nhusb
sys/external/bsd/dwc2/dist/dwc2_core.h: netbsd-7-nhusb
sys/external/bsd/dwc2/dist/dwc2_coreintr.c: netbsd-7-nhusb
sys/external/bsd/dwc2/dist/dwc2_hcd.c: netbsd-7-nhusb
sys/external/bsd/dwc2/dist/dwc2_hcd.h: netbsd-7-nhusb
sys/external/bsd/dwc2/dist/dwc2_hcdddma.c: netbsd-7-nhusb
sys/external/bsd/dwc2/dist/dwc2_hcdintr.c: netbsd-7-nhusb
sys/external/bsd/dwc2/dist/dwc2_hcdqueue.c: netbsd-7-nhusb
sys/external/bsd/dwc2/dist/dwc2_hw.h: netbsd-7-nhusb
sys/modules/drmkms_linux/Makefile: netbsd-7-nhusb
sys/modules/i915drmkms/Makefile: netbsd-7-nhusb
sys/rump/dev/lib/libugenhc/ugenhc.c: netbsd-7-nhusb
sys/rump/dev/lib/libusb/Makefile: netbsd-7-nhusb
sys/rump/dev/lib/libusb/USB.ioconf: netbsd-7-nhusb
sys/rump/dev/lib/libusb/usb_at_ugenhc.c: delete
sys/rump/dev/lib/libusb/opt/opt_usb.h: delete
sys/rump/dev/lib/libusb/opt/opt_usbverbose.h: delete
sys/sys/mbuf.h: netbsd-7-nhusb
usr.sbin/usbdevs/usbdevs.8: netbsd-7-nhusb
usr.sbin/usbdevs/usbdevs.c: netbsd-7-nhusb
Merge netbsd-7-nhusb:
- API / infrastructure changes to support memory management changes.
- Memory management improvements and bug fixes.
- HCDs should now be MP safe
- conversion to KERNHIST based debug
- FS/LS isoc support on ehci(4).
- conversion to kmem(9)
- Some USB 3 support - mostly from Takahiro HAYASHI (t-hash).
- interrupt transfers now get proper DMA operations
- general bug fixes
- kern/48308
- uhub status notification improvements
- umass(4) probe fix (applied to HEAD already)
- ohci(4) short transfer fix
- Change the SOFTINT level from NET to SERIAL for the USB softint handler.
This gives the callback a chance of running when another softint handler
at SOFTINT_NET has blocked holding a lock, e.g. softnet_lock and most of
the network stack.
- kern/49065 - ifconfig tun0 ... sequence locks up system / lockup:
softnet_lock held across usb xfr
- kern/50491 - unkillable wait in usbd_transfer while using usmsc0
on raspberry pi 2
- kern/51395 - USB Ethernet makes xhci hang
- Various improvements to slhci(4)
- Various improvements to dwc2(4)
 1.4.2.2 06-Mar-2015  snj branches: 1.4.2.2.4;
Pull up following revision(s) (requested by mrg in ticket #573):
sys/external/bsd/common/include/linux/kernel.h: 1.5, 1.6
sys/external/bsd/drm2/dist/drm/drm_ioctl.c: 1.4
sys/external/bsd/drm2/dist/drm/drm_irq.c: 1.6-1.8
sys/external/bsd/drm2/dist/drm/i915/i915_dma.c: 1.13-1.15
sys/external/bsd/drm2/dist/drm/i915/i915_gem.c: 1.23-1.27
sys/external/bsd/drm2/dist/drm/i915/i915_gem_execbuffer.c: 1.5
sys/external/bsd/drm2/dist/drm/i915/intel_display.c: 1.14, 1.15
sys/external/bsd/drm2/dist/drm/i915/intel_dp.c: 1.10
sys/external/bsd/drm2/dist/drm/i915/intel_drv.h: 1.8
sys/external/bsd/drm2/dist/drm/i915/intel_i2c.c: 1.8-1.13
sys/external/bsd/drm2/dist/drm/i915/intel_pm.c: 1.6
sys/external/bsd/drm2/dist/drm/i915/intel_ringbuffer.c: 1.5, 1.6
sys/external/bsd/drm2/dist/drm/nouveau/core/engine/device/nouveau_engine_device_base.c: 1.4
sys/external/bsd/drm2/dist/drm/nouveau/core/engine/fifo/nouveau_engine_fifo_nvc0.c: 1.3, 1.4
sys/external/bsd/drm2/dist/drm/nouveau/core/engine/fifo/nouveau_engine_fifo_nve0.c: 1.3, 1.4
sys/external/bsd/drm2/dist/drm/nouveau/core/include/core/device.h: 1.4
sys/external/bsd/drm2/dist/drm/nouveau/core/include/subdev/mc.h: 1.2
sys/external/bsd/drm2/dist/drm/nouveau/core/include/subdev/pwr.h: 1.3, 1.4
sys/external/bsd/drm2/dist/drm/nouveau/core/os.h: 1.4, 1.5
sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/bios/nouveau_subdev_bios_base.c: 1.2
sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/bios/nouveau_subdev_bios_pll.c: 1.2
sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/clock/nouveau_subdev_clock_base.c: 1.2
sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/clock/nouveau_subdev_clock_nv50.c: 1.2
sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/devinit/fbmem.h: 1.2
sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/devinit/nouveau_subdev_devinit_nv04.c: 1.2
sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/fb/nouveau_subdev_fb_nv50.c: 1.2
sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/fb/nouveau_subdev_fb_nvc0.c: 1.2
sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/fb/nv50.h: 1.2
sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/fb/nvc0.h: 1.2
sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/mc/nouveau_subdev_mc_base.c: 1.2, 1.3
sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/mxm/nouveau_subdev_mxm_nv50.c: 1.2
sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/pwr/nouveau_subdev_pwr_base.c: 1.3, 1.4
sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/therm/nouveau_subdev_therm_ic.c: 1.2
sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/timer/nouveau_subdev_timer_nv04.c: 1.2
sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/vm/nouveau_subdev_vm_base.c: 1.2
sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/vm/nouveau_subdev_vm_nv04.c: 1.2
sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/vm/nouveau_subdev_vm_nv44.c: 1.2
sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/vm/nv04.h: 1.2
sys/external/bsd/drm2/dist/drm/nouveau/nouveau_bo.h: 1.3
sys/external/bsd/drm2/dist/drm/nouveau/nouveau_drm.c: 1.4, 1.5
sys/external/bsd/drm2/dist/drm/nouveau/nouveau_fbcon.c: 1.2
sys/external/bsd/drm2/dist/drm/nouveau/nouveau_nv50_display.c: 1.3
sys/external/bsd/drm2/dist/drm/nouveau/nouveau_nv84_fence.c: 1.2
sys/external/bsd/drm2/dist/drm/nouveau/nouveau_ttm.c: 1.3
sys/external/bsd/drm2/dist/drm/nouveau/nouveau_ttm.h: 1.2
sys/external/bsd/drm2/dist/drm/nouveau/nouveau_vga.h: 1.2
sys/external/bsd/drm2/dist/drm/radeon/radeon_fence.c: 1.6-1.8
sys/external/bsd/drm2/dist/drm/radeon/radeon_pm.c: 1.3
sys/external/bsd/drm2/dist/drm/radeon/rs400.c: 1.3
sys/external/bsd/drm2/dist/drm/via/via_dmablit.c: 1.3, 1.4
sys/external/bsd/drm2/dist/drm/via/via_drv.h: 1.3
sys/external/bsd/drm2/dist/drm/via/via_irq.c: 1.3, 1.4
sys/external/bsd/drm2/dist/drm/via/via_video.c: 1.3, 1.4
sys/external/bsd/drm2/dist/include/drm/drmP.h: 1.10
sys/external/bsd/drm2/dist/include/drm/drm_crtc.h: 1.4
sys/external/bsd/drm2/dist/include/drm/drm_modes.h: 1.3
sys/external/bsd/drm2/dist/uapi/drm/i915_drm.h: 1.2
sys/external/bsd/drm2/drm/drm_cache.c: 1.4-1.6
sys/external/bsd/drm2/drm/drm_drv.c: 1.14
sys/external/bsd/drm2/drm/drm_module.c: 1.10
sys/external/bsd/drm2/drm/drm_sysctl.c: 1.5
sys/external/bsd/drm2/drm/drm_vma_manager.c: 1.2
sys/external/bsd/drm2/drm/drmfb.c: 1.1
sys/external/bsd/drm2/drm/files.drmkms: 1.10, 1.11
sys/external/bsd/drm2/i2c/drm_encoder_slave.c: 1.1
sys/external/bsd/drm2/i915drm/files.i915drmkms: 1.7, 1.10
sys/external/bsd/drm2/i915drm/intelfb.c: 1.11, 1.12
sys/external/bsd/drm2/include/asm/io.h: 1.4
sys/external/bsd/drm2/include/asm/unaligned.h: 1.2, 1.3
sys/external/bsd/drm2/include/drm/drm_encoder_slave.h: 1.1
sys/external/bsd/drm2/include/drm/drm_wait_netbsd.h: 1.7-1.11
sys/external/bsd/drm2/include/drm/drmfb.h: 1.1
sys/external/bsd/drm2/include/drm/drmfb_pci.h: 1.1, 1.2
sys/external/bsd/drm2/include/linux/bitops.h: 1.9
sys/external/bsd/drm2/include/linux/i2c.h: 1.7, 1.8
sys/external/bsd/drm2/include/linux/io-mapping.h: 1.5
sys/external/bsd/drm2/include/linux/moduleparam.h: 1.5
sys/external/bsd/drm2/include/linux/pci.h: 1.12-1.15
sys/external/bsd/drm2/include/linux/pm.h: 1.4
sys/external/bsd/drm2/include/linux/reboot.h: 1.2
sys/external/bsd/drm2/include/linux/slab.h: 1.5
sys/external/bsd/drm2/include/linux/string.h: 1.4
sys/external/bsd/drm2/include/linux/vgaarb.h: 1.3
sys/external/bsd/drm2/include/linux/ww_mutex.h: 1.10
sys/external/bsd/drm2/linux/files.drmkms_linux: 1.8
sys/external/bsd/drm2/linux/linux_i2c.c: 1.3
sys/external/bsd/drm2/linux/linux_ww_mutex.c: 1.1
sys/external/bsd/drm2/nouveau/files.nouveau: 1.5-1.8
sys/external/bsd/drm2/nouveau/nouveau_pci.c: 1.1-1.3
sys/external/bsd/drm2/nouveau/nouveau_pci.h: 1.1
sys/external/bsd/drm2/nouveau/nouveau_sysfs.c: 1.1
sys/external/bsd/drm2/nouveau/nouveau_vga.c: 1.1
sys/external/bsd/drm2/nouveau/nouveaufb.c: 1.1
sys/external/bsd/drm2/nouveau/nouveaufb.h: 1.1
sys/external/bsd/drm2/pci/drm_pci.c: 1.10-1.12
sys/external/bsd/drm2/pci/drm_pci_module.c: 1.4
sys/external/bsd/drm2/pci/drmfb_pci.c: 1.1-1.3
sys/external/bsd/drm2/pci/files.drmkms_pci: 1.5
sys/external/bsd/drm2/radeon/radeon_pci.c: 1.5-1.7
sys/modules/drmkms/Makefile: 1.8, 1.9
sys/modules/drmkms_linux/Makefile: 1.6
sys/modules/drmkms_pci/Makefile: 1.5
sync drm2 with HEAD.
 1.4.2.1 11-Jan-2015  snj Pull up following revision(s) (requested by chs in ticket #401):
distrib/sets/lists/modules/md.amd64: revisions 1.46, 1.47 via patch
distrib/sets/lists/modules/md.i386: revisions 1.49, 1.50
sys/dev/ic/pcdisplayvar.h: revision 1.20
sys/dev/ic/vgavar.h: revision 1.32
sys/external/bsd/drm/dist/bsd-core/drm_drv.c: revision 1.26
sys/external/bsd/drm2/dist/drm/drm_agpsupport.c: revisions 1.5, 1.6
sys/external/bsd/drm2/dist/drm/drm_pci.c: revisions 1.4, 1.5
sys/external/bsd/drm2/dist/drm/drm_stub.c: revisions 1.6-1.8
sys/external/bsd/drm2/dist/drm/i915/i915_drv.h: revision 1.11
sys/external/bsd/drm2/dist/drm/radeon/cik.c: revision 1.3
sys/external/bsd/drm2/dist/drm/radeon/ni.c: revision 1.3
sys/external/bsd/drm2/dist/drm/radeon/si.c: revision 1.3
sys/external/bsd/drm2/dist/include/drm/drmP.h: revisions 1.8, 1.9
sys/external/bsd/drm2/dist/include/drm/drm_agpsupport.h: revisions 1.3, 1.4
sys/external/bsd/drm2/drm/drm_drv.c: revision 1.11
sys/external/bsd/drm2/drm/drm_module.c: revision 1.9
sys/external/bsd/drm2/drm/drm_sysctl.c: revisions 1.1-1.4
sys/external/bsd/drm2/drm/drm_vm.c: revision 1.7
sys/external/bsd/drm2/drm/files.drmkms: revisions 1.8, 1.9
sys/external/bsd/drm2/i915drm/files.i915drmkms: revision 1.9
sys/external/bsd/drm2/i915drm/i915_module.c: revisions 1.4, 1.5
sys/external/bsd/drm2/include/drm/drm_sysctl.h: revisions 1.1, 1.2
sys/external/bsd/drm2/include/linux/hdmi.h: revisions 1.3-1.5
sys/external/bsd/drm2/include/linux/module.h: revision 1.5
sys/external/bsd/drm2/include/linux/moduleparam.h: revisions 1.3, 1.4
sys/external/bsd/drm2/include/linux/pci.h: revision 1.11
sys/external/bsd/drm2/linux/linux_module.c: revision 1.5
sys/external/bsd/drm2/nouveau/files.nouveau: revision 1.4
sys/external/bsd/drm2/nouveau/nouveau_module.c: revision 1.3
sys/external/bsd/drm2/pci/drm_pci.c: revision 1.8
sys/external/bsd/drm2/pci/drm_pci_module.c: revision 1.3
sys/external/bsd/drm2/radeon/radeon_module.c: revision 1.3
sys/external/bsd/drm2/ttm/files.ttm: revision 1.1
sys/modules/drm2pci/Makefile: file removal
sys/modules/drmkms/Makefile: revisions 1.4-1.7
sys/modules/drmkms_linux/Makefile: revision 1.5
sys/modules/drmkms_pci/Makefile: revisions 1.3, 1.4
sys/modules/i915drmkms/Makefile: revisions 1.5-1.7
Split drm ttm config into a separate file.
--
Fix module build of drmkms_linux.
--
Remove vestigial drm2pci module, replaced by drmkms_pci.
--
fix the module class.
--
add the drmkms modules
--
make a drm_agp_destroy() function to resolve the circular dependency between
drmkms and drmkms_pci
--
finalize the idr code.
--
add drm_agp_destroy
--
fix drmkms module path for xen.
--
fix build failure.
/tmp/bracket/build/2014.11.10.22.43.46-i386/src/sys/external/bsd/drm2/include/linux/pci.h:36:20: fatal error: acpica.h: No such file or directory
--
make this work: add agpsupport and sysctl code
--
move agpsupport to drmkms to avoid circular dependencies.
--
turn on dynamic ldscript creation to handle link set symbol definitions
used in the automatic sysctl creation.
--
Add __link_set based code to automatically convert the linux module parameters
into sysctls.
--
this module needs MKLDSCRIPT too now
--
more _KERNEL_OPT
--
prettify and add to all the modules that have it.
--
fix description setting.
--
Adjust flags to allow building with clang.
--
Fix build with clang.
--
Drop casts in favour of expressions that actually give the right
pointer.
--
Move all PCI/AGP code back to drmkms_pci module where it belongs.
--
Use correct length for hdmi_infoframe_header_pack in <linux/hdmi.h>.
Fixes PR kern/49411.
--
Back out previous, fix PR kern/49411 correctly.
frame->header.length is not initialized in the vendor packet case.
Instead, make hdmi_infoframe_header_pack take the packet length and
subtract the size of the header when packing the header.
(Could make it take the payload length instead, but for callers it is
more convenient to have a name for the whole packet length.)
--
Fix bounds checking in hdmi_infoframe_header_pack (PR kern/49411).
--
Trivial build fix for no options SYSCTL_INCLUDE_DESCR case, to
avoid -Werror.
OK christos@ and riastradh@
--
fix debugging compilation (ALL kernel)
--
nouveau_nv50_fence.c needs -Wno-shadow.
--
fix a confusion between dev_t and devmajor_t, and include the primary
minor when calling makedev().
 1.4.2.2.4.1 10-Sep-2016  skrll Sync with HEAD
 1.5.2.2 19-Mar-2016  skrll Sync with HEAD
 1.5.2.1 06-Apr-2015  skrll Sync with HEAD
 1.7.18.1 10-Jun-2019  christos Sync with HEAD
 1.7.16.1 06-Sep-2018  pgoyette Sync with HEAD

Resolve a couple of conflicts (result of the uimin/uimax changes)
 1.11 31-Jan-2023  riastradh sys/modules/drmkms_pci: Remove drm_agpsupport.c.

This was moved to a separate drmkms_agp module.

XXX pullup-10
XXX pullup-9, maybe (not sure any of modularized drmkms works in 9, though)
 1.10 19-Dec-2021  riastradh branches: 1.10.4;
drm: Sync (device-independent) drmkms*.kmod makefiles.
 1.9 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.8 28-Aug-2018  riastradh Remove some superfluous vestigial `-I.'.
 1.7 28-Aug-2018  riastradh Rework PCI and AGP conditionalization.

- Push drm_pci_set_unique into driver callback.
- Eliminate drm_pci_set_unique_hook.
- Gather all drm_agp_* functions into struct drm_agp_hooks.
- Replace the nonsensical old atomic garbage by serious locking.
- Make drm_agpsupport.c its own module.
- Eliminate NDRMKMS_PCI.
- Use NAGP from "agp.h" only in drm_module.c for horrible hack.
=> See comment in file for rationale.
- Always define CONFIG_PCI=1 and CONFIG_AGP=1.
- Always go through the drm_agp_* function hooks.
- Ifdef out nouveau agp stuff that doesn't go through drm_agp_*
for reasons that I'm too frustrated to figure out tonight.
- pci_iomap no longer automagically does agp_i810_borrow.
=> Use drm_agp_borrow instead.
 1.6 27-Aug-2018  riastradh Make drmkms_pci.kmod build again.
 1.5 05-Mar-2015  riastradh branches: 1.5.16; 1.5.18;
Factor generic parts of intelfb out into a drmfb.

Adapting radeondrmkmsfb should not be hard.

This will make nouveaufb easier too.
 1.4 22-Nov-2014  riastradh branches: 1.4.2;
Move all PCI/AGP code back to drmkms_pci module where it belongs.
 1.3 12-Nov-2014  christos move agpsupport to drmkms to avoid circular dependencies.
 1.2 18-Mar-2014  riastradh branches: 1.2.4; 1.2.6; 1.2.8; 1.2.10;
Merge riastradh-drm2 to HEAD.
 1.1 04-Mar-2014  riastradh branches: 1.1.2;
file Makefile was initially added on branch riastradh-drm2.
 1.1.2.1 04-Mar-2014  riastradh Rework drm2 configuration and modularization.

- Split drm2.kmod into drmkms_linux, drmkms, drmkms_pci.
- Split up drmkms-related files.* similarly.
- Make drm_agp_* routines hooks that the drmkms_pci module installs.
- Reuse drm device major 180 for (old) drm and drmkms.

Now old drm and new drmkms can coexist happily in the same tree, with
or without PCI, and require no changes to userland.
 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 18-Mar-2014  tls file Makefile was added on branch tls-maxphys on 2014-08-20 00:04:33 +0000
 1.2.8.1 06-Mar-2015  snj Pull up following revision(s) (requested by mrg in ticket #573):
sys/external/bsd/common/include/linux/kernel.h: 1.5, 1.6
sys/external/bsd/drm2/dist/drm/drm_ioctl.c: 1.4
sys/external/bsd/drm2/dist/drm/drm_irq.c: 1.6-1.8
sys/external/bsd/drm2/dist/drm/i915/i915_dma.c: 1.13-1.15
sys/external/bsd/drm2/dist/drm/i915/i915_gem.c: 1.23-1.27
sys/external/bsd/drm2/dist/drm/i915/i915_gem_execbuffer.c: 1.5
sys/external/bsd/drm2/dist/drm/i915/intel_display.c: 1.14, 1.15
sys/external/bsd/drm2/dist/drm/i915/intel_dp.c: 1.10
sys/external/bsd/drm2/dist/drm/i915/intel_drv.h: 1.8
sys/external/bsd/drm2/dist/drm/i915/intel_i2c.c: 1.8-1.13
sys/external/bsd/drm2/dist/drm/i915/intel_pm.c: 1.6
sys/external/bsd/drm2/dist/drm/i915/intel_ringbuffer.c: 1.5, 1.6
sys/external/bsd/drm2/dist/drm/nouveau/core/engine/device/nouveau_engine_device_base.c: 1.4
sys/external/bsd/drm2/dist/drm/nouveau/core/engine/fifo/nouveau_engine_fifo_nvc0.c: 1.3, 1.4
sys/external/bsd/drm2/dist/drm/nouveau/core/engine/fifo/nouveau_engine_fifo_nve0.c: 1.3, 1.4
sys/external/bsd/drm2/dist/drm/nouveau/core/include/core/device.h: 1.4
sys/external/bsd/drm2/dist/drm/nouveau/core/include/subdev/mc.h: 1.2
sys/external/bsd/drm2/dist/drm/nouveau/core/include/subdev/pwr.h: 1.3, 1.4
sys/external/bsd/drm2/dist/drm/nouveau/core/os.h: 1.4, 1.5
sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/bios/nouveau_subdev_bios_base.c: 1.2
sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/bios/nouveau_subdev_bios_pll.c: 1.2
sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/clock/nouveau_subdev_clock_base.c: 1.2
sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/clock/nouveau_subdev_clock_nv50.c: 1.2
sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/devinit/fbmem.h: 1.2
sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/devinit/nouveau_subdev_devinit_nv04.c: 1.2
sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/fb/nouveau_subdev_fb_nv50.c: 1.2
sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/fb/nouveau_subdev_fb_nvc0.c: 1.2
sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/fb/nv50.h: 1.2
sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/fb/nvc0.h: 1.2
sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/mc/nouveau_subdev_mc_base.c: 1.2, 1.3
sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/mxm/nouveau_subdev_mxm_nv50.c: 1.2
sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/pwr/nouveau_subdev_pwr_base.c: 1.3, 1.4
sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/therm/nouveau_subdev_therm_ic.c: 1.2
sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/timer/nouveau_subdev_timer_nv04.c: 1.2
sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/vm/nouveau_subdev_vm_base.c: 1.2
sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/vm/nouveau_subdev_vm_nv04.c: 1.2
sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/vm/nouveau_subdev_vm_nv44.c: 1.2
sys/external/bsd/drm2/dist/drm/nouveau/core/subdev/vm/nv04.h: 1.2
sys/external/bsd/drm2/dist/drm/nouveau/nouveau_bo.h: 1.3
sys/external/bsd/drm2/dist/drm/nouveau/nouveau_drm.c: 1.4, 1.5
sys/external/bsd/drm2/dist/drm/nouveau/nouveau_fbcon.c: 1.2
sys/external/bsd/drm2/dist/drm/nouveau/nouveau_nv50_display.c: 1.3
sys/external/bsd/drm2/dist/drm/nouveau/nouveau_nv84_fence.c: 1.2
sys/external/bsd/drm2/dist/drm/nouveau/nouveau_ttm.c: 1.3
sys/external/bsd/drm2/dist/drm/nouveau/nouveau_ttm.h: 1.2
sys/external/bsd/drm2/dist/drm/nouveau/nouveau_vga.h: 1.2
sys/external/bsd/drm2/dist/drm/radeon/radeon_fence.c: 1.6-1.8
sys/external/bsd/drm2/dist/drm/radeon/radeon_pm.c: 1.3
sys/external/bsd/drm2/dist/drm/radeon/rs400.c: 1.3
sys/external/bsd/drm2/dist/drm/via/via_dmablit.c: 1.3, 1.4
sys/external/bsd/drm2/dist/drm/via/via_drv.h: 1.3
sys/external/bsd/drm2/dist/drm/via/via_irq.c: 1.3, 1.4
sys/external/bsd/drm2/dist/drm/via/via_video.c: 1.3, 1.4
sys/external/bsd/drm2/dist/include/drm/drmP.h: 1.10
sys/external/bsd/drm2/dist/include/drm/drm_crtc.h: 1.4
sys/external/bsd/drm2/dist/include/drm/drm_modes.h: 1.3
sys/external/bsd/drm2/dist/uapi/drm/i915_drm.h: 1.2
sys/external/bsd/drm2/drm/drm_cache.c: 1.4-1.6
sys/external/bsd/drm2/drm/drm_drv.c: 1.14
sys/external/bsd/drm2/drm/drm_module.c: 1.10
sys/external/bsd/drm2/drm/drm_sysctl.c: 1.5
sys/external/bsd/drm2/drm/drm_vma_manager.c: 1.2
sys/external/bsd/drm2/drm/drmfb.c: 1.1
sys/external/bsd/drm2/drm/files.drmkms: 1.10, 1.11
sys/external/bsd/drm2/i2c/drm_encoder_slave.c: 1.1
sys/external/bsd/drm2/i915drm/files.i915drmkms: 1.7, 1.10
sys/external/bsd/drm2/i915drm/intelfb.c: 1.11, 1.12
sys/external/bsd/drm2/include/asm/io.h: 1.4
sys/external/bsd/drm2/include/asm/unaligned.h: 1.2, 1.3
sys/external/bsd/drm2/include/drm/drm_encoder_slave.h: 1.1
sys/external/bsd/drm2/include/drm/drm_wait_netbsd.h: 1.7-1.11
sys/external/bsd/drm2/include/drm/drmfb.h: 1.1
sys/external/bsd/drm2/include/drm/drmfb_pci.h: 1.1, 1.2
sys/external/bsd/drm2/include/linux/bitops.h: 1.9
sys/external/bsd/drm2/include/linux/i2c.h: 1.7, 1.8
sys/external/bsd/drm2/include/linux/io-mapping.h: 1.5
sys/external/bsd/drm2/include/linux/moduleparam.h: 1.5
sys/external/bsd/drm2/include/linux/pci.h: 1.12-1.15
sys/external/bsd/drm2/include/linux/pm.h: 1.4
sys/external/bsd/drm2/include/linux/reboot.h: 1.2
sys/external/bsd/drm2/include/linux/slab.h: 1.5
sys/external/bsd/drm2/include/linux/string.h: 1.4
sys/external/bsd/drm2/include/linux/vgaarb.h: 1.3
sys/external/bsd/drm2/include/linux/ww_mutex.h: 1.10
sys/external/bsd/drm2/linux/files.drmkms_linux: 1.8
sys/external/bsd/drm2/linux/linux_i2c.c: 1.3
sys/external/bsd/drm2/linux/linux_ww_mutex.c: 1.1
sys/external/bsd/drm2/nouveau/files.nouveau: 1.5-1.8
sys/external/bsd/drm2/nouveau/nouveau_pci.c: 1.1-1.3
sys/external/bsd/drm2/nouveau/nouveau_pci.h: 1.1
sys/external/bsd/drm2/nouveau/nouveau_sysfs.c: 1.1
sys/external/bsd/drm2/nouveau/nouveau_vga.c: 1.1
sys/external/bsd/drm2/nouveau/nouveaufb.c: 1.1
sys/external/bsd/drm2/nouveau/nouveaufb.h: 1.1
sys/external/bsd/drm2/pci/drm_pci.c: 1.10-1.12
sys/external/bsd/drm2/pci/drm_pci_module.c: 1.4
sys/external/bsd/drm2/pci/drmfb_pci.c: 1.1-1.3
sys/external/bsd/drm2/pci/files.drmkms_pci: 1.5
sys/external/bsd/drm2/radeon/radeon_pci.c: 1.5-1.7
sys/modules/drmkms/Makefile: 1.8, 1.9
sys/modules/drmkms_linux/Makefile: 1.6
sys/modules/drmkms_pci/Makefile: 1.5
sync drm2 with HEAD.
 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 18-Mar-2014  yamt file Makefile was added on branch yamt-pagecache on 2014-05-22 11:41:07 +0000
 1.2.4.2 18-May-2014  rmind sync with head
 1.2.4.1 18-Mar-2014  rmind file Makefile was added on branch rmind-smpnet on 2014-05-18 17:46:11 +0000
 1.4.2.1 06-Apr-2015  skrll Sync with HEAD
 1.5.18.1 10-Jun-2019  christos Sync with HEAD
 1.5.16.1 06-Sep-2018  pgoyette Sync with HEAD

Resolve a couple of conflicts (result of the uimin/uimax changes)
 1.10.4.1 22-Feb-2023  martin Pull up following revision(s) (requested by riastradh in ticket #97):

sys/modules/drmkms/Makefile: revision 1.19
sys/modules/drmkms_pci/Makefile: revision 1.11

sys/modules/drmkms: Remove GPU scheduler files.
These have been moved out to drmkms_sched.kmod.

sys/modules/drmkms_pci: Remove drm_agpsupport.c.
This was moved to a separate drmkms_agp module.
 1.4 28-Jul-2022  riastradh drmkms_sched: Remove duplicate module definition.
 1.3 28-Jul-2022  riastradh drmkms_sched: Revert previous MKLDSCRIPT, red herring.
 1.2 28-Jul-2022  riastradh drmkms_sched: Fix link sets in module.
 1.1 23-Jul-2022  riastradh drm: Split scheduler into separate module.

Used only by amdgpu, and it uses something that is currently broken
from the gcc update on aarch64, so let's make it a little more
optional.
 1.2 03-Jun-2023  lukem bsd.own.mk: rename GCC_NO_* to CC_WNO_*

Rename compiler-warning-disable variables from
GCC_NO_warning
to
CC_WNO_warning
where warning is the full warning name as used by the compiler.

GCC_NO_IMPLICIT_FALLTHRU is CC_WNO_IMPLICIT_FALLTHROUGH

Using the convention CC_compilerflag, where compilerflag
is based on the full compiler flag name.
 1.1 17-Jul-2022  riastradh drm: Modularize ttm.
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 07-Dec-2015  pgoyette branches: 1.1.2; 1.1.18; 1.1.22;
Modularize drvctl(4)
 1.1.22.1 10-Jun-2019  christos Sync with HEAD
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 07-Dec-2015  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:52 +0000
 1.1.2.2 27-Dec-2015  skrll Sync with HEAD (as of 26th Dec)
 1.1.2.1 07-Dec-2015  skrll file Makefile was added on branch nick-nhusb on 2015-12-27 12:10:06 +0000
 1.1 07-Dec-2015  pgoyette branches: 1.1.2; 1.1.18;
Modularize drvctl(4)
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 07-Dec-2015  jdolecek file drvctl.ioconf was added on branch tls-maxphys on 2017-12-03 11:38:52 +0000
 1.1.2.2 27-Dec-2015  skrll Sync with HEAD (as of 26th Dec)
 1.1.2.1 07-Dec-2015  skrll file drvctl.ioconf was added on branch nick-nhusb on 2015-12-27 12:10:06 +0000
 1.1 04-Nov-2024  brad Add a driver for the Maxim DS2482-100 and DS2482-800 I2C to 1-Wire
bridge.

This chip provides a I2C device that then has 1 or 8 1-Wire busses on
the other side. The 1-Wire buses show up as onewire(4) buses in the
NetBSD.

The chip can be used in situations where:

* You have a I2C bus extended a long distance, say with a LTC4311
active terminator / extender or one of the differential I2C
extenders and you would like to have a 1-Wire device on the far end
and it isn't possible to add wiring to get to the far end.

* You are either out of GPIO pins or the GPIO pins are not reliable
enough to use gpioow(4), but you do have working I2C.

The DS2482 does all of the 1-Wire signals in hardware and provides for
a couple of pullup options for the 1-Wire devices.

All of the functions of the DS2482-100 and -800 are supported except
for overdrive speed support. To do this will likely require some API
changes to onewire(4).

Breakout boards exist for the DS2482 for both variants, but they
appear to be more expensive than expected. The chip itself is quiet
cheap and wasn't all that hard to SMD solder to a board. No other
components are really needed.

There are other members in the same family, the DS2482-101, DS2484 and
DS2485. The DS2482-101 has a sleep pin, but from the datasheet
appears to program the same as the -100 variant. The DS2484 has a
slightly different way to set configuration information and probably
won't quite work with the driver, but isn't far off. The DS2485 is
very different and would require a new driver to function.
 1.1 04-Nov-2024  brad Add a driver for the Maxim DS2482-100 and DS2482-800 I2C to 1-Wire
bridge.

This chip provides a I2C device that then has 1 or 8 1-Wire busses on
the other side. The 1-Wire buses show up as onewire(4) buses in the
NetBSD.

The chip can be used in situations where:

* You have a I2C bus extended a long distance, say with a LTC4311
active terminator / extender or one of the differential I2C
extenders and you would like to have a 1-Wire device on the far end
and it isn't possible to add wiring to get to the far end.

* You are either out of GPIO pins or the GPIO pins are not reliable
enough to use gpioow(4), but you do have working I2C.

The DS2482 does all of the 1-Wire signals in hardware and provides for
a couple of pullup options for the 1-Wire devices.

All of the functions of the DS2482-100 and -800 are supported except
for overdrive speed support. To do this will likely require some API
changes to onewire(4).

Breakout boards exist for the DS2482 for both variants, but they
appear to be more expensive than expected. The chip itself is quiet
cheap and wasn't all that hard to SMD solder to a board. No other
components are really needed.

There are other members in the same family, the DS2482-101, DS2484 and
DS2485. The DS2482-101 has a sleep pin, but from the datasheet
appears to program the same as the -100 variant. The DS2484 has a
slightly different way to set configuration information and probably
won't quite work with the driver, but isn't far off. The DS2485 is
very different and would require a new driver to function.
 1.1 23-Jan-2025  brad A driver for the DS28E17 1-Wire to I2C bridge chip.

This chip acts like a 1-Wire slave device and provides a iic(4) master
at the end of the 1-Wire bus. More or less it is the polar opposite
of the DS2482 [ds2482ow(4)] chip.

This device couples well with ds2482ow(4) and can be used to provide a
I2C bus at very great lengths from the controlling computer.

All features of the chip are supported, except for 1-Wire overdrive
support, which requires more work from the onewire(4) infrastructure.

The chip does not support Read without Stop. Attempts to do this will
get turned into a Read with Stop and one will have to hope for the
best. The chip also does not support zero length I2C reads or zero
length I2C writes. This has the side effect of making the default
mode, a zero length I2C write, for i2scan(8) return false positives.
The alternative mode that i2cscan(8) can use, the single byte read,
should work as expected.

The chip has automatic support for end devices that do I2C clock
stretching.

It was noticed that this chip does not work with the gpioow(4) driver.
That might be an interesting thing to debug if one has a good logic
analyzer on hand. While the presence pulse is detected, the gpioow(4)
driver is not able to complete the initial ROM enumeration. The
DS28E17 works flawlessly when driven by a DS2482 [ds2482ow(4)] driver
chip. Poke me if you want any more details.

The chip is pretty inexpensive and only requires a single cap to get
it hooked up. However, the package it comes in is only a 16-QFN
package, so it could provide to be hard to solider onto a board for
some. There are side tabs, so it was possible with a very small iron
and lots of flux. There is a slightly expensive breakout board sold
by Mikroe that probably works well -> https://www.mikroe.com/1-wire-i2c-click
 1.1 23-Jan-2025  brad A driver for the DS28E17 1-Wire to I2C bridge chip.

This chip acts like a 1-Wire slave device and provides a iic(4) master
at the end of the 1-Wire bus. More or less it is the polar opposite
of the DS2482 [ds2482ow(4)] chip.

This device couples well with ds2482ow(4) and can be used to provide a
I2C bus at very great lengths from the controlling computer.

All features of the chip are supported, except for 1-Wire overdrive
support, which requires more work from the onewire(4) infrastructure.

The chip does not support Read without Stop. Attempts to do this will
get turned into a Read with Stop and one will have to hope for the
best. The chip also does not support zero length I2C reads or zero
length I2C writes. This has the side effect of making the default
mode, a zero length I2C write, for i2scan(8) return false positives.
The alternative mode that i2cscan(8) can use, the single byte read,
should work as expected.

The chip has automatic support for end devices that do I2C clock
stretching.

It was noticed that this chip does not work with the gpioow(4) driver.
That might be an interesting thing to debug if one has a good logic
analyzer on hand. While the presence pulse is detected, the gpioow(4)
driver is not able to complete the initial ROM enumeration. The
DS28E17 works flawlessly when driven by a DS2482 [ds2482ow(4)] driver
chip. Poke me if you want any more details.

The chip is pretty inexpensive and only requires a single cap to get
it hooked up. However, the package it comes in is only a 16-QFN
package, so it could provide to be hard to solider onto a board for
some. There are side tabs, so it was possible with a very small iron
and lots of flux. There is a slightly expensive breakout board sold
by Mikroe that probably works well -> https://www.mikroe.com/1-wire-i2c-click
 1.10 25-Apr-2021  christos Handle mipsn64
 1.9 10-Apr-2021  simonb branches: 1.9.2;
Build the netbsd32_syscall module if mips64.
Don't build the linux_syscall module if mips*
 1.8 04-Dec-2019  martin branches: 1.8.10;
Add syscall_linux back for other arm architectures (accidently removed
in previous)
 1.7 03-Dec-2019  jmcneill dtrace: add support for aarch64
 1.6 08-Mar-2015  christos branches: 1.6.18; 1.6.22;
dtrace syscall for linux32
 1.5 07-Mar-2015  christos Add syscall provider build glue, unhooked.
 1.4 02-Dec-2012  chs branches: 1.4.14;
adapt the cyclic module and profile dtrace provider to netbsd.
for now, just hook the cyclic callback into hardclock().
 1.3 12-Mar-2010  darran branches: 1.3.4; 1.3.12; 1.3.22;
DTrace: Add the Function Boundary Trace (FBT) provider moduile. This
module instruments every function in the kernel with entry and exit
probes. These probes are true zero-effect probes in that they don't
exist in the code until they are enabled. The probes are enabled by
directly patching the function entry and exit points to make jumps into
the dtrace framework.
This gives us over 29,000 trace points in the kernel.
 1.2 01-Mar-2010  darran branches: 1.2.2;
DTrace: Add an SDT (Statically Defined Tracing) provider framework, and
implement most of the proc provider. Adds proc:::create, exec,
exec_success, exec_faillure, signal_send, signal_discard, signal_handle,
lwp_create, lwp_start, lwp_exit.
 1.1 21-Feb-2010  darran DTrace: add the dtrace module.
 1.2.2.3 11-Aug-2010  yamt sync with head.
 1.2.2.2 11-Mar-2010  yamt sync with head
 1.2.2.1 01-Mar-2010  yamt file Makefile was added on branch yamt-nfs-mp on 2010-03-11 15:04:24 +0000
 1.3.22.2 03-Dec-2017  jdolecek update from HEAD
 1.3.22.1 25-Feb-2013  tls resync with head
 1.3.12.1 16-Jan-2013  yamt sync with (a bit old) head
 1.3.4.2 30-Apr-2010  uebayasi Sync with HEAD.
 1.3.4.1 12-Mar-2010  uebayasi file Makefile was added on branch uebayasi-xip on 2010-04-30 14:44:17 +0000
 1.4.14.1 06-Apr-2015  skrll Sync with HEAD
 1.6.22.1 09-Dec-2019  martin Pull up following revision(s) (requested by jmcneill in ticket #525):

external/cddl/osnet/dev/dtrace/aarch64/dtrace_isa.c: revision 1.1
distrib/sets/lists/modules/md.i386: revision 1.83
share/mk/bsd.own.mk: revision 1.1168
usr.bin/mkubootimage/mkubootimage.c: revision 1.25
sys/modules/dtrace/Makefile: revision 1.7
usr.bin/mkubootimage/mkubootimage.c: revision 1.26
sys/modules/dtrace/Makefile: revision 1.8
external/cddl/osnet/dist/lib/libdtrace/aarch64/dt_isadep.c: revision 1.2
distrib/sets/lists/modules/mi: revision 1.128
sys/arch/aarch64/include/frame.h: revision 1.3
sys/arch/evbarm/conf/mk.generic64: revision 1.4
external/cddl/osnet/dist/lib/libdtrace/common/dt_link.c: revision 1.12
sys/modules/cyclic/Makefile: revision 1.4
sys/arch/aarch64/conf/Makefile.aarch64: revision 1.16
external/cddl/osnet/dev/dtrace/aarch64/dtrace_subr.c: revision 1.1
sys/arch/aarch64/aarch64/start.S: revision 1.3
sys/arch/aarch64/aarch64/trap.c: revision 1.22
external/cddl/osnet/dev/fbt/aarch64/fbt_isa.c: revision 1.1
external/cddl/osnet/dev/dtrace/aarch64/dtrace_asm.S: revision 1.1
external/cddl/osnet/dev/fbt/aarch64/fbt_isa.h: revision 1.1
external/cddl/osnet/dev/dtrace/aarch64/regset.h: revision 1.1
external/cddl/osnet/lib/libdtrace/Makefile: revision 1.26
distrib/sets/lists/modules/md.amd64: revision 1.82
usr.bin/mkubootimage/mkubootimage.1: revision 1.13
distrib/sets/lists/modules/ad.arm: revision 1.14

Add KDTRACE_HOOKS support.

Define lwp_trapframe() macro

dtrace: add support for aarch64

Add syscall_linux back for other arm architectures (accidently removed
in previous)

Add -u flag for updating headers in place.

Fix alignment of .text section by changing load address to
0xffffffc000000000 and adding 64 bytes of padding before the entry point.

Update arm64 image header in place

Move dtrace_syscall_linux out of mi set list

Enable DTrace on aarch64

Fix signed/unsigned comparison
 1.6.18.1 08-Apr-2020  martin Merge changes from current as of 20200406
 1.8.10.1 17-Apr-2021  thorpej Sync with HEAD.
 1.9.2.1 13-May-2021  thorpej Sync with HEAD.
 1.13 03-Jun-2023  lukem bsd.own.mk: rename GCC_NO_* to CC_WNO_*

Rename compiler-warning-disable variables from
GCC_NO_warning
to
CC_WNO_warning
where warning is the full warning name as used by the compiler.

GCC_NO_IMPLICIT_FALLTHRU is CC_WNO_IMPLICIT_FALLTHROUGH

Using the convention CC_compilerflag, where compilerflag
is based on the full compiler flag name.
 1.12 13-Oct-2019  christos Elide function pointer cast errors
 1.11 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.10 29-Jun-2018  kamil Rework the changes to DTRACE/ZFS files that were fixing Clang/LLVM build

Rever changes to upstream files and replace them with additional -Wno-
compiler argument flags.

Tested with base LLVM.

Requested by <chuq>
 1.9 07-Jun-2018  kamil branches: 1.9.2;
Replace HAVE_GCC with ACTIVE_CC == gcc checks

Kernel modules build with GCC and Clang/LLVM.

Requested by <joerg>
 1.8 06-Jun-2018  kamil Restrict -Wno-unused-but-set-variable in sys/modules/dtrace/dtrace to GCC

Clang/LLVM does not recognize it.

This is a step forward functional MKLLVM=yes HAVE_LLVM=yes build.

Sponsored by <The NetBSD Foundation>
 1.7 06-Jun-2018  kamil Swap conditions HAVE_LLVM -> HAVE_GCC
 1.6 06-Jun-2018  kamil Restrict -Wno-discarded-qualifiers in sys/modules/dtrace/* to GCC

Clang/LLVM does not recognize it.

This is a step forward functional MKLLVM=yes HAVE_LLVM=yes build.

Sponsored by <The NetBSD Foundation>
 1.5 28-May-2018  chs 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.4 05-Mar-2014  ozaki-r branches: 1.4.28;
Tidy up Makefile of cyclic and dtrace modules to support ARM
 1.3 14-Dec-2010  haad branches: 1.3.8; 1.3.18; 1.3.22;
Disable errors reported by unknown pragmas in dtrace module.
 1.2 13-Mar-2010  christos branches: 1.2.2; 1.2.4;
now that I've fixed Makefile.inc, include it.
 1.1 21-Feb-2010  darran branches: 1.1.2;
DTrace: add the dtrace module.
 1.1.2.3 11-Aug-2010  yamt sync with head.
 1.1.2.2 11-Mar-2010  yamt sync with head
 1.1.2.1 21-Feb-2010  yamt file Makefile was added on branch yamt-nfs-mp on 2010-03-11 15:04:24 +0000
 1.2.4.2 30-Apr-2010  uebayasi Sync with HEAD.
 1.2.4.1 13-Mar-2010  uebayasi file Makefile was added on branch uebayasi-xip on 2010-04-30 14:44:17 +0000
 1.2.2.1 05-Mar-2011  rmind sync with head
 1.3.22.1 18-May-2014  rmind sync with head
 1.3.18.1 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.3.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.4.28.2 28-Jul-2018  pgoyette Sync with HEAD
 1.4.28.1 25-Jun-2018  pgoyette Sync with HEAD
 1.9.2.2 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.9.2.1 10-Jun-2019  christos Sync with HEAD
 1.8 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.7 28-May-2018  chs branches: 1.7.2;
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.6 16-Sep-2016  pgoyette branches: 1.6.14;
Move kern_ctf.c into the dtrace_fbt module (the only place it is used)
rather than including in kernels with KDTRACE_HOOKS defined. Update
the dtrace_fbt module to depend on the zlib module.

Bump kernel version to avoid module mismatch.

Welcome to 7.99.38 !
 1.5 18-Sep-2014  wiz branches: 1.5.2; 1.5.4;
Per the wiki roadmap, rename the three dtrace modules to have
a "dtrace_" prefix.
amd64 build tested, other set list changes done the same way.
 1.4 02-Dec-2012  chs remove unneeded include dirs.
 1.3 14-Dec-2010  haad branches: 1.3.8; 1.3.18;
Disable errors reported by unknown pragmas in dtrace module.
 1.2 13-Mar-2010  christos branches: 1.2.2; 1.2.4; 1.2.6;
Include ../../Makefile.inc now that it works.
 1.1 12-Mar-2010  darran DTrace: Add the Function Boundary Trace (FBT) provider moduile. This
module instruments every function in the kernel with entry and exit
probes. These probes are true zero-effect probes in that they don't
exist in the code until they are enabled. The probes are enabled by
directly patching the function entry and exit points to make jumps into
the dtrace framework.
This gives us over 29,000 trace points in the kernel.
 1.2.6.2 11-Aug-2010  yamt sync with head.
 1.2.6.1 13-Mar-2010  yamt file Makefile was added on branch yamt-nfs-mp on 2010-08-11 22:54:50 +0000
 1.2.4.2 30-Apr-2010  uebayasi Sync with HEAD.
 1.2.4.1 13-Mar-2010  uebayasi file Makefile was added on branch uebayasi-xip on 2010-04-30 14:44:17 +0000
 1.2.2.1 05-Mar-2011  rmind sync with head
 1.3.18.2 03-Dec-2017  jdolecek update from HEAD
 1.3.18.1 25-Feb-2013  tls resync with head
 1.3.8.1 16-Jan-2013  yamt sync with (a bit old) head
 1.5.4.1 04-Nov-2016  pgoyette Sync with HEAD
 1.5.2.1 05-Oct-2016  skrll Sync with HEAD
 1.6.14.1 25-Jun-2018  pgoyette Sync with HEAD
 1.7.2.1 10-Jun-2019  christos Sync with HEAD
 1.7 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.6 29-Jun-2018  kamil Rework the changes to DTRACE/ZFS files that were fixing Clang/LLVM build

Rever changes to upstream files and replace them with additional -Wno-
compiler argument flags.

Tested with base LLVM.

Requested by <chuq>
 1.5 07-Jun-2018  kamil branches: 1.5.2;
Replace HAVE_GCC with ACTIVE_CC == gcc checks

Kernel modules build with GCC and Clang/LLVM.

Requested by <joerg>
 1.4 06-Jun-2018  kamil Swap conditions HAVE_LLVM -> HAVE_GCC
 1.3 06-Jun-2018  kamil Restrict -Wno-discarded-qualifiers in sys/modules/dtrace/* to GCC

Clang/LLVM does not recognize it.

This is a step forward functional MKLLVM=yes HAVE_LLVM=yes build.

Sponsored by <The NetBSD Foundation>
 1.2 28-May-2018  chs 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.1 08-Mar-2015  christos branches: 1.1.2; 1.1.18; 1.1.20;
dtrace syscall for linux32
 1.1.20.2 28-Jul-2018  pgoyette Sync with HEAD
 1.1.20.1 25-Jun-2018  pgoyette Sync with HEAD
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 08-Mar-2015  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:52 +0000
 1.1.2.2 06-Apr-2015  skrll Sync with HEAD
 1.1.2.1 08-Mar-2015  skrll file Makefile was added on branch nick-nhusb on 2015-04-06 15:18:21 +0000
 1.5.2.1 10-Jun-2019  christos Sync with HEAD
 1.1 08-Mar-2015  christos branches: 1.1.2; 1.1.18;
dtrace syscall for linux32
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 08-Mar-2015  jdolecek file emultrace.h was added on branch tls-maxphys on 2017-12-03 11:38:52 +0000
 1.1.2.2 06-Apr-2015  skrll Sync with HEAD
 1.1.2.1 08-Mar-2015  skrll file emultrace.h was added on branch nick-nhusb on 2015-04-06 15:18:21 +0000
 1.8 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.7 29-Jun-2018  kamil Rework the changes to DTRACE/ZFS files that were fixing Clang/LLVM build

Rever changes to upstream files and replace them with additional -Wno-
compiler argument flags.

Tested with base LLVM.

Requested by <chuq>
 1.6 07-Jun-2018  kamil branches: 1.6.2;
Replace HAVE_GCC with ACTIVE_CC == gcc checks

Kernel modules build with GCC and Clang/LLVM.

Requested by <joerg>
 1.5 06-Jun-2018  kamil Really disable unsupported $CC flag for LLVM

The build of kernel modules works now:

./build.sh -V MKLLVM=yes -V MKGCC=no -V HAVE_LLVM=yes modules

Sponsored by <The NetBSD Foundation>
 1.4 06-Jun-2018  kamil Swap conditions HAVE_LLVM -> HAVE_GCC
 1.3 06-Jun-2018  kamil Restrict -Wno-discarded-qualifiers in sys/modules/dtrace/* to GCC

Clang/LLVM does not recognize it.

This is a step forward functional MKLLVM=yes HAVE_LLVM=yes build.

Sponsored by <The NetBSD Foundation>
 1.2 28-May-2018  chs 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.1 07-Mar-2015  christos branches: 1.1.2; 1.1.18; 1.1.20;
Add syscall provider build glue, unhooked.
 1.1.20.2 28-Jul-2018  pgoyette Sync with HEAD
 1.1.20.1 25-Jun-2018  pgoyette Sync with HEAD
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 07-Mar-2015  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:52 +0000
 1.1.2.2 06-Apr-2015  skrll Sync with HEAD
 1.1.2.1 07-Mar-2015  skrll file Makefile was added on branch nick-nhusb on 2015-04-06 15:18:21 +0000
 1.6.2.1 10-Jun-2019  christos Sync with HEAD
 1.1 07-Mar-2015  christos branches: 1.1.2; 1.1.18;
Add syscall provider build glue, unhooked.
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 07-Mar-2015  jdolecek file emultrace.h was added on branch tls-maxphys on 2017-12-03 11:38:52 +0000
 1.1.2.2 06-Apr-2015  skrll Sync with HEAD
 1.1.2.1 07-Mar-2015  skrll file emultrace.h was added on branch nick-nhusb on 2015-04-06 15:18:21 +0000
 1.9 25-Jan-2016  christos branches: 1.9.16;
earm (iyonix and zaurus) don't have cpu_counter.h
 1.8 25-Jan-2016  christos spell empty.
 1.7 25-Jan-2016  christos Handle also the earm{ev,hf}...
 1.6 25-Jan-2016  martin Map "earm" to armv5
 1.5 24-Jan-2016  christos Remove hf and eb. Rin Okuyama
 1.4 24-Jan-2016  christos Grr. arm is different.
 1.3 24-Jan-2016  christos Instead of hard-coding who has cpu counters why don't you look for them?
 1.2 10-Sep-2015  riz Evil hack to ensure dtrace lockstat module builds on arm.
 1.1 08-Mar-2015  christos branches: 1.1.2;
non working glue.
 1.1.2.4 19-Mar-2016  skrll Sync with HEAD
 1.1.2.3 22-Sep-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 was added on branch nick-nhusb on 2015-04-06 15:18:21 +0000
 1.9.16.2 03-Dec-2017  jdolecek update from HEAD
 1.9.16.1 25-Jan-2016  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:52 +0000
 1.8 13-Apr-2021  mrg apply -Wno-error=array-bounds for GCC 10.

these trigger "pointer to end of array" issues, and i'm not
entirely sure what is happening in the code generated for the
two "INDIR" system calls from syscalls.master.
 1.7 17-Feb-2019  rin branches: 1.7.14;
Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.6 29-Jun-2018  kamil Rework the changes to DTRACE/ZFS files that were fixing Clang/LLVM build

Rever changes to upstream files and replace them with additional -Wno-
compiler argument flags.

Tested with base LLVM.

Requested by <chuq>
 1.5 07-Jun-2018  kamil branches: 1.5.2;
Replace HAVE_GCC with ACTIVE_CC == gcc checks

Kernel modules build with GCC and Clang/LLVM.

Requested by <joerg>
 1.4 06-Jun-2018  kamil Swap conditions HAVE_LLVM -> HAVE_GCC
 1.3 06-Jun-2018  kamil Restrict -Wno-discarded-qualifiers in sys/modules/dtrace/* to GCC

Clang/LLVM does not recognize it.

This is a step forward functional MKLLVM=yes HAVE_LLVM=yes build.

Sponsored by <The NetBSD Foundation>
 1.2 28-May-2018  chs 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.1 07-Mar-2015  christos branches: 1.1.2; 1.1.18; 1.1.20;
Add syscall provider build glue, unhooked.
 1.1.20.2 28-Jul-2018  pgoyette Sync with HEAD
 1.1.20.1 25-Jun-2018  pgoyette Sync with HEAD
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 07-Mar-2015  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:52 +0000
 1.1.2.2 06-Apr-2015  skrll Sync with HEAD
 1.1.2.1 07-Mar-2015  skrll file Makefile was added on branch nick-nhusb on 2015-04-06 15:18:21 +0000
 1.5.2.1 10-Jun-2019  christos Sync with HEAD
 1.7.14.1 17-Apr-2021  thorpej Sync with HEAD.
 1.1 07-Mar-2015  christos branches: 1.1.2; 1.1.18;
Add syscall provider build glue, unhooked.
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 07-Mar-2015  jdolecek file emultrace.h was added on branch tls-maxphys on 2017-12-03 11:38:52 +0000
 1.1.2.2 06-Apr-2015  skrll Sync with HEAD
 1.1.2.1 07-Mar-2015  skrll file emultrace.h was added on branch nick-nhusb on 2015-04-06 15:18:21 +0000
 1.8 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.7 29-Jun-2018  kamil Rework the changes to DTRACE/ZFS files that were fixing Clang/LLVM build

Rever changes to upstream files and replace them with additional -Wno-
compiler argument flags.

Tested with base LLVM.

Requested by <chuq>
 1.6 07-Jun-2018  kamil branches: 1.6.2;
Replace HAVE_GCC with ACTIVE_CC == gcc checks

Kernel modules build with GCC and Clang/LLVM.

Requested by <joerg>
 1.5 06-Jun-2018  kamil Swap conditions HAVE_LLVM -> HAVE_GCC
 1.4 06-Jun-2018  kamil Restrict -Wno-discarded-qualifiers in sys/modules/dtrace/* to GCC

Clang/LLVM does not recognize it.

This is a step forward functional MKLLVM=yes HAVE_LLVM=yes build.

Sponsored by <The NetBSD Foundation>
 1.3 28-May-2018  chs 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.2 18-Sep-2014  wiz branches: 1.2.18;
Per the wiki roadmap, rename the three dtrace modules to have
a "dtrace_" prefix.
amd64 build tested, other set list changes done the same way.
 1.1 02-Dec-2012  chs branches: 1.1.2; 1.1.6;
adapt the cyclic module and profile dtrace provider to netbsd.
for now, just hook the cyclic callback into hardclock().
 1.1.6.3 03-Dec-2017  jdolecek update from HEAD
 1.1.6.2 25-Feb-2013  tls resync with head
 1.1.6.1 02-Dec-2012  tls file Makefile was added on branch tls-maxphys on 2013-02-25 00:30:00 +0000
 1.1.2.2 16-Jan-2013  yamt sync with (a bit old) head
 1.1.2.1 02-Dec-2012  yamt file Makefile was added on branch yamt-pagecache on 2013-01-16 05:33:47 +0000
 1.2.18.2 28-Jul-2018  pgoyette Sync with HEAD
 1.2.18.1 25-Jun-2018  pgoyette Sync with HEAD
 1.6.2.1 10-Jun-2019  christos Sync with HEAD
 1.7 07-Aug-2022  riastradh dtrace_sdt: Register sdt providers and probes in loaded modules too.
 1.6 18-Sep-2014  wiz Per the wiki roadmap, rename the three dtrace modules to have
a "dtrace_" prefix.
amd64 build tested, other set list changes done the same way.
 1.5 02-Dec-2012  chs remove unneeded include dirs.
 1.4 14-Dec-2010  haad branches: 1.4.8; 1.4.18;
Disable errors reported by unknown pragmas in dtrace module.
 1.3 13-Mar-2010  christos branches: 1.3.2; 1.3.4;
Include ../../Makefile.inc now that it works.
 1.2 10-Mar-2010  darran branches: 1.2.2;
DTrace: fix a build problem for the SDT provider.
 1.1 01-Mar-2010  darran DTrace: Add an SDT (Statically Defined Tracing) provider framework, and
implement most of the proc provider. Adds proc:::create, exec,
exec_success, exec_faillure, signal_send, signal_discard, signal_handle,
lwp_create, lwp_start, lwp_exit.
 1.2.2.3 11-Aug-2010  yamt sync with head.
 1.2.2.2 11-Mar-2010  yamt sync with head
 1.2.2.1 10-Mar-2010  yamt file Makefile was added on branch yamt-nfs-mp on 2010-03-11 15:04:25 +0000
 1.3.4.2 30-Apr-2010  uebayasi Sync with HEAD.
 1.3.4.1 13-Mar-2010  uebayasi file Makefile was added on branch uebayasi-xip on 2010-04-30 14:44:17 +0000
 1.3.2.1 05-Mar-2011  rmind sync with head
 1.4.18.2 03-Dec-2017  jdolecek update from HEAD
 1.4.18.1 25-Feb-2013  tls resync with head
 1.4.8.1 16-Jan-2013  yamt sync with (a bit old) head
 1.8 13-Apr-2021  mrg apply -Wno-error=array-bounds for GCC 10.

these trigger "pointer to end of array" issues, and i'm not
entirely sure what is happening in the code generated for the
two "INDIR" system calls from syscalls.master.
 1.7 17-Feb-2019  rin branches: 1.7.14;
Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.6 29-Jun-2018  kamil Rework the changes to DTRACE/ZFS files that were fixing Clang/LLVM build

Rever changes to upstream files and replace them with additional -Wno-
compiler argument flags.

Tested with base LLVM.

Requested by <chuq>
 1.5 07-Jun-2018  kamil branches: 1.5.2;
Replace HAVE_GCC with ACTIVE_CC == gcc checks

Kernel modules build with GCC and Clang/LLVM.

Requested by <joerg>
 1.4 06-Jun-2018  kamil Swap conditions HAVE_LLVM -> HAVE_GCC
 1.3 06-Jun-2018  kamil Restrict -Wno-discarded-qualifiers in sys/modules/dtrace/* to GCC

Clang/LLVM does not recognize it.

This is a step forward functional MKLLVM=yes HAVE_LLVM=yes build.

Sponsored by <The NetBSD Foundation>
 1.2 28-May-2018  chs 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.1 07-Mar-2015  christos branches: 1.1.2; 1.1.18; 1.1.20;
Add syscall provider build glue, unhooked.
 1.1.20.2 28-Jul-2018  pgoyette Sync with HEAD
 1.1.20.1 25-Jun-2018  pgoyette Sync with HEAD
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 07-Mar-2015  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:53 +0000
 1.1.2.2 06-Apr-2015  skrll Sync with HEAD
 1.1.2.1 07-Mar-2015  skrll file Makefile was added on branch nick-nhusb on 2015-04-06 15:18:21 +0000
 1.5.2.1 10-Jun-2019  christos Sync with HEAD
 1.7.14.1 17-Apr-2021  thorpej Sync with HEAD.
 1.1 07-Mar-2015  christos branches: 1.1.2; 1.1.18;
Add syscall provider build glue, unhooked.
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 07-Mar-2015  jdolecek file emultrace.h was added on branch tls-maxphys on 2017-12-03 11:38:53 +0000
 1.1.2.2 06-Apr-2015  skrll Sync with HEAD
 1.1.2.1 07-Mar-2015  skrll file emultrace.h was added on branch nick-nhusb on 2015-04-06 15:18:21 +0000
 1.5 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.4 09-Aug-2011  jmcneill branches: 1.4.54;
modify the dtv device api so hardware drivers can be loaded independently
of the dtv module
 1.3 15-Jul-2011  jmcneill add dtv_intlog10 implementation, from apb@
 1.2 13-Jul-2011  jmcneill build dtv_demux.c
 1.1 09-Jul-2011  jmcneill module glue for dtv
 1.4.54.1 10-Jun-2019  christos Sync with HEAD
 1.2 14-Jul-2011  matt files.dtv is included by conf/files
 1.1 09-Jul-2011  jmcneill module glue for dtv
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 09-Aug-2011  jmcneill branches: 1.1.54;
modify the dtv device api so hardware drivers can be loaded independently
of the dtv module
 1.1.54.1 10-Jun-2019  christos Sync with HEAD
 1.3 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.2 07-Aug-2014  hannken branches: 1.2.28;
Change efs from hashlist to vcache.
 1.1 28-Jun-2008  rumble branches: 1.1.2; 1.1.4; 1.1.8; 1.1.20; 1.1.48; 1.1.64;
Add of bunch of file system modules.
 1.1.64.1 10-Aug-2014  tls Rebase.
 1.1.48.1 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.1.20.2 04-May-2009  yamt sync with head.
 1.1.20.1 28-Jun-2008  yamt file Makefile was added on branch yamt-nfs-mp on 2009-05-04 08:14:09 +0000
 1.1.8.2 18-Sep-2008  wrstuden Sync with wrstuden-revivesa-base-2.
 1.1.8.1 28-Jun-2008  wrstuden file Makefile was added on branch wrstuden-revivesa on 2008-09-18 04:36:58 +0000
 1.1.4.2 03-Jul-2008  simonb Sync with head.
 1.1.4.1 28-Jun-2008  simonb file Makefile was added on branch simonb-wapbl on 2008-07-03 18:38:19 +0000
 1.1.2.2 29-Jun-2008  mjf Sync with HEAD.
 1.1.2.1 28-Jun-2008  mjf file Makefile was added on branch mjf-devfs2 on 2008-06-29 09:33:16 +0000
 1.2.28.1 10-Jun-2019  christos Sync with HEAD
 1.1 11-Mar-2025  brad A driver and userland utility for a couple of families of the
Microchip Technology / SMSC fan controller chips.

The driver and utility supports the:

o EMC2101 and EMC2101-R
o EMC2103-1, EMC2102-2 and EMC2103-4
o EMC2104
o EMC2106
o EMC2301
o EMC2302
o EMC2303
o EMC2305

The EMC210X family supports 1 or 2 fans with tachometer. Depending on
the chip, it may support 2 additional fans without tach and might
support a high side attachment (i.e. a fan, usually 5v, driven
directly from the chip and not PWM or DAC). All versions of EMC210X
support internal temperature measurements, and depending on the chip,
may support up to 5 additional temperature zones. The tachometers and
temperature measurements are provided to the system via the envsys(4)
framework. Some chip types support GPIO pins and support is provided
via the gpio(4) framework.

The EMC230X family supports 1, 2, 3 or 5 fans with the same number of
tachometers. No temperature zone or GPIO support. The tachometers
are provided to the system via the envsys(4) framework. The fan
support can be provided by PWM signaling or DAC.

The two chip families mostly do PWM signaling for the fan speed, but a
number of them support DAC output, a 0 to 3v or so voltage. When the
chip supports external temperature zones, this is done usually by a
bipolar NPN or PNP transister configured as a diode, but some of the
chip varients support thermistors.

The emcfan(4) kernel driver provides a simple read / write / seek
device in /dev/ to the register set in the chip. The heavy lifting is
done in the userland utility emcfanctl(8) which provides the ability
to read and write to any valid register and provides some basic higher
level commands to control fan behavior. The output is simple text
lines, or JSON.

The kernel driver does not reset or other mess with the chip, aside
from reading registers. It is entirely possible that something else
in any particular system is the major manager of the fan controller
and it would not do for the kernel driver to mess too much with the
attached device. All interactions are intentional via the userland
utility.

It is known that a EMC2301 is present on the Raspberry PI 4 Compute IO
module (not to be confused with the Raspberry PI 4 Compute module
itself) and there is a breakout board from Adafruit with a EMC2101 on
it. The chips themselves are pretty inexpensive from Mouser or
Digi-key and can be soldered using the simpler SMD soldering
techniques. A number of the variants are QFN packages, but the pads
are exposed to the side of the chip. No other external components are
required to use these fan controllers.
 1.1 11-Mar-2025  brad A driver and userland utility for a couple of families of the
Microchip Technology / SMSC fan controller chips.

The driver and utility supports the:

o EMC2101 and EMC2101-R
o EMC2103-1, EMC2102-2 and EMC2103-4
o EMC2104
o EMC2106
o EMC2301
o EMC2302
o EMC2303
o EMC2305

The EMC210X family supports 1 or 2 fans with tachometer. Depending on
the chip, it may support 2 additional fans without tach and might
support a high side attachment (i.e. a fan, usually 5v, driven
directly from the chip and not PWM or DAC). All versions of EMC210X
support internal temperature measurements, and depending on the chip,
may support up to 5 additional temperature zones. The tachometers and
temperature measurements are provided to the system via the envsys(4)
framework. Some chip types support GPIO pins and support is provided
via the gpio(4) framework.

The EMC230X family supports 1, 2, 3 or 5 fans with the same number of
tachometers. No temperature zone or GPIO support. The tachometers
are provided to the system via the envsys(4) framework. The fan
support can be provided by PWM signaling or DAC.

The two chip families mostly do PWM signaling for the fan speed, but a
number of them support DAC output, a 0 to 3v or so voltage. When the
chip supports external temperature zones, this is done usually by a
bipolar NPN or PNP transister configured as a diode, but some of the
chip varients support thermistors.

The emcfan(4) kernel driver provides a simple read / write / seek
device in /dev/ to the register set in the chip. The heavy lifting is
done in the userland utility emcfanctl(8) which provides the ability
to read and write to any valid register and provides some basic higher
level commands to control fan behavior. The output is simple text
lines, or JSON.

The kernel driver does not reset or other mess with the chip, aside
from reading registers. It is entirely possible that something else
in any particular system is the major manager of the fan controller
and it would not do for the kernel driver to mess too much with the
attached device. All interactions are intentional via the userland
utility.

It is known that a EMC2301 is present on the Raspberry PI 4 Compute IO
module (not to be confused with the Raspberry PI 4 Compute module
itself) and there is a breakout board from Adafruit with a EMC2101 on
it. The chips themselves are pretty inexpensive from Mouser or
Digi-key and can be soldered using the simpler SMD soldering
techniques. A number of the variants are QFN packages, but the pads
are exposed to the side of the chip. No other external components are
required to use these fan controllers.
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 11-Jul-2011  jmcneill branches: 1.1.54;
add module glue for lg3303, xc3028, emdtv
 1.1.54.1 10-Jun-2019  christos Sync with HEAD
 1.1 11-Jul-2011  jmcneill add module glue for lg3303, xc3028, emdtv
 1.1 07-Sep-2022  khorben emuxki(4): allow building as a module

Tested on NetBSD/amd64 with a Sound Blaster Live! Value (CT4870)

Note that this required setting outputs.master to the maximum value
allowed (255) to get sound out, and then cranking the volume pretty
high.

Additional sound cards sponsored by the NetBSD Foundation; thanks!
 1.2 07-Sep-2022  khorben emuxki(4): import a list of board definitions

This is inspired by the cxdtv(4) driver.

Tested on NetBSD/amd64 with a Sound Blaster Live! Value (CT4870, PCI)
and with a Sound Blaster Audigy Rx 7.1 (SB1550, PCIe).

Additional sound cards sponsored by the NetBSD Foundation; thanks!
 1.1 07-Sep-2022  khorben emuxki(4): allow building as a module

Tested on NetBSD/amd64 with a Sound Blaster Live! Value (CT4870)

Note that this required setting outputs.master to the maximum value
allowed (255) to get sound out, and then cranking the volume pretty
high.

Additional sound cards sponsored by the NetBSD Foundation; thanks!
 1.1 07-Sep-2022  khorben emuxki(4): allow building as a module

Tested on NetBSD/amd64 with a Sound Blaster Live! Value (CT4870)

Note that this required setting outputs.master to the maximum value
allowed (255) to get sound out, and then cranking the volume pretty
high.

Additional sound cards sponsored by the NetBSD Foundation; thanks!
 1.3 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.2 28-Aug-2011  jmcneill branches: 1.2.54;
WARNS=3 is the default
 1.1 23-Feb-2011  jruoho branches: 1.1.2; 1.1.4; 1.1.8;
Build glue for est(4).
 1.1.8.2 06-Jun-2011  jruoho Sync with HEAD.
 1.1.8.1 23-Feb-2011  jruoho file Makefile was added on branch jruoho-x86intr on 2011-06-06 09:09:47 +0000
 1.1.4.2 05-Mar-2011  rmind sync with head
 1.1.4.1 23-Feb-2011  rmind file Makefile was added on branch rmind-uvmplock on 2011-03-05 20:55:40 +0000
 1.1.2.2 05-Mar-2011  bouyer Sync with HEAD
 1.1.2.1 23-Feb-2011  bouyer file Makefile was added on branch bouyer-quota2 on 2011-03-05 15:10:44 +0000
 1.2.54.1 10-Jun-2019  christos Sync with HEAD
 1.1 23-Feb-2011  jruoho branches: 1.1.2; 1.1.4; 1.1.8;
Build glue for est(4).
 1.1.8.2 06-Jun-2011  jruoho Sync with HEAD.
 1.1.8.1 23-Feb-2011  jruoho file est.ioconf was added on branch jruoho-x86intr on 2011-06-06 09:09:47 +0000
 1.1.4.2 05-Mar-2011  rmind sync with head
 1.1.4.1 23-Feb-2011  rmind file est.ioconf was added on branch rmind-uvmplock on 2011-03-05 20:55:40 +0000
 1.1.2.2 05-Mar-2011  bouyer Sync with HEAD
 1.1.2.1 23-Feb-2011  bouyer file est.ioconf was added on branch bouyer-quota2 on 2011-03-05 15:10:44 +0000
 1.12 08-Aug-2021  uwe Add ddbping example module to SUBDIR list.
 1.11 30-Apr-2020  christos New kernel example module written by Ayushi Sharma
 1.10 04-Apr-2020  kamil Add new example kernel module: current_time

Submitted by Apurva Nandan.
 1.9 01-Apr-2020  kamil Import a new example kernel module fopsmapper

fopsmapper - basic implementation of mmap with fileops fo_mmap

Submitted by Aditya Vardhan Padala.
 1.8 05-Feb-2020  kamil Import new example kernel module ping_block

Subbmitted by Nisarg Joshi.
 1.7 17-Jan-2019  kamil branches: 1.7.6;
Add a new example kernel module: mapper

Basic implementation of mmap.

Submitted by Akul Pillai.
 1.6 29-May-2018  kamil branches: 1.6.2;
Introduce new example kernel module: panic_string

The panic_string module accepts input from a device file over the write(2)
system call.

It prints panic(9) message passed from user space, e.g.:

echo "Hello world" > /dev/panic

If a string is empty or contain only whitespaces it's ignored and panic(9)
is not triggered. If a non printable character is passed within the input
buffer, the rest of the string is ignored.

This module performs the sync(8) operation before panic(9) to flush cache.

Submitted by Harry Pantazis.
Simplified and cleaned up by myself.
 1.5 20-Apr-2018  kamil Add new example loadable kernel module: readhappy_mpsafe

readhappy_mpsafe - demonstrates how to make a module MPSAFE

This module contains an additional helper program test_readhappy.c,
that is designed to exercise the kernel module with multiple threads.

Submitted by <Siddharth Muralee>
 1.4 13-Apr-2018  kamil Add a new example kernel module

executor - basic implementation of callout and RUN_ONCE

While there, perform a small cleanup in README.

Patch by <Siddharth Muralee>
Polishing by myself.
 1.3 13-Apr-2018  kamil Add new example kernel module: sysctl

sysctl - demonstrates adding a sysctl handle dynamically.

Patch by <Siddharth Muralee>
Polishing by myself.
 1.2 15-Apr-2017  kamil branches: 1.2.10; 1.2.12;
Build without installation example lua kernel module: luareadhappy
 1.1 13-May-2015  pgoyette branches: 1.1.2; 1.1.4; 1.1.6; 1.1.8;
A set of more comprehensive example kernel modules to replace our
previous single example.

These examples were provided by Kamil Rytarowski.

XXX These modules are built as part of a system build, but they
XXX are NOT installed in $DESTDIR.
 1.1.8.1 21-Apr-2017  bouyer Sync with HEAD
 1.1.6.1 26-Apr-2017  pgoyette Sync with HEAD
 1.1.4.3 28-Aug-2017  skrll Sync with HEAD
 1.1.4.2 06-Jun-2015  skrll Sync with HEAD
 1.1.4.1 13-May-2015  skrll file Makefile was added on branch nick-nhusb on 2015-06-06 14:40:23 +0000
 1.1.2.2 03-Jun-2015  snj Pull up following revision(s) (requested by pgoyette in ticket #752):
sys/modules/example/Makefile: file removal
sys/modules/example/example.c: file removal
sys/modules/examples/Makefile: revision 1.1
sys/modules/examples/Makefile.inc: revision 1.1
sys/modules/examples/README: revisions 1.1-1.3
sys/modules/examples/hello/Makefile: revision 1.1
sys/modules/examples/hello/hello.c: revision 1.1
sys/modules/examples/luahello/luahello.lua: revisions 1.1, 1.2
sys/modules/examples/ping/Makefile: revision 1.1
sys/modules/examples/ping/cmd_ping.c: revisions 1.1, 1.2
sys/modules/examples/ping/ping.c: revision 1.1
sys/modules/examples/ping/ping.h: revision 1.1
sys/modules/examples/properties/Makefile: revision 1.1
sys/modules/examples/properties/properties.c: revision 1.1
sys/modules/examples/readhappy/Makefile: revision 1.1
sys/modules/examples/readhappy/readhappy.c: revision 1.1
Soon to be replaced with a more comprehensive set of examples.
--
A set of more comprehensive example kernel modules to replace our
previous single example.
These examples were provided by Kamil Rytarowski.
XXX These modules are built as part of a system build, but they
XXX are NOT installed in $DESTDIR.
--
Fix instructions to match reality. (I renamed the example from the
original submitter, but didn't catch all internal references.)
--
Fix up another internal reference to renamed module, and adjust some
English grammar.
--
Even though this isn't a man page, it looks like one. So sort the
SEE ALSO section accordingly.
--
Fix RCS ID.
 1.1.2.1 13-May-2015  snj file Makefile was added on branch netbsd-7 on 2015-06-03 06:51:40 +0000
 1.2.12.4 18-Jan-2019  pgoyette Synch with HEAD
 1.2.12.3 25-Jun-2018  pgoyette Sync with HEAD
 1.2.12.2 22-Apr-2018  pgoyette Sync with HEAD
 1.2.12.1 16-Apr-2018  pgoyette Sync with HEAD, resolve some conflicts
 1.2.10.2 03-Dec-2017  jdolecek update from HEAD
 1.2.10.1 15-Apr-2017  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:53 +0000
 1.6.2.2 08-Apr-2020  martin Merge changes from current as of 20200406
 1.6.2.1 10-Jun-2019  christos Sync with HEAD
 1.7.6.1 29-Feb-2020  ad Sync with head.
 1.1 13-May-2015  pgoyette branches: 1.1.2; 1.1.4; 1.1.20;
A set of more comprehensive example kernel modules to replace our
previous single example.

These examples were provided by Kamil Rytarowski.

XXX These modules are built as part of a system build, but they
XXX are NOT installed in $DESTDIR.
 1.1.20.2 03-Dec-2017  jdolecek update from HEAD
 1.1.20.1 13-May-2015  jdolecek file Makefile.inc was added on branch tls-maxphys on 2017-12-03 11:38:53 +0000
 1.1.4.2 06-Jun-2015  skrll Sync with HEAD
 1.1.4.1 13-May-2015  skrll file Makefile.inc was added on branch nick-nhusb on 2015-06-06 14:40:23 +0000
 1.1.2.2 03-Jun-2015  snj Pull up following revision(s) (requested by pgoyette in ticket #752):
sys/modules/example/Makefile: file removal
sys/modules/example/example.c: file removal
sys/modules/examples/Makefile: revision 1.1
sys/modules/examples/Makefile.inc: revision 1.1
sys/modules/examples/README: revisions 1.1-1.3
sys/modules/examples/hello/Makefile: revision 1.1
sys/modules/examples/hello/hello.c: revision 1.1
sys/modules/examples/luahello/luahello.lua: revisions 1.1, 1.2
sys/modules/examples/ping/Makefile: revision 1.1
sys/modules/examples/ping/cmd_ping.c: revisions 1.1, 1.2
sys/modules/examples/ping/ping.c: revision 1.1
sys/modules/examples/ping/ping.h: revision 1.1
sys/modules/examples/properties/Makefile: revision 1.1
sys/modules/examples/properties/properties.c: revision 1.1
sys/modules/examples/readhappy/Makefile: revision 1.1
sys/modules/examples/readhappy/readhappy.c: revision 1.1
Soon to be replaced with a more comprehensive set of examples.
--
A set of more comprehensive example kernel modules to replace our
previous single example.
These examples were provided by Kamil Rytarowski.
XXX These modules are built as part of a system build, but they
XXX are NOT installed in $DESTDIR.
--
Fix instructions to match reality. (I renamed the example from the
original submitter, but didn't catch all internal references.)
--
Fix up another internal reference to renamed module, and adjust some
English grammar.
--
Even though this isn't a man page, it looks like one. So sort the
SEE ALSO section accordingly.
--
Fix RCS ID.
 1.1.2.1 13-May-2015  snj file Makefile.inc was added on branch netbsd-7 on 2015-06-03 06:51:40 +0000
 1.15 30-Apr-2020  christos New kernel example module written by Ayushi Sharma
 1.14 04-Apr-2020  kamil Add new example kernel module: current_time

Submitted by Apurva Nandan.
 1.13 01-Apr-2020  kamil Import a new example kernel module fopsmapper

fopsmapper - basic implementation of mmap with fileops fo_mmap

Submitted by Aditya Vardhan Padala.
 1.12 07-Feb-2020  pgoyette Improve wording
 1.11 06-Feb-2020  kamil Document what does ping_block.
 1.10 05-Feb-2020  kamil Import new example kernel module ping_block

Subbmitted by Nisarg Joshi.
 1.9 17-Jan-2019  kamil branches: 1.9.6;
Add a new example kernel module: mapper

Basic implementation of mmap.

Submitted by Akul Pillai.
 1.8 29-May-2018  kamil branches: 1.8.2;
Introduce new example kernel module: panic_string

The panic_string module accepts input from a device file over the write(2)
system call.

It prints panic(9) message passed from user space, e.g.:

echo "Hello world" > /dev/panic

If a string is empty or contain only whitespaces it's ignored and panic(9)
is not triggered. If a non printable character is passed within the input
buffer, the rest of the string is ignored.

This module performs the sync(8) operation before panic(9) to flush cache.

Submitted by Harry Pantazis.
Simplified and cleaned up by myself.
 1.7 20-Apr-2018  kamil Add new example loadable kernel module: readhappy_mpsafe

readhappy_mpsafe - demonstrates how to make a module MPSAFE

This module contains an additional helper program test_readhappy.c,
that is designed to exercise the kernel module with multiple threads.

Submitted by <Siddharth Muralee>
 1.6 13-Apr-2018  kamil Add a new example kernel module

executor - basic implementation of callout and RUN_ONCE

While there, perform a small cleanup in README.

Patch by <Siddharth Muralee>
Polishing by myself.
 1.5 13-Apr-2018  kamil Add new example kernel module: sysctl

sysctl - demonstrates adding a sysctl handle dynamically.

Patch by <Siddharth Muralee>
Polishing by myself.
 1.4 23-Apr-2017  sevan branches: 1.4.10; 1.4.12;
Add luareadhappy to the list.
 1.3 15-May-2015  pgoyette branches: 1.3.2; 1.3.4; 1.3.6;
Even though this isn't a man page, it looks like one. So sort the
SEE ALSO section accordingly.
 1.2 13-May-2015  pgoyette Fix up another internal reference to renamed module, and adjust some
English grammar.
 1.1 13-May-2015  pgoyette A set of more comprehensive example kernel modules to replace our
previous single example.

These examples were provided by Kamil Rytarowski.

XXX These modules are built as part of a system build, but they
XXX are NOT installed in $DESTDIR.
 1.3.6.1 26-Apr-2017  pgoyette Sync with HEAD
 1.3.4.3 28-Aug-2017  skrll Sync with HEAD
 1.3.4.2 06-Jun-2015  skrll Sync with HEAD
 1.3.4.1 15-May-2015  skrll file README was added on branch nick-nhusb on 2015-06-06 14:40:23 +0000
 1.3.2.2 03-Jun-2015  snj Pull up following revision(s) (requested by pgoyette in ticket #752):
sys/modules/example/Makefile: file removal
sys/modules/example/example.c: file removal
sys/modules/examples/Makefile: revision 1.1
sys/modules/examples/Makefile.inc: revision 1.1
sys/modules/examples/README: revisions 1.1-1.3
sys/modules/examples/hello/Makefile: revision 1.1
sys/modules/examples/hello/hello.c: revision 1.1
sys/modules/examples/luahello/luahello.lua: revisions 1.1, 1.2
sys/modules/examples/ping/Makefile: revision 1.1
sys/modules/examples/ping/cmd_ping.c: revisions 1.1, 1.2
sys/modules/examples/ping/ping.c: revision 1.1
sys/modules/examples/ping/ping.h: revision 1.1
sys/modules/examples/properties/Makefile: revision 1.1
sys/modules/examples/properties/properties.c: revision 1.1
sys/modules/examples/readhappy/Makefile: revision 1.1
sys/modules/examples/readhappy/readhappy.c: revision 1.1
Soon to be replaced with a more comprehensive set of examples.
--
A set of more comprehensive example kernel modules to replace our
previous single example.
These examples were provided by Kamil Rytarowski.
XXX These modules are built as part of a system build, but they
XXX are NOT installed in $DESTDIR.
--
Fix instructions to match reality. (I renamed the example from the
original submitter, but didn't catch all internal references.)
--
Fix up another internal reference to renamed module, and adjust some
English grammar.
--
Even though this isn't a man page, it looks like one. So sort the
SEE ALSO section accordingly.
--
Fix RCS ID.
 1.3.2.1 15-May-2015  snj file README was added on branch netbsd-7 on 2015-06-03 06:51:40 +0000
 1.4.12.4 18-Jan-2019  pgoyette Synch with HEAD
 1.4.12.3 25-Jun-2018  pgoyette Sync with HEAD
 1.4.12.2 22-Apr-2018  pgoyette Sync with HEAD
 1.4.12.1 16-Apr-2018  pgoyette Sync with HEAD, resolve some conflicts
 1.4.10.2 03-Dec-2017  jdolecek update from HEAD
 1.4.10.1 23-Apr-2017  jdolecek file README was added on branch tls-maxphys on 2017-12-03 11:38:53 +0000
 1.8.2.2 08-Apr-2020  martin Merge changes from current as of 20200406
 1.8.2.1 10-Jun-2019  christos Sync with HEAD
 1.9.6.1 29-Feb-2020  ad Sync with head.
 1.1 04-Apr-2020  kamil branches: 1.1.4;
Add new example kernel module: current_time

Submitted by Apurva Nandan.
 1.1.4.2 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.1.4.1 04-Apr-2020  martin file Makefile was added on branch phil-wifi on 2020-04-13 08:05:11 +0000
 1.2 04-Apr-2020  kamil branches: 1.2.4;
Switch to type generic PRIu macros

Fixes build on i386.
 1.1 04-Apr-2020  kamil Add new example kernel module: current_time

Submitted by Apurva Nandan.
 1.2.4.2 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.2.4.1 04-Apr-2020  martin file current_time.c was added on branch phil-wifi on 2020-04-13 08:05:11 +0000
 1.1 01-Jun-2020  uwe Example of a kernel module that registers DDB commands.
 1.3 01-Feb-2023  uwe ddbping - restore the original narration of the example, NFCI

Adjust previous change so that it only replaces my home-grown define
for the end marker with the new official DDB_END_CMD marker that it
introduced. Undo the rest of that last change.

As the author of this example I'm pretty sure what example I wanted to
set and this narration order is an important part of it.
 1.2 23-Feb-2021  mrg introduce DDB_END_CMD and replace more than 20 copies of the same
list of NULLs and 0. idea from rillig@.

all touched ports built, several booted.
 1.1 01-Jun-2020  uwe branches: 1.1.2;
Example of a kernel module that registers DDB commands.
 1.1.2.1 03-Apr-2021  thorpej Sync with HEAD.
 1.1 13-Apr-2018  kamil branches: 1.1.2;
Add a new example kernel module

executor - basic implementation of callout and RUN_ONCE

While there, perform a small cleanup in README.

Patch by <Siddharth Muralee>
Polishing by myself.
 1.1.2.2 16-Apr-2018  pgoyette Sync with HEAD, resolve some conflicts
 1.1.2.1 13-Apr-2018  pgoyette file Makefile was added on branch pgoyette-compat on 2018-04-16 02:00:08 +0000
 1.3 06-Jul-2024  andvar s/elasped/elapsed/ in comment.
 1.2 14-Dec-2019  ad branches: 1.2.32;
Use MPSAFE callouts.
 1.1 13-Apr-2018  kamil branches: 1.1.2; 1.1.4;
Add a new example kernel module

executor - basic implementation of callout and RUN_ONCE

While there, perform a small cleanup in README.

Patch by <Siddharth Muralee>
Polishing by myself.
 1.1.4.1 08-Apr-2020  martin Merge changes from current as of 20200406
 1.1.2.2 16-Apr-2018  pgoyette Sync with HEAD, resolve some conflicts
 1.1.2.1 13-Apr-2018  pgoyette file executor.c was added on branch pgoyette-compat on 2018-04-16 02:00:08 +0000
 1.2.32.1 02-Aug-2025  perseant Sync with HEAD
 1.1 01-Apr-2020  kamil branches: 1.1.4;
Import a new example kernel module fopsmapper

fopsmapper - basic implementation of mmap with fileops fo_mmap

Submitted by Aditya Vardhan Padala.
 1.1.4.2 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.1.4.1 01-Apr-2020  martin file Makefile was added on branch phil-wifi on 2020-04-13 08:05:11 +0000
 1.3 17-Apr-2024  riastradh modules/examples/fopsmapper: KNF, sprinkle comments

Missing: MP-safety; this is a kind of broken example.
 1.2 01-Apr-2020  kamil branches: 1.2.4;
Fix CVS Id
 1.1 01-Apr-2020  kamil Import a new example kernel module fopsmapper

fopsmapper - basic implementation of mmap with fileops fo_mmap

Submitted by Aditya Vardhan Padala.
 1.2.4.2 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.2.4.1 01-Apr-2020  martin file cmd_mapper.c was added on branch phil-wifi on 2020-04-13 08:05:11 +0000
 1.3 17-Apr-2024  riastradh modules/examples/fopsmapper: KNF, sprinkle comments

Missing: MP-safety; this is a kind of broken example.
 1.2 01-Apr-2020  kamil branches: 1.2.4;
Avoid comparison between signed and unsigned integer

Cast PAGE_SIZE to size_t.
 1.1 01-Apr-2020  kamil Import a new example kernel module fopsmapper

fopsmapper - basic implementation of mmap with fileops fo_mmap

Submitted by Aditya Vardhan Padala.
 1.2.4.2 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.2.4.1 01-Apr-2020  martin file fopsmapper.c was added on branch phil-wifi on 2020-04-13 08:05:11 +0000
 1.1 13-May-2015  pgoyette branches: 1.1.2; 1.1.4; 1.1.20;
A set of more comprehensive example kernel modules to replace our
previous single example.

These examples were provided by Kamil Rytarowski.

XXX These modules are built as part of a system build, but they
XXX are NOT installed in $DESTDIR.
 1.1.20.2 03-Dec-2017  jdolecek update from HEAD
 1.1.20.1 13-May-2015  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:53 +0000
 1.1.4.2 06-Jun-2015  skrll Sync with HEAD
 1.1.4.1 13-May-2015  skrll file Makefile was added on branch nick-nhusb on 2015-06-06 14:40:23 +0000
 1.1.2.2 03-Jun-2015  snj Pull up following revision(s) (requested by pgoyette in ticket #752):
sys/modules/example/Makefile: file removal
sys/modules/example/example.c: file removal
sys/modules/examples/Makefile: revision 1.1
sys/modules/examples/Makefile.inc: revision 1.1
sys/modules/examples/README: revisions 1.1-1.3
sys/modules/examples/hello/Makefile: revision 1.1
sys/modules/examples/hello/hello.c: revision 1.1
sys/modules/examples/luahello/luahello.lua: revisions 1.1, 1.2
sys/modules/examples/ping/Makefile: revision 1.1
sys/modules/examples/ping/cmd_ping.c: revisions 1.1, 1.2
sys/modules/examples/ping/ping.c: revision 1.1
sys/modules/examples/ping/ping.h: revision 1.1
sys/modules/examples/properties/Makefile: revision 1.1
sys/modules/examples/properties/properties.c: revision 1.1
sys/modules/examples/readhappy/Makefile: revision 1.1
sys/modules/examples/readhappy/readhappy.c: revision 1.1
Soon to be replaced with a more comprehensive set of examples.
--
A set of more comprehensive example kernel modules to replace our
previous single example.
These examples were provided by Kamil Rytarowski.
XXX These modules are built as part of a system build, but they
XXX are NOT installed in $DESTDIR.
--
Fix instructions to match reality. (I renamed the example from the
original submitter, but didn't catch all internal references.)
--
Fix up another internal reference to renamed module, and adjust some
English grammar.
--
Even though this isn't a man page, it looks like one. So sort the
SEE ALSO section accordingly.
--
Fix RCS ID.
 1.1.2.1 13-May-2015  snj file Makefile was added on branch netbsd-7 on 2015-06-03 06:51:40 +0000
 1.1 13-May-2015  pgoyette branches: 1.1.2; 1.1.4; 1.1.20;
A set of more comprehensive example kernel modules to replace our
previous single example.

These examples were provided by Kamil Rytarowski.

XXX These modules are built as part of a system build, but they
XXX are NOT installed in $DESTDIR.
 1.1.20.2 03-Dec-2017  jdolecek update from HEAD
 1.1.20.1 13-May-2015  jdolecek file hello.c was added on branch tls-maxphys on 2017-12-03 11:38:53 +0000
 1.1.4.2 06-Jun-2015  skrll Sync with HEAD
 1.1.4.1 13-May-2015  skrll file hello.c was added on branch nick-nhusb on 2015-06-06 14:40:23 +0000
 1.1.2.2 03-Jun-2015  snj Pull up following revision(s) (requested by pgoyette in ticket #752):
sys/modules/example/Makefile: file removal
sys/modules/example/example.c: file removal
sys/modules/examples/Makefile: revision 1.1
sys/modules/examples/Makefile.inc: revision 1.1
sys/modules/examples/README: revisions 1.1-1.3
sys/modules/examples/hello/Makefile: revision 1.1
sys/modules/examples/hello/hello.c: revision 1.1
sys/modules/examples/luahello/luahello.lua: revisions 1.1, 1.2
sys/modules/examples/ping/Makefile: revision 1.1
sys/modules/examples/ping/cmd_ping.c: revisions 1.1, 1.2
sys/modules/examples/ping/ping.c: revision 1.1
sys/modules/examples/ping/ping.h: revision 1.1
sys/modules/examples/properties/Makefile: revision 1.1
sys/modules/examples/properties/properties.c: revision 1.1
sys/modules/examples/readhappy/Makefile: revision 1.1
sys/modules/examples/readhappy/readhappy.c: revision 1.1
Soon to be replaced with a more comprehensive set of examples.
--
A set of more comprehensive example kernel modules to replace our
previous single example.
These examples were provided by Kamil Rytarowski.
XXX These modules are built as part of a system build, but they
XXX are NOT installed in $DESTDIR.
--
Fix instructions to match reality. (I renamed the example from the
original submitter, but didn't catch all internal references.)
--
Fix up another internal reference to renamed module, and adjust some
English grammar.
--
Even though this isn't a man page, it looks like one. So sort the
SEE ALSO section accordingly.
--
Fix RCS ID.
 1.1.2.1 13-May-2015  snj file hello.c was added on branch netbsd-7 on 2015-06-03 06:51:40 +0000
 1.3 16-Apr-2023  nikita Resolve conflicts for lua 5.4.4 import.
Adjust various files for lua 5.4.4.
 1.2 13-May-2015  pgoyette branches: 1.2.2; 1.2.4; 1.2.20; 1.2.54;
Fix instructions to match reality. (I renamed the example from the
original submitter, but didn't catch all internal references.)
 1.1 13-May-2015  pgoyette A set of more comprehensive example kernel modules to replace our
previous single example.

These examples were provided by Kamil Rytarowski.

XXX These modules are built as part of a system build, but they
XXX are NOT installed in $DESTDIR.
 1.2.54.1 11-Aug-2023  martin Pull up following revision(s) (requested by nikita in ticket #313):

external/mit/lua/dist/src/ljumptab.h up to 1.2
external/mit/lua/dist/src/lopnames.h up to 1.1.1.1
external/mit/lua/dist/src/lbitlib.c delete
external/mit/lua/dist/Makefile up to 1.9
external/mit/lua/dist/README up to 1.10
external/mit/lua/dist/README.import up to 1.5
external/mit/lua/dist/doc/contents.html up to 1.9
external/mit/lua/dist/doc/lua.1 up to 1.9
external/mit/lua/dist/doc/manual.html up to 1.10
external/mit/lua/dist/doc/readme.html up to 1.9
external/mit/lua/dist/src/Makefile up to 1.7
external/mit/lua/dist/src/lapi.c up to 1.15
external/mit/lua/dist/src/lapi.h up to 1.11
external/mit/lua/dist/src/lauxlib.c up to 1.13
external/mit/lua/dist/src/lauxlib.h up to 1.9
external/mit/lua/dist/src/lbaselib.c up to 1.11
external/mit/lua/dist/src/lcode.c up to 1.14
external/mit/lua/dist/src/lcode.h up to 1.9
external/mit/lua/dist/src/lcorolib.c up to 1.10
external/mit/lua/dist/src/lctype.c up to 1.8
external/mit/lua/dist/src/lctype.h up to 1.8
external/mit/lua/dist/src/ldblib.c up to 1.12
external/mit/lua/dist/src/ldebug.c up to 1.14
external/mit/lua/dist/src/ldebug.h up to 1.11
external/mit/lua/dist/src/ldo.c up to 1.12
external/mit/lua/dist/src/ldo.h up to 1.12
external/mit/lua/dist/src/ldump.c up to 1.12
external/mit/lua/dist/src/lfunc.c up to 1.11
external/mit/lua/dist/src/lfunc.h up to 1.11
external/mit/lua/dist/src/lgc.c up to 1.13
external/mit/lua/dist/src/lgc.h up to 1.10
external/mit/lua/dist/src/linit.c up to 1.10
external/mit/lua/dist/src/liolib.c up to 1.10
external/mit/lua/dist/src/llex.c up to 1.14
external/mit/lua/dist/src/llex.h up to 1.9
external/mit/lua/dist/src/llimits.h up to 1.12
external/mit/lua/dist/src/lmathlib.c up to 1.11
external/mit/lua/dist/src/lmem.c up to 1.11
external/mit/lua/dist/src/lmem.h up to 1.9
external/mit/lua/dist/src/loadlib.c up to 1.11
external/mit/lua/dist/src/lobject.c up to 1.14
external/mit/lua/dist/src/lobject.h up to 1.12
external/mit/lua/dist/src/lopcodes.c up to 1.9
external/mit/lua/dist/src/lopcodes.h up to 1.10
external/mit/lua/dist/src/loslib.c up to 1.13
external/mit/lua/dist/src/lparser.c up to 1.15
external/mit/lua/dist/src/lparser.h up to 1.9
external/mit/lua/dist/src/lprefix.h up to 1.8
external/mit/lua/dist/src/lstate.c up to 1.12
external/mit/lua/dist/src/lstate.h up to 1.11
external/mit/lua/dist/src/lstring.c up to 1.10
external/mit/lua/dist/src/lstring.h up to 1.10
external/mit/lua/dist/src/lstrlib.c up to 1.21
external/mit/lua/dist/src/ltable.c up to 1.13
external/mit/lua/dist/src/ltable.h up to 1.10
external/mit/lua/dist/src/ltablib.c up to 1.11
external/mit/lua/dist/src/ltm.c up to 1.11
external/mit/lua/dist/src/ltm.h up to 1.10
external/mit/lua/dist/src/lua.c up to 1.12
external/mit/lua/dist/src/lua.h up to 1.14
external/mit/lua/dist/src/luac.c up to 1.12
external/mit/lua/dist/src/luaconf.h up to 1.25
external/mit/lua/dist/src/lualib.h up to 1.8
external/mit/lua/dist/src/lundump.c up to 1.11
external/mit/lua/dist/src/lundump.h up to 1.8
external/mit/lua/dist/src/lutf8lib.c up to 1.11
external/mit/lua/dist/src/lvm.c up to 1.20
external/mit/lua/dist/src/lvm.h up to 1.12
external/mit/lua/dist/src/lzio.c up to 1.9
external/mit/lua/dist/src/lzio.h up to 1.9
external/mit/lua/lib/liblua/Makefile up to 1.13
external/mit/lua/lib/liblua/shlib_version up to 1.4
distrib/sets/lists/base/ad.aarch64 1.37
distrib/sets/lists/base/mi 1.1315
distrib/sets/lists/base/shl.mi 1.947,1.949
distrib/sets/lists/debug/shl.mi 1.304,1.312
etc/mtree/NetBSD.dist.base 1.247
etc/mtree/NetBSD.dist.compat.in 1.2
share/mk/bsd.lua.mk 1.9
sys/modules/examples/luahello/luahello.lua 1.3
sys/modules/lua/Makefile 1.13
doc/CHANGES (manually edited)
doc/3RDPARTY (manually edited)

Import lua 5.4.6
 1.2.20.2 03-Dec-2017  jdolecek update from HEAD
 1.2.20.1 13-May-2015  jdolecek file luahello.lua was added on branch tls-maxphys on 2017-12-03 11:38:53 +0000
 1.2.4.2 06-Jun-2015  skrll Sync with HEAD
 1.2.4.1 13-May-2015  skrll file luahello.lua was added on branch nick-nhusb on 2015-06-06 14:40:23 +0000
 1.2.2.2 03-Jun-2015  snj Pull up following revision(s) (requested by pgoyette in ticket #752):
sys/modules/example/Makefile: file removal
sys/modules/example/example.c: file removal
sys/modules/examples/Makefile: revision 1.1
sys/modules/examples/Makefile.inc: revision 1.1
sys/modules/examples/README: revisions 1.1-1.3
sys/modules/examples/hello/Makefile: revision 1.1
sys/modules/examples/hello/hello.c: revision 1.1
sys/modules/examples/luahello/luahello.lua: revisions 1.1, 1.2
sys/modules/examples/ping/Makefile: revision 1.1
sys/modules/examples/ping/cmd_ping.c: revisions 1.1, 1.2
sys/modules/examples/ping/ping.c: revision 1.1
sys/modules/examples/ping/ping.h: revision 1.1
sys/modules/examples/properties/Makefile: revision 1.1
sys/modules/examples/properties/properties.c: revision 1.1
sys/modules/examples/readhappy/Makefile: revision 1.1
sys/modules/examples/readhappy/readhappy.c: revision 1.1
Soon to be replaced with a more comprehensive set of examples.
--
A set of more comprehensive example kernel modules to replace our
previous single example.
These examples were provided by Kamil Rytarowski.
XXX These modules are built as part of a system build, but they
XXX are NOT installed in $DESTDIR.
--
Fix instructions to match reality. (I renamed the example from the
original submitter, but didn't catch all internal references.)
--
Fix up another internal reference to renamed module, and adjust some
English grammar.
--
Even though this isn't a man page, it looks like one. So sort the
SEE ALSO section accordingly.
--
Fix RCS ID.
 1.2.2.1 13-May-2015  snj file luahello.lua was added on branch netbsd-7 on 2015-06-03 06:51:40 +0000
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 15-Apr-2017  kamil branches: 1.1.2; 1.1.4; 1.1.12; 1.1.16; 1.1.20;
Add new example kernel module in Lua luareadhappy

This example presents a C module with its device (/dev entry) and its
content generator with algorithm defined in Lua state. The Lua state can
be changed dynamically from userland, without interruption of read(2) over
the device.

This is an example how to call Lua code from C.
 1.1.20.1 10-Jun-2019  christos Sync with HEAD
 1.1.16.2 03-Dec-2017  jdolecek update from HEAD
 1.1.16.1 15-Apr-2017  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:53 +0000
 1.1.12.2 28-Aug-2017  skrll Sync with HEAD
 1.1.12.1 15-Apr-2017  skrll file Makefile was added on branch nick-nhusb on 2017-08-28 17:53:10 +0000
 1.1.4.2 26-Apr-2017  pgoyette Sync with HEAD
 1.1.4.1 15-Apr-2017  pgoyette file Makefile was added on branch pgoyette-localcount on 2017-04-26 02:53:28 +0000
 1.1.2.2 15-Apr-2017  kamil 1043943
 1.1.2.1 15-Apr-2017  kamil file Makefile was added on branch bouyer-socketcan on 2017-04-15 04:27:31 +0000
 1.1 15-Apr-2017  kamil branches: 1.1.2; 1.1.4; 1.1.12; 1.1.16;
Add new example kernel module in Lua luareadhappy

This example presents a C module with its device (/dev entry) and its
content generator with algorithm defined in Lua state. The Lua state can
be changed dynamically from userland, without interruption of read(2) over
the device.

This is an example how to call Lua code from C.
 1.1.16.2 03-Dec-2017  jdolecek update from HEAD
 1.1.16.1 15-Apr-2017  jdolecek file happy.lua was added on branch tls-maxphys on 2017-12-03 11:38:53 +0000
 1.1.12.2 28-Aug-2017  skrll Sync with HEAD
 1.1.12.1 15-Apr-2017  skrll file happy.lua was added on branch nick-nhusb on 2017-08-28 17:53:10 +0000
 1.1.4.2 26-Apr-2017  pgoyette Sync with HEAD
 1.1.4.1 15-Apr-2017  pgoyette file happy.lua was added on branch pgoyette-localcount on 2017-04-26 02:53:28 +0000
 1.1.2.2 15-Apr-2017  kamil 1043943
 1.1.2.1 15-Apr-2017  kamil file happy.lua was added on branch bouyer-socketcan on 2017-04-15 04:27:31 +0000
 1.2 30-Jan-2020  kamil Align major numbers in example modules with sys/conf/majors

Patch submitted by: Aditya Vardhan Padala (silv3r)
 1.1 15-Apr-2017  kamil branches: 1.1.2; 1.1.4; 1.1.12; 1.1.16; 1.1.20; 1.1.26;
Add new example kernel module in Lua luareadhappy

This example presents a C module with its device (/dev entry) and its
content generator with algorithm defined in Lua state. The Lua state can
be changed dynamically from userland, without interruption of read(2) over
the device.

This is an example how to call Lua code from C.
 1.1.26.1 29-Feb-2020  ad Sync with head.
 1.1.20.1 08-Apr-2020  martin Merge changes from current as of 20200406
 1.1.16.2 03-Dec-2017  jdolecek update from HEAD
 1.1.16.1 15-Apr-2017  jdolecek file luareadhappy.c was added on branch tls-maxphys on 2017-12-03 11:38:53 +0000
 1.1.12.2 28-Aug-2017  skrll Sync with HEAD
 1.1.12.1 15-Apr-2017  skrll file luareadhappy.c was added on branch nick-nhusb on 2017-08-28 17:53:10 +0000
 1.1.4.2 26-Apr-2017  pgoyette Sync with HEAD
 1.1.4.1 15-Apr-2017  pgoyette file luareadhappy.c was added on branch pgoyette-localcount on 2017-04-26 02:53:28 +0000
 1.1.2.2 15-Apr-2017  kamil 1043943
 1.1.2.1 15-Apr-2017  kamil file luareadhappy.c was added on branch bouyer-socketcan on 2017-04-15 04:27:31 +0000
 1.1 17-Jan-2019  kamil branches: 1.1.2; 1.1.6;
Add a new example kernel module: mapper

Basic implementation of mmap.

Submitted by Akul Pillai.
 1.1.6.2 10-Jun-2019  christos Sync with HEAD
 1.1.6.1 17-Jan-2019  christos file Makefile was added on branch phil-wifi on 2019-06-10 22:09:24 +0000
 1.1.2.2 18-Jan-2019  pgoyette Synch with HEAD
 1.1.2.1 17-Jan-2019  pgoyette file Makefile was added on branch pgoyette-compat on 2019-01-18 08:50:58 +0000
 1.1 17-Jan-2019  kamil branches: 1.1.2; 1.1.6;
Add a new example kernel module: mapper

Basic implementation of mmap.

Submitted by Akul Pillai.
 1.1.6.2 10-Jun-2019  christos Sync with HEAD
 1.1.6.1 17-Jan-2019  christos file cmd_mapper.c was added on branch phil-wifi on 2019-06-10 22:09:24 +0000
 1.1.2.2 18-Jan-2019  pgoyette Synch with HEAD
 1.1.2.1 17-Jan-2019  pgoyette file cmd_mapper.c was added on branch pgoyette-compat on 2019-01-18 08:50:58 +0000
 1.4 06-Sep-2020  riastradh Fix fallout from previous uvm.h cleanup.

- pmap(9) needs uvm/uvm_extern.h.

- x86/pmap.h is not usable on its own; it is only usable if included
via uvm/uvm_extern.h (-> uvm/uvm_pmap.h -> machine/pmap.h).

- Make nvmm.h and nvmm_internal.h standalone.
 1.3 05-Sep-2020  riastradh Round of uvm.h cleanup.

The poorly named uvm.h is generally supposed to be for uvm-internal
users only.

- Narrow it to files that actually need it -- mostly files that need
to query whether curlwp is the pagedaemon, which should maybe be
exposed by an external header.

- Use uvm_extern.h where feasible and uvm_*.h for things not exposed
by it. We should split up uvm_extern.h but this will serve for now
to reduce the uvm.h dependencies.

- Use uvm_stat.h and #ifdef UVMHIST uvm.h for files that use
UVMHIST(ubchist), since ubchist is declared in uvm.h but the
reference evaporates if UVMHIST is not defined, so we reduce header
file dependencies.

- Make uvm_device.h and uvm_swap.h independently includable while
here.

ok chs@
 1.2 30-Jan-2020  kamil Align major numbers in example modules with sys/conf/majors

Patch submitted by: Aditya Vardhan Padala (silv3r)
 1.1 17-Jan-2019  kamil branches: 1.1.2; 1.1.6; 1.1.10;
Add a new example kernel module: mapper

Basic implementation of mmap.

Submitted by Akul Pillai.
 1.1.10.1 29-Feb-2020  ad Sync with head.
 1.1.6.3 08-Apr-2020  martin Merge changes from current as of 20200406
 1.1.6.2 10-Jun-2019  christos Sync with HEAD
 1.1.6.1 17-Jan-2019  christos file mapper.c was added on branch phil-wifi on 2019-06-10 22:09:24 +0000
 1.1.2.2 18-Jan-2019  pgoyette Synch with HEAD
 1.1.2.1 17-Jan-2019  pgoyette file mapper.c was added on branch pgoyette-compat on 2019-01-18 08:50:58 +0000
 1.1 29-May-2018  kamil branches: 1.1.2;
Introduce new example kernel module: panic_string

The panic_string module accepts input from a device file over the write(2)
system call.

It prints panic(9) message passed from user space, e.g.:

echo "Hello world" > /dev/panic

If a string is empty or contain only whitespaces it's ignored and panic(9)
is not triggered. If a non printable character is passed within the input
buffer, the rest of the string is ignored.

This module performs the sync(8) operation before panic(9) to flush cache.

Submitted by Harry Pantazis.
Simplified and cleaned up by myself.
 1.1.2.2 25-Jun-2018  pgoyette Sync with HEAD
 1.1.2.1 29-May-2018  pgoyette file Makefile was added on branch pgoyette-compat on 2018-06-25 07:26:05 +0000
 1.3 21-Oct-2021  andvar fix various typos, mainly in comments, but also in man pages and log messages.
 1.2 30-Jan-2020  kamil Align major numbers in example modules with sys/conf/majors

Patch submitted by: Aditya Vardhan Padala (silv3r)
 1.1 29-May-2018  kamil branches: 1.1.2; 1.1.4; 1.1.10;
Introduce new example kernel module: panic_string

The panic_string module accepts input from a device file over the write(2)
system call.

It prints panic(9) message passed from user space, e.g.:

echo "Hello world" > /dev/panic

If a string is empty or contain only whitespaces it's ignored and panic(9)
is not triggered. If a non printable character is passed within the input
buffer, the rest of the string is ignored.

This module performs the sync(8) operation before panic(9) to flush cache.

Submitted by Harry Pantazis.
Simplified and cleaned up by myself.
 1.1.10.1 29-Feb-2020  ad Sync with head.
 1.1.4.1 08-Apr-2020  martin Merge changes from current as of 20200406
 1.1.2.2 25-Jun-2018  pgoyette Sync with HEAD
 1.1.2.1 29-May-2018  pgoyette file panic_string.c was added on branch pgoyette-compat on 2018-06-25 07:26:05 +0000
 1.1 13-May-2015  pgoyette branches: 1.1.2; 1.1.4; 1.1.20;
A set of more comprehensive example kernel modules to replace our
previous single example.

These examples were provided by Kamil Rytarowski.

XXX These modules are built as part of a system build, but they
XXX are NOT installed in $DESTDIR.
 1.1.20.2 03-Dec-2017  jdolecek update from HEAD
 1.1.20.1 13-May-2015  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:53 +0000
 1.1.4.2 06-Jun-2015  skrll Sync with HEAD
 1.1.4.1 13-May-2015  skrll file Makefile was added on branch nick-nhusb on 2015-06-06 14:40:23 +0000
 1.1.2.2 03-Jun-2015  snj Pull up following revision(s) (requested by pgoyette in ticket #752):
sys/modules/example/Makefile: file removal
sys/modules/example/example.c: file removal
sys/modules/examples/Makefile: revision 1.1
sys/modules/examples/Makefile.inc: revision 1.1
sys/modules/examples/README: revisions 1.1-1.3
sys/modules/examples/hello/Makefile: revision 1.1
sys/modules/examples/hello/hello.c: revision 1.1
sys/modules/examples/luahello/luahello.lua: revisions 1.1, 1.2
sys/modules/examples/ping/Makefile: revision 1.1
sys/modules/examples/ping/cmd_ping.c: revisions 1.1, 1.2
sys/modules/examples/ping/ping.c: revision 1.1
sys/modules/examples/ping/ping.h: revision 1.1
sys/modules/examples/properties/Makefile: revision 1.1
sys/modules/examples/properties/properties.c: revision 1.1
sys/modules/examples/readhappy/Makefile: revision 1.1
sys/modules/examples/readhappy/readhappy.c: revision 1.1
Soon to be replaced with a more comprehensive set of examples.
--
A set of more comprehensive example kernel modules to replace our
previous single example.
These examples were provided by Kamil Rytarowski.
XXX These modules are built as part of a system build, but they
XXX are NOT installed in $DESTDIR.
--
Fix instructions to match reality. (I renamed the example from the
original submitter, but didn't catch all internal references.)
--
Fix up another internal reference to renamed module, and adjust some
English grammar.
--
Even though this isn't a man page, it looks like one. So sort the
SEE ALSO section accordingly.
--
Fix RCS ID.
 1.1.2.1 13-May-2015  snj file Makefile was added on branch netbsd-7 on 2015-06-03 06:51:40 +0000
 1.2 13-May-2015  joerg branches: 1.2.2; 1.2.4; 1.2.20;
Fix RCS ID.
 1.1 13-May-2015  pgoyette A set of more comprehensive example kernel modules to replace our
previous single example.

These examples were provided by Kamil Rytarowski.

XXX These modules are built as part of a system build, but they
XXX are NOT installed in $DESTDIR.
 1.2.20.2 03-Dec-2017  jdolecek update from HEAD
 1.2.20.1 13-May-2015  jdolecek file cmd_ping.c was added on branch tls-maxphys on 2017-12-03 11:38:53 +0000
 1.2.4.2 06-Jun-2015  skrll Sync with HEAD
 1.2.4.1 13-May-2015  skrll file cmd_ping.c was added on branch nick-nhusb on 2015-06-06 14:40:23 +0000
 1.2.2.2 03-Jun-2015  snj Pull up following revision(s) (requested by pgoyette in ticket #752):
sys/modules/example/Makefile: file removal
sys/modules/example/example.c: file removal
sys/modules/examples/Makefile: revision 1.1
sys/modules/examples/Makefile.inc: revision 1.1
sys/modules/examples/README: revisions 1.1-1.3
sys/modules/examples/hello/Makefile: revision 1.1
sys/modules/examples/hello/hello.c: revision 1.1
sys/modules/examples/luahello/luahello.lua: revisions 1.1, 1.2
sys/modules/examples/ping/Makefile: revision 1.1
sys/modules/examples/ping/cmd_ping.c: revisions 1.1, 1.2
sys/modules/examples/ping/ping.c: revision 1.1
sys/modules/examples/ping/ping.h: revision 1.1
sys/modules/examples/properties/Makefile: revision 1.1
sys/modules/examples/properties/properties.c: revision 1.1
sys/modules/examples/readhappy/Makefile: revision 1.1
sys/modules/examples/readhappy/readhappy.c: revision 1.1
Soon to be replaced with a more comprehensive set of examples.
--
A set of more comprehensive example kernel modules to replace our
previous single example.
These examples were provided by Kamil Rytarowski.
XXX These modules are built as part of a system build, but they
XXX are NOT installed in $DESTDIR.
--
Fix instructions to match reality. (I renamed the example from the
original submitter, but didn't catch all internal references.)
--
Fix up another internal reference to renamed module, and adjust some
English grammar.
--
Even though this isn't a man page, it looks like one. So sort the
SEE ALSO section accordingly.
--
Fix RCS ID.
 1.2.2.1 13-May-2015  snj file cmd_ping.c was added on branch netbsd-7 on 2015-06-03 06:51:40 +0000
 1.5 30-Apr-2020  christos remove debugging stuff accidentally committed.
 1.4 30-Apr-2020  christos New kernel example module written by Ayushi Sharma
 1.3 05-Feb-2020  pgoyette Use ENOTTY as error for an unrecognized ioctl() code, rather than
"magic number" 1.


ok kamil@
 1.2 30-Jan-2020  kamil Align major numbers in example modules with sys/conf/majors

Patch submitted by: Aditya Vardhan Padala (silv3r)
 1.1 13-May-2015  pgoyette branches: 1.1.2; 1.1.4; 1.1.20; 1.1.24; 1.1.30;
A set of more comprehensive example kernel modules to replace our
previous single example.

These examples were provided by Kamil Rytarowski.

XXX These modules are built as part of a system build, but they
XXX are NOT installed in $DESTDIR.
 1.1.30.1 29-Feb-2020  ad Sync with head.
 1.1.24.1 08-Apr-2020  martin Merge changes from current as of 20200406
 1.1.20.2 03-Dec-2017  jdolecek update from HEAD
 1.1.20.1 13-May-2015  jdolecek file ping.c was added on branch tls-maxphys on 2017-12-03 11:38:53 +0000
 1.1.4.2 06-Jun-2015  skrll Sync with HEAD
 1.1.4.1 13-May-2015  skrll file ping.c was added on branch nick-nhusb on 2015-06-06 14:40:23 +0000
 1.1.2.2 03-Jun-2015  snj Pull up following revision(s) (requested by pgoyette in ticket #752):
sys/modules/example/Makefile: file removal
sys/modules/example/example.c: file removal
sys/modules/examples/Makefile: revision 1.1
sys/modules/examples/Makefile.inc: revision 1.1
sys/modules/examples/README: revisions 1.1-1.3
sys/modules/examples/hello/Makefile: revision 1.1
sys/modules/examples/hello/hello.c: revision 1.1
sys/modules/examples/luahello/luahello.lua: revisions 1.1, 1.2
sys/modules/examples/ping/Makefile: revision 1.1
sys/modules/examples/ping/cmd_ping.c: revisions 1.1, 1.2
sys/modules/examples/ping/ping.c: revision 1.1
sys/modules/examples/ping/ping.h: revision 1.1
sys/modules/examples/properties/Makefile: revision 1.1
sys/modules/examples/properties/properties.c: revision 1.1
sys/modules/examples/readhappy/Makefile: revision 1.1
sys/modules/examples/readhappy/readhappy.c: revision 1.1
Soon to be replaced with a more comprehensive set of examples.
--
A set of more comprehensive example kernel modules to replace our
previous single example.
These examples were provided by Kamil Rytarowski.
XXX These modules are built as part of a system build, but they
XXX are NOT installed in $DESTDIR.
--
Fix instructions to match reality. (I renamed the example from the
original submitter, but didn't catch all internal references.)
--
Fix up another internal reference to renamed module, and adjust some
English grammar.
--
Even though this isn't a man page, it looks like one. So sort the
SEE ALSO section accordingly.
--
Fix RCS ID.
 1.1.2.1 13-May-2015  snj file ping.c was added on branch netbsd-7 on 2015-06-03 06:51:40 +0000
 1.1 13-May-2015  pgoyette branches: 1.1.2; 1.1.4; 1.1.20;
A set of more comprehensive example kernel modules to replace our
previous single example.

These examples were provided by Kamil Rytarowski.

XXX These modules are built as part of a system build, but they
XXX are NOT installed in $DESTDIR.
 1.1.20.2 03-Dec-2017  jdolecek update from HEAD
 1.1.20.1 13-May-2015  jdolecek file ping.h was added on branch tls-maxphys on 2017-12-03 11:38:53 +0000
 1.1.4.2 06-Jun-2015  skrll Sync with HEAD
 1.1.4.1 13-May-2015  skrll file ping.h was added on branch nick-nhusb on 2015-06-06 14:40:23 +0000
 1.1.2.2 03-Jun-2015  snj Pull up following revision(s) (requested by pgoyette in ticket #752):
sys/modules/example/Makefile: file removal
sys/modules/example/example.c: file removal
sys/modules/examples/Makefile: revision 1.1
sys/modules/examples/Makefile.inc: revision 1.1
sys/modules/examples/README: revisions 1.1-1.3
sys/modules/examples/hello/Makefile: revision 1.1
sys/modules/examples/hello/hello.c: revision 1.1
sys/modules/examples/luahello/luahello.lua: revisions 1.1, 1.2
sys/modules/examples/ping/Makefile: revision 1.1
sys/modules/examples/ping/cmd_ping.c: revisions 1.1, 1.2
sys/modules/examples/ping/ping.c: revision 1.1
sys/modules/examples/ping/ping.h: revision 1.1
sys/modules/examples/properties/Makefile: revision 1.1
sys/modules/examples/properties/properties.c: revision 1.1
sys/modules/examples/readhappy/Makefile: revision 1.1
sys/modules/examples/readhappy/readhappy.c: revision 1.1
Soon to be replaced with a more comprehensive set of examples.
--
A set of more comprehensive example kernel modules to replace our
previous single example.
These examples were provided by Kamil Rytarowski.
XXX These modules are built as part of a system build, but they
XXX are NOT installed in $DESTDIR.
--
Fix instructions to match reality. (I renamed the example from the
original submitter, but didn't catch all internal references.)
--
Fix up another internal reference to renamed module, and adjust some
English grammar.
--
Even though this isn't a man page, it looks like one. So sort the
SEE ALSO section accordingly.
--
Fix RCS ID.
 1.1.2.1 13-May-2015  snj file ping.h was added on branch netbsd-7 on 2015-06-03 06:51:40 +0000
 1.1 05-Feb-2020  kamil branches: 1.1.6;
Import new example kernel module ping_block

Subbmitted by Nisarg Joshi.
 1.1.6.2 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.1.6.1 05-Feb-2020  martin file Makefile was added on branch phil-wifi on 2020-04-13 08:05:11 +0000
 1.1 05-Feb-2020  kamil branches: 1.1.6;
Import new example kernel module ping_block

Subbmitted by Nisarg Joshi.
 1.1.6.2 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.1.6.1 05-Feb-2020  martin file cmd_ping.c was added on branch phil-wifi on 2020-04-13 08:05:11 +0000
 1.2 05-Feb-2020  pgoyette branches: 1.2.6;
Use ENOTTY as error for an unrecognized ioctl() code, rather than
"magic number" 1.


ok kamil@
 1.1 05-Feb-2020  kamil Import new example kernel module ping_block

Subbmitted by Nisarg Joshi.
 1.2.6.2 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.2.6.1 05-Feb-2020  martin file ping.c was added on branch phil-wifi on 2020-04-13 08:05:11 +0000
 1.1 05-Feb-2020  kamil branches: 1.1.6;
Import new example kernel module ping_block

Subbmitted by Nisarg Joshi.
 1.1.6.2 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.1.6.1 05-Feb-2020  martin file ping.h was added on branch phil-wifi on 2020-04-13 08:05:11 +0000
 1.1 30-Apr-2020  christos New kernel example module written by Ayushi Sharma
 1.1 30-Apr-2020  christos New kernel example module written by Ayushi Sharma
 1.4 28-Mar-2022  riastradh driver(9): devsw_detach never fails. Make it return void.

Prune a whole lotta dead branches as a result of this. (Some logic
calling this is also wrong for other reasons; devsw_detach is final
-- you should never have any reason to decide to roll it back. To be
cleaned up in subsequent commits...)

XXX kernel ABI change to devsw_detach signature requires bump
 1.3 01-May-2020  christos s/&&/&/ and also return POLLRDNORM (pointed out by joerg@)
 1.2 30-Apr-2020  mrg include sys/lwp.h and fix the build.
 1.1 30-Apr-2020  christos New kernel example module written by Ayushi Sharma
 1.1 13-May-2015  pgoyette branches: 1.1.2; 1.1.4; 1.1.20;
A set of more comprehensive example kernel modules to replace our
previous single example.

These examples were provided by Kamil Rytarowski.

XXX These modules are built as part of a system build, but they
XXX are NOT installed in $DESTDIR.
 1.1.20.2 03-Dec-2017  jdolecek update from HEAD
 1.1.20.1 13-May-2015  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:53 +0000
 1.1.4.2 06-Jun-2015  skrll Sync with HEAD
 1.1.4.1 13-May-2015  skrll file Makefile was added on branch nick-nhusb on 2015-06-06 14:40:23 +0000
 1.1.2.2 03-Jun-2015  snj Pull up following revision(s) (requested by pgoyette in ticket #752):
sys/modules/example/Makefile: file removal
sys/modules/example/example.c: file removal
sys/modules/examples/Makefile: revision 1.1
sys/modules/examples/Makefile.inc: revision 1.1
sys/modules/examples/README: revisions 1.1-1.3
sys/modules/examples/hello/Makefile: revision 1.1
sys/modules/examples/hello/hello.c: revision 1.1
sys/modules/examples/luahello/luahello.lua: revisions 1.1, 1.2
sys/modules/examples/ping/Makefile: revision 1.1
sys/modules/examples/ping/cmd_ping.c: revisions 1.1, 1.2
sys/modules/examples/ping/ping.c: revision 1.1
sys/modules/examples/ping/ping.h: revision 1.1
sys/modules/examples/properties/Makefile: revision 1.1
sys/modules/examples/properties/properties.c: revision 1.1
sys/modules/examples/readhappy/Makefile: revision 1.1
sys/modules/examples/readhappy/readhappy.c: revision 1.1
Soon to be replaced with a more comprehensive set of examples.
--
A set of more comprehensive example kernel modules to replace our
previous single example.
These examples were provided by Kamil Rytarowski.
XXX These modules are built as part of a system build, but they
XXX are NOT installed in $DESTDIR.
--
Fix instructions to match reality. (I renamed the example from the
original submitter, but didn't catch all internal references.)
--
Fix up another internal reference to renamed module, and adjust some
English grammar.
--
Even though this isn't a man page, it looks like one. So sort the
SEE ALSO section accordingly.
--
Fix RCS ID.
 1.1.2.1 13-May-2015  snj file Makefile was added on branch netbsd-7 on 2015-06-03 06:51:40 +0000
 1.1 13-May-2015  pgoyette branches: 1.1.2; 1.1.4; 1.1.20;
A set of more comprehensive example kernel modules to replace our
previous single example.

These examples were provided by Kamil Rytarowski.

XXX These modules are built as part of a system build, but they
XXX are NOT installed in $DESTDIR.
 1.1.20.2 03-Dec-2017  jdolecek update from HEAD
 1.1.20.1 13-May-2015  jdolecek file properties.c was added on branch tls-maxphys on 2017-12-03 11:38:53 +0000
 1.1.4.2 06-Jun-2015  skrll Sync with HEAD
 1.1.4.1 13-May-2015  skrll file properties.c was added on branch nick-nhusb on 2015-06-06 14:40:23 +0000
 1.1.2.2 03-Jun-2015  snj Pull up following revision(s) (requested by pgoyette in ticket #752):
sys/modules/example/Makefile: file removal
sys/modules/example/example.c: file removal
sys/modules/examples/Makefile: revision 1.1
sys/modules/examples/Makefile.inc: revision 1.1
sys/modules/examples/README: revisions 1.1-1.3
sys/modules/examples/hello/Makefile: revision 1.1
sys/modules/examples/hello/hello.c: revision 1.1
sys/modules/examples/luahello/luahello.lua: revisions 1.1, 1.2
sys/modules/examples/ping/Makefile: revision 1.1
sys/modules/examples/ping/cmd_ping.c: revisions 1.1, 1.2
sys/modules/examples/ping/ping.c: revision 1.1
sys/modules/examples/ping/ping.h: revision 1.1
sys/modules/examples/properties/Makefile: revision 1.1
sys/modules/examples/properties/properties.c: revision 1.1
sys/modules/examples/readhappy/Makefile: revision 1.1
sys/modules/examples/readhappy/readhappy.c: revision 1.1
Soon to be replaced with a more comprehensive set of examples.
--
A set of more comprehensive example kernel modules to replace our
previous single example.
These examples were provided by Kamil Rytarowski.
XXX These modules are built as part of a system build, but they
XXX are NOT installed in $DESTDIR.
--
Fix instructions to match reality. (I renamed the example from the
original submitter, but didn't catch all internal references.)
--
Fix up another internal reference to renamed module, and adjust some
English grammar.
--
Even though this isn't a man page, it looks like one. So sort the
SEE ALSO section accordingly.
--
Fix RCS ID.
 1.1.2.1 13-May-2015  snj file properties.c was added on branch netbsd-7 on 2015-06-03 06:51:40 +0000
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 13-May-2015  pgoyette branches: 1.1.2; 1.1.4; 1.1.20; 1.1.24;
A set of more comprehensive example kernel modules to replace our
previous single example.

These examples were provided by Kamil Rytarowski.

XXX These modules are built as part of a system build, but they
XXX are NOT installed in $DESTDIR.
 1.1.24.1 10-Jun-2019  christos Sync with HEAD
 1.1.20.2 03-Dec-2017  jdolecek update from HEAD
 1.1.20.1 13-May-2015  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:53 +0000
 1.1.4.2 06-Jun-2015  skrll Sync with HEAD
 1.1.4.1 13-May-2015  skrll file Makefile was added on branch nick-nhusb on 2015-06-06 14:40:24 +0000
 1.1.2.2 03-Jun-2015  snj Pull up following revision(s) (requested by pgoyette in ticket #752):
sys/modules/example/Makefile: file removal
sys/modules/example/example.c: file removal
sys/modules/examples/Makefile: revision 1.1
sys/modules/examples/Makefile.inc: revision 1.1
sys/modules/examples/README: revisions 1.1-1.3
sys/modules/examples/hello/Makefile: revision 1.1
sys/modules/examples/hello/hello.c: revision 1.1
sys/modules/examples/luahello/luahello.lua: revisions 1.1, 1.2
sys/modules/examples/ping/Makefile: revision 1.1
sys/modules/examples/ping/cmd_ping.c: revisions 1.1, 1.2
sys/modules/examples/ping/ping.c: revision 1.1
sys/modules/examples/ping/ping.h: revision 1.1
sys/modules/examples/properties/Makefile: revision 1.1
sys/modules/examples/properties/properties.c: revision 1.1
sys/modules/examples/readhappy/Makefile: revision 1.1
sys/modules/examples/readhappy/readhappy.c: revision 1.1
Soon to be replaced with a more comprehensive set of examples.
--
A set of more comprehensive example kernel modules to replace our
previous single example.
These examples were provided by Kamil Rytarowski.
XXX These modules are built as part of a system build, but they
XXX are NOT installed in $DESTDIR.
--
Fix instructions to match reality. (I renamed the example from the
original submitter, but didn't catch all internal references.)
--
Fix up another internal reference to renamed module, and adjust some
English grammar.
--
Even though this isn't a man page, it looks like one. So sort the
SEE ALSO section accordingly.
--
Fix RCS ID.
 1.1.2.1 13-May-2015  snj file Makefile was added on branch netbsd-7 on 2015-06-03 06:51:40 +0000
 1.1 13-May-2015  pgoyette branches: 1.1.2; 1.1.4; 1.1.20;
A set of more comprehensive example kernel modules to replace our
previous single example.

These examples were provided by Kamil Rytarowski.

XXX These modules are built as part of a system build, but they
XXX are NOT installed in $DESTDIR.
 1.1.20.2 03-Dec-2017  jdolecek update from HEAD
 1.1.20.1 13-May-2015  jdolecek file readhappy.c was added on branch tls-maxphys on 2017-12-03 11:38:53 +0000
 1.1.4.2 06-Jun-2015  skrll Sync with HEAD
 1.1.4.1 13-May-2015  skrll file readhappy.c was added on branch nick-nhusb on 2015-06-06 14:40:24 +0000
 1.1.2.2 03-Jun-2015  snj Pull up following revision(s) (requested by pgoyette in ticket #752):
sys/modules/example/Makefile: file removal
sys/modules/example/example.c: file removal
sys/modules/examples/Makefile: revision 1.1
sys/modules/examples/Makefile.inc: revision 1.1
sys/modules/examples/README: revisions 1.1-1.3
sys/modules/examples/hello/Makefile: revision 1.1
sys/modules/examples/hello/hello.c: revision 1.1
sys/modules/examples/luahello/luahello.lua: revisions 1.1, 1.2
sys/modules/examples/ping/Makefile: revision 1.1
sys/modules/examples/ping/cmd_ping.c: revisions 1.1, 1.2
sys/modules/examples/ping/ping.c: revision 1.1
sys/modules/examples/ping/ping.h: revision 1.1
sys/modules/examples/properties/Makefile: revision 1.1
sys/modules/examples/properties/properties.c: revision 1.1
sys/modules/examples/readhappy/Makefile: revision 1.1
sys/modules/examples/readhappy/readhappy.c: revision 1.1
Soon to be replaced with a more comprehensive set of examples.
--
A set of more comprehensive example kernel modules to replace our
previous single example.
These examples were provided by Kamil Rytarowski.
XXX These modules are built as part of a system build, but they
XXX are NOT installed in $DESTDIR.
--
Fix instructions to match reality. (I renamed the example from the
original submitter, but didn't catch all internal references.)
--
Fix up another internal reference to renamed module, and adjust some
English grammar.
--
Even though this isn't a man page, it looks like one. So sort the
SEE ALSO section accordingly.
--
Fix RCS ID.
 1.1.2.1 13-May-2015  snj file readhappy.c was added on branch netbsd-7 on 2015-06-03 06:51:40 +0000
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 20-Apr-2018  kamil branches: 1.1.2; 1.1.4;

Add new example loadable kernel module: readhappy_mpsafe

readhappy_mpsafe - demonstrates how to make a module MPSAFE

This module contains an additional helper program test_readhappy.c,
that is designed to exercise the kernel module with multiple threads.

Submitted by <Siddharth Muralee>
 1.1.4.1 10-Jun-2019  christos Sync with HEAD
 1.1.2.2 22-Apr-2018  pgoyette Sync with HEAD
 1.1.2.1 20-Apr-2018  pgoyette file Makefile was added on branch pgoyette-compat on 2018-04-22 07:20:27 +0000
 1.3 27-Jun-2025  andvar Grammar and spelling fixes, mainly in comments. A few in documentation,
logging, test description, and SCSI ASC/ASCQ assignment descriptions.
 1.2 30-Jan-2020  kamil branches: 1.2.30;
Align major numbers in example modules with sys/conf/majors

Patch submitted by: Aditya Vardhan Padala (silv3r)
 1.1 20-Apr-2018  kamil branches: 1.1.2; 1.1.4; 1.1.10;

Add new example loadable kernel module: readhappy_mpsafe

readhappy_mpsafe - demonstrates how to make a module MPSAFE

This module contains an additional helper program test_readhappy.c,
that is designed to exercise the kernel module with multiple threads.

Submitted by <Siddharth Muralee>
 1.1.10.1 29-Feb-2020  ad Sync with head.
 1.1.4.1 08-Apr-2020  martin Merge changes from current as of 20200406
 1.1.2.2 22-Apr-2018  pgoyette Sync with HEAD
 1.1.2.1 20-Apr-2018  pgoyette file readhappy_mpsafe.c was added on branch pgoyette-compat on 2018-04-22 07:20:27 +0000
 1.2.30.1 02-Aug-2025  perseant Sync with HEAD
 1.1 20-Apr-2018  kamil branches: 1.1.2;

Add new example loadable kernel module: readhappy_mpsafe

readhappy_mpsafe - demonstrates how to make a module MPSAFE

This module contains an additional helper program test_readhappy.c,
that is designed to exercise the kernel module with multiple threads.

Submitted by <Siddharth Muralee>
 1.1.2.2 22-Apr-2018  pgoyette Sync with HEAD
 1.1.2.1 20-Apr-2018  pgoyette file test_readhappy.c was added on branch pgoyette-compat on 2018-04-22 07:20:27 +0000
 1.1 13-Apr-2018  kamil branches: 1.1.2;
Add new example kernel module: sysctl

sysctl - demonstrates adding a sysctl handle dynamically.

Patch by <Siddharth Muralee>
Polishing by myself.
 1.1.2.2 16-Apr-2018  pgoyette Sync with HEAD, resolve some conflicts
 1.1.2.1 13-Apr-2018  pgoyette file Makefile was added on branch pgoyette-compat on 2018-04-16 02:00:08 +0000
 1.2 23-Mar-2021  simonb Add some \n's to the end of some printf()s.
 1.1 13-Apr-2018  kamil branches: 1.1.2; 1.1.16; 1.1.18;
Add new example kernel module: sysctl

sysctl - demonstrates adding a sysctl handle dynamically.

Patch by <Siddharth Muralee>
Polishing by myself.
 1.1.18.1 03-Apr-2021  thorpej Sync with HEAD.
 1.1.16.1 03-Apr-2021  thorpej Sync with HEAD.
 1.1.2.2 16-Apr-2018  pgoyette Sync with HEAD, resolve some conflicts
 1.1.2.1 13-Apr-2018  pgoyette file sysctl.c was added on branch pgoyette-compat on 2018-04-16 02:00:08 +0000
 1.4 20-Nov-2019  pgoyette Move all non-emulation-specific coredump code into the coredump module,
and remove all #ifdef COREDUMP conditional compilation. Now, the
coredump module is completely separated from the emulation modules, and
they can all be independently loaded and unloaded.

Welcome to 9.99.18 !
 1.3 20-Nov-2008  ad branches: 1.3.4; 1.3.6; 1.3.10; 1.3.74;
typo
 1.2 20-Nov-2008  ad exec_aout module:

- compat_exec.c belongs here, not in compat.
- Make COMPAT_NOMID work in here.
 1.1 19-Nov-2008  ad Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime
 1.3.74.1 08-Apr-2020  martin Merge changes from current as of 20200406
 1.3.10.2 04-May-2009  yamt sync with head.
 1.3.10.1 20-Nov-2008  yamt file Makefile was added on branch yamt-nfs-mp on 2009-05-04 08:14:09 +0000
 1.3.6.2 19-Jan-2009  skrll Sync with HEAD.
 1.3.6.1 20-Nov-2008  skrll file Makefile was added on branch nick-hppapmap on 2009-01-19 13:20:08 +0000
 1.3.4.2 17-Jan-2009  mjf Sync with HEAD.
 1.3.4.1 20-Nov-2008  mjf file Makefile was added on branch mjf-devfs2 on 2009-01-17 13:29:29 +0000
 1.1 19-Nov-2008  ad branches: 1.1.4; 1.1.6; 1.1.10;
Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime
 1.1.10.2 04-May-2009  yamt sync with head.
 1.1.10.1 19-Nov-2008  yamt file Makefile was added on branch yamt-nfs-mp on 2009-05-04 08:14:09 +0000
 1.1.6.2 19-Jan-2009  skrll Sync with HEAD.
 1.1.6.1 19-Nov-2008  skrll file Makefile was added on branch nick-hppapmap on 2009-01-19 13:20:08 +0000
 1.1.4.2 17-Jan-2009  mjf Sync with HEAD.
 1.1.4.1 19-Nov-2008  mjf file Makefile was added on branch mjf-devfs2 on 2009-01-17 13:29:29 +0000
 1.7 20-Oct-2025  nat New port: mac68ksf - Macintosh 68k softfloat.

This commit is all the Makefile glue for the new port which is the mac68k
port with MKSOFTFLOAT set to "yes".

As posted here:
https://mail-index.netbsd.org/port-mac68k/2025/10/14/msg001037.html
 1.6 19-Oct-2020  christos Arrange so that no options COREDUMP and no options PTRACE work together.
Thanks to Paul Goyette for testing.
 1.5 20-Nov-2019  pgoyette Move all non-emulation-specific coredump code into the coredump module,
and remove all #ifdef COREDUMP conditional compilation. Now, the
coredump module is completely separated from the emulation modules, and
they can all be independently loaded and unloaded.

Welcome to 9.99.18 !
 1.4 17-Feb-2019  rin Set WARNS=3 to appease sign-compare warnings for mips, mips64, and sparc.
 1.3 13-Oct-2010  tsutsui branches: 1.3.60;
Disable PAX_ASLR on sh3 as well. exec_elf32 module doesn't work with it
at least on dreamcast.
 1.2 17-Sep-2009  jnemeth branches: 1.2.2; 1.2.4;
Not all platforms can do PaX stuff. The list was derived in private
conversation with several developers. The change was tested on
sparc64.

NetBSD ultra.example.ca 5.99.17 NetBSD 5.99.17 (MODULAR) #0: Tue Sep 15 19:08:02 PDT 2009 jnemeth@ultra.example.ca:/usr/local/current/objdir/sys/arch/sparc64/compile/MODULAR sparc64

NAME CLASS SOURCE REFS SIZE REQUIRES
...
exec_elf64 misc filesys 0 6981 coredump
...
 1.1 19-Nov-2008  ad branches: 1.1.4; 1.1.6; 1.1.10;
Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime
 1.1.10.3 11-Mar-2010  yamt sync with head
 1.1.10.2 04-May-2009  yamt sync with head.
 1.1.10.1 19-Nov-2008  yamt file Makefile was added on branch yamt-nfs-mp on 2009-05-04 08:14:09 +0000
 1.1.6.2 19-Jan-2009  skrll Sync with HEAD.
 1.1.6.1 19-Nov-2008  skrll file Makefile was added on branch nick-hppapmap on 2009-01-19 13:20:08 +0000
 1.1.4.2 17-Jan-2009  mjf Sync with HEAD.
 1.1.4.1 19-Nov-2008  mjf file Makefile was added on branch mjf-devfs2 on 2009-01-17 13:29:29 +0000
 1.2.4.1 05-Mar-2011  rmind sync with head
 1.2.2.1 22-Oct-2010  uebayasi Sync with HEAD (-D20101022).
 1.3.60.2 08-Apr-2020  martin Merge changes from current as of 20200406
 1.3.60.1 10-Jun-2019  christos Sync with HEAD
 1.5 19-Oct-2020  christos Arrange so that no options COREDUMP and no options PTRACE work together.
Thanks to Paul Goyette for testing.
 1.4 20-Nov-2019  pgoyette Move all non-emulation-specific coredump code into the coredump module,
and remove all #ifdef COREDUMP conditional compilation. Now, the
coredump module is completely separated from the emulation modules, and
they can all be independently loaded and unloaded.

Welcome to 9.99.18 !
 1.3 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.2 17-Sep-2009  jnemeth branches: 1.2.64;
Not all platforms can do PaX stuff. The list was derived in private
conversation with several developers. The change was tested on
sparc64.

NetBSD ultra.example.ca 5.99.17 NetBSD 5.99.17 (MODULAR) #0: Tue Sep 15 19:08:02 PDT 2009 jnemeth@ultra.example.ca:/usr/local/current/objdir/sys/arch/sparc64/compile/MODULAR sparc64

NAME CLASS SOURCE REFS SIZE REQUIRES
...
exec_elf64 misc filesys 0 6981 coredump
...
 1.1 19-Nov-2008  ad branches: 1.1.4; 1.1.6; 1.1.10;
Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime
 1.1.10.3 11-Mar-2010  yamt sync with head
 1.1.10.2 04-May-2009  yamt sync with head.
 1.1.10.1 19-Nov-2008  yamt file Makefile was added on branch yamt-nfs-mp on 2009-05-04 08:14:09 +0000
 1.1.6.2 19-Jan-2009  skrll Sync with HEAD.
 1.1.6.1 19-Nov-2008  skrll file Makefile was added on branch nick-hppapmap on 2009-01-19 13:20:08 +0000
 1.1.4.2 17-Jan-2009  mjf Sync with HEAD.
 1.1.4.1 19-Nov-2008  mjf file Makefile was added on branch mjf-devfs2 on 2009-01-17 13:29:29 +0000
 1.2.64.2 08-Apr-2020  martin Merge changes from current as of 20200406
 1.2.64.1 10-Jun-2019  christos Sync with HEAD
 1.1 19-Nov-2008  ad branches: 1.1.4; 1.1.6; 1.1.10;
Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime
 1.1.10.2 04-May-2009  yamt sync with head.
 1.1.10.1 19-Nov-2008  yamt file Makefile was added on branch yamt-nfs-mp on 2009-05-04 08:14:09 +0000
 1.1.6.2 19-Jan-2009  skrll Sync with HEAD.
 1.1.6.1 19-Nov-2008  skrll file Makefile was added on branch nick-hppapmap on 2009-01-19 13:20:09 +0000
 1.1.4.2 17-Jan-2009  mjf Sync with HEAD.
 1.1.4.1 19-Nov-2008  mjf file Makefile was added on branch mjf-devfs2 on 2009-01-17 13:29:29 +0000
 1.6 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.5 12-Aug-2016  jdolecek branches: 1.5.16;
add ext2fs_xattr.c
 1.4 24-Jun-2016  christos GSoC 2016 (Hrishikesh Goyal): Htree index support from FreeBSD
 1.3 03-Jun-2016  christos ext4 extents support
 1.2 10-May-2012  riastradh branches: 1.2.2; 1.2.16;
Update ffs, ext2fs, and tmpfs module makefiles to add *_rename.c.

ok martin
 1.1 28-Jun-2008  rumble branches: 1.1.2; 1.1.4; 1.1.8; 1.1.20; 1.1.38; 1.1.42;
Add of bunch of file system modules.
 1.1.42.1 02-Jun-2012  mrg sync to latest -current.
 1.1.38.1 23-May-2012  yamt sync with head.
 1.1.20.2 04-May-2009  yamt sync with head.
 1.1.20.1 28-Jun-2008  yamt file Makefile was added on branch yamt-nfs-mp on 2009-05-04 08:14:09 +0000
 1.1.8.2 18-Sep-2008  wrstuden Sync with wrstuden-revivesa-base-2.
 1.1.8.1 28-Jun-2008  wrstuden file Makefile was added on branch wrstuden-revivesa on 2008-09-18 04:36:58 +0000
 1.1.4.2 03-Jul-2008  simonb Sync with head.
 1.1.4.1 28-Jun-2008  simonb file Makefile was added on branch simonb-wapbl on 2008-07-03 18:38:19 +0000
 1.1.2.2 29-Jun-2008  mjf Sync with HEAD.
 1.1.2.1 28-Jun-2008  mjf file Makefile was added on branch mjf-devfs2 on 2008-06-29 09:33:16 +0000
 1.2.16.2 05-Oct-2016  skrll Sync with HEAD
 1.2.16.1 09-Jul-2016  skrll Sync with HEAD
 1.2.2.1 03-Dec-2017  jdolecek update from HEAD
 1.5.16.1 10-Jun-2019  christos Sync with HEAD
 1.1 28-Jun-2008  rumble branches: 1.1.2; 1.1.4; 1.1.8; 1.1.20;
Add of bunch of file system modules.
 1.1.20.2 04-May-2009  yamt sync with head.
 1.1.20.1 28-Jun-2008  yamt file Makefile was added on branch yamt-nfs-mp on 2009-05-04 08:14:10 +0000
 1.1.8.2 18-Sep-2008  wrstuden Sync with wrstuden-revivesa-base-2.
 1.1.8.1 28-Jun-2008  wrstuden file Makefile was added on branch wrstuden-revivesa on 2008-09-18 04:36:58 +0000
 1.1.4.2 03-Jul-2008  simonb Sync with head.
 1.1.4.1 28-Jun-2008  simonb file Makefile was added on branch simonb-wapbl on 2008-07-03 18:38:19 +0000
 1.1.2.2 29-Jun-2008  mjf Sync with HEAD.
 1.1.2.1 28-Jun-2008  mjf file Makefile was added on branch mjf-devfs2 on 2008-06-29 09:33:16 +0000
 1.27 23-May-2024  pgoyette Get the case right when reverting local changes
 1.26 22-May-2024  pgoyette Remove some more accidental local changes
 1.25 20-May-2024  pgoyette Oooppss remove some local change that was accidentally committed
 1.24 03-Jun-2023  lukem bsd.own.mk: rename to CC_WNO_ADDRESS_OF_PACKED_MEMBER

Provide a single variable
CC_WNO_ADDRESS_OF_PACKED_MEMBER
with options for both clang and gcc, to replace
CLANG_NO_ADDR_OF_PACKED_MEMBER
CC_NO_ADDR_OF_PACKED_MEMBER
GCC_NO_ADDR_OF_PACKED_MEMBER

Using the convention CC_compilerflag, where compilerflag
is based on the full compiler flag name.
 1.23 29-May-2023  lukem bsd.own.mk: rename NO_ADDR_OF_PACKED_MEMBER to CC_NO_ADDR_OF_PACKED_MEMBER

Add "CC_" prefix to NO_ADDR_OF_PACKED_MEMBER.

We now have the following convention:
GCC_NO_*: Disable specific warnings from GCC.
CLANG_NO_*: Disable specific warnings from Clang.
CC_NO_*: Disable specific warnings from both Clang and GCC.

This reserves "NO_*" Makefile variables to disable other features.

Some space->tab fixes.
 1.22 09-Aug-2022  pgoyette Now that UFS_DIRHASH is default for biuilt-in file system modules, we
need to update the loadable module builds, too.
 1.21 08-Jan-2022  pgoyette Remove extra blank line
 1.20 08-Jan-2022  pgoyette Use \t for pre-comment white-space
 1.19 06-Jan-2022  pgoyette Since UFS_DIRHASH is explicitly disabled in GENERIC kernels (due to
being suspected of memory corruption), it should not be enabled in
the default module configurations either.
 1.18 18-Oct-2020  christos Provide a global no-packed-address for both gcc and clang
 1.17 18-Oct-2020  christos use the GCC_ warning variable
 1.16 18-Oct-2020  christos Avoid alignment of packed member
 1.15 16-May-2020  christos Add ACL support for FFS. From FreeBSD.
 1.14 18-Apr-2020  christos Extended attribute support for ffsv2, from FreeBSD.
 1.13 19-Aug-2019  christos branches: 1.13.6;
Enable extended attributes in modules.
 1.12 20-Jun-2019  pgoyette Split the ufs code out of the ffs module and into its own module.

Adapt chfs and ext2fs modules accordingly.
 1.11 17-Jun-2019  christos Add missing file for QUOTA
 1.10 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.9 08-May-2014  hannken branches: 1.9.28;
Add a global vnode cache:

- vcache_get() retrieves a referenced and initialised vnode / fs node pair.
- vcache_remove() removes a vnode / fs node pair from the cache.

On cache miss vcache_get() calls new vfs operation vfs_loadvnode() to
initialise a vnode / fs node pair. This call is guaranteed exclusive,
no other thread will try to load this vnode / fs node pair.

Convert ufs/ext2fs, ufs/ffs and ufs/mfs to use this interface.

Remove now unused ufs/ufs_ihash

Discussed on tech-kern.

Welcome to 6.99.41
 1.8 10-May-2012  riastradh branches: 1.8.2; 1.8.4; 1.8.12;
Update ffs, ext2fs, and tmpfs module makefiles to add *_rename.c.

ok martin
 1.7 26-May-2011  joerg branches: 1.7.4; 1.7.8;
Default to -Wno-sign-compare -Wno-pointer-sign for clang.
Push -Wno-array-bounds down to the cases that depend on it.
Selectively disable warnings for 3rd party software or non-trivial
issues to be reviewed later to get clang -Werror to build most of the
tree.
 1.6 13-Mar-2011  bouyer Fix source list for ffs module.
 1.5 06-Mar-2011  bouyer merge the bouyer-quota2 branch. This adds a new on-disk format
to store disk quota usage and limits, integrated with ffs
metadata. Usage is checked by fsck_ffs (no more quotacheck)
and is covered by the WAPBL journal. Enabled with kernel
option QUOTA2 (added where QUOTA was enabled in kernel config files),
turned on with tunefs(8) on a per-filesystem
basis. mount_mfs(8) can also turn quotas on.

See http://mail-index.netbsd.org/tech-kern/2011/02/19/msg010025.html
for details.
 1.4 03-Mar-2010  pooka branches: 1.4.2; 1.4.4; 1.4.6;
-DFFS is no longer necessary
 1.3 22-Feb-2009  ad branches: 1.3.2; 1.3.4;
PR kern/26878 FFSv2 + softdep = livelock (no free ram)
PR kern/16942 panic with softdep and quotas
PR kern/19565 panic: softdep_write_inodeblock: indirect pointer #1 mismatch
PR kern/26274 softdep panic: allocdirect_merge: ...
PR kern/26374 Long delay before non-root users can write to softdep partitions
PR kern/28621 1.6.x "vp != NULL" panic in ffs_softdep.c:4653 while unmounting a softdep (+quota) filesystem
PR kern/29513 FFS+Softdep panic with unfsck-able file-corruption
PR kern/31544 The ffs softdep code appears to fail to write dirty bits to disk
PR kern/31981 stopping scsi disk can cause panic (softdep)
PR kern/32116 kernel panic in softdep (assertion failure)
PR kern/32532 softdep_trackbufs deadlock
PR kern/37191 softdep: locking against myself
PR kern/40474 Kernel panic after remounting raid root with softdep

Retire softdep, pass 2. As discussed and later formally announced on the
mailing lists.
 1.2 13-Nov-2008  ad branches: 1.2.4;
PR kern/39263 $ufs kernel module dependency problems

Pull in the ufs stuff and enable features to make this module useful.
 1.1 28-Jun-2008  rumble branches: 1.1.2; 1.1.4; 1.1.6; 1.1.8; 1.1.10;
Add of bunch of file system modules.
 1.1.10.2 03-Mar-2009  skrll Sync with HEAD.
 1.1.10.1 19-Jan-2009  skrll Sync with HEAD.
 1.1.8.2 18-Sep-2008  wrstuden Sync with wrstuden-revivesa-base-2.
 1.1.8.1 28-Jun-2008  wrstuden file Makefile was added on branch wrstuden-revivesa on 2008-09-18 04:36:58 +0000
 1.1.6.1 13-Dec-2008  haad Update haad-dm branch to haad-dm-base2.
 1.1.4.2 03-Jul-2008  simonb Sync with head.
 1.1.4.1 28-Jun-2008  simonb file Makefile was added on branch simonb-wapbl on 2008-07-03 18:38:19 +0000
 1.1.2.3 17-Jan-2009  mjf Sync with HEAD.
 1.1.2.2 29-Jun-2008  mjf Sync with HEAD.
 1.1.2.1 28-Jun-2008  mjf file Makefile was added on branch mjf-devfs2 on 2008-06-29 09:33:16 +0000
 1.2.4.1 13-May-2009  jym Sync with HEAD.

Commit is split, to avoid a "too many arguments" protocol error.
 1.3.4.1 30-Apr-2010  uebayasi Sync with HEAD.
 1.3.2.3 11-Mar-2010  yamt sync with head
 1.3.2.2 04-May-2009  yamt sync with head.
 1.3.2.1 22-Feb-2009  yamt file Makefile was added on branch yamt-nfs-mp on 2009-05-04 08:14:10 +0000
 1.4.6.2 08-Feb-2011  bouyer Add ufs_quota?.c
 1.4.6.1 08-Feb-2011  bouyer Add QUOTA2 where QUOTA is enabled (and QUOTA2 commented out where QUOTA
is commented out)
 1.4.4.1 06-Jun-2011  jruoho Sync with HEAD.
 1.4.2.2 31-May-2011  rmind sync with head
 1.4.2.1 21-Apr-2011  rmind sync with head
 1.7.8.1 02-Jun-2012  mrg sync to latest -current.
 1.7.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.7.4.1 23-May-2012  yamt sync with head.
 1.8.12.1 10-Aug-2014  tls Rebase.
 1.8.4.1 18-May-2014  rmind sync with head
 1.8.2.1 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.9.28.3 21-Apr-2020  martin Sync with HEAD
 1.9.28.2 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.9.28.1 10-Jun-2019  christos Sync with HEAD
 1.13.6.1 20-Apr-2020  bouyer Sync with HEAD
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 24-Nov-2008  ad branches: 1.1.4; 1.1.6; 1.1.10; 1.1.74;
Rename some modules to match their vfs name.
 1.1.74.1 10-Jun-2019  christos Sync with HEAD
 1.1.10.2 04-May-2009  yamt sync with head.
 1.1.10.1 24-Nov-2008  yamt file Makefile was added on branch yamt-nfs-mp on 2009-05-04 08:14:10 +0000
 1.1.6.2 19-Jan-2009  skrll Sync with HEAD.
 1.1.6.1 24-Nov-2008  skrll file Makefile was added on branch nick-hppapmap on 2009-01-19 13:20:09 +0000
 1.1.4.2 17-Jan-2009  mjf Sync with HEAD.
 1.1.4.1 24-Nov-2008  mjf file Makefile was added on branch mjf-devfs2 on 2009-01-17 13:29:29 +0000
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 31-Jul-2011  jmcneill branches: 1.1.54;
add finsio module glue
 1.1.54.1 10-Jun-2019  christos Sync with HEAD
 1.1 31-Jul-2011  jmcneill add finsio module glue
 1.3 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.2 28-Jun-2011  ahoka branches: 1.2.54;
Refactor flash and nand driver, so we can reuse the io thread code
in the future nor driver (and any other future driver).

Also simplify some of the code in the process, eg. saner flash attachment.
 1.1 26-Feb-2011  ahoka branches: 1.1.2; 1.1.4; 1.1.8;
Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards
 1.1.8.2 06-Jun-2011  jruoho Sync with HEAD.
 1.1.8.1 26-Feb-2011  jruoho file Makefile was added on branch jruoho-x86intr on 2011-06-06 09:09:48 +0000
 1.1.4.2 05-Mar-2011  rmind sync with head
 1.1.4.1 26-Feb-2011  rmind file Makefile was added on branch rmind-uvmplock on 2011-03-05 20:55:41 +0000
 1.1.2.2 05-Mar-2011  bouyer Sync with HEAD
 1.1.2.1 26-Feb-2011  bouyer file Makefile was added on branch bouyer-quota2 on 2011-03-05 15:10:44 +0000
 1.2.54.1 10-Jun-2019  christos Sync with HEAD
 1.1 26-Feb-2011  ahoka branches: 1.1.2; 1.1.4; 1.1.8;
Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards
 1.1.8.2 06-Jun-2011  jruoho Sync with HEAD.
 1.1.8.1 26-Feb-2011  jruoho file flash.ioconf was added on branch jruoho-x86intr on 2011-06-06 09:09:48 +0000
 1.1.4.2 05-Mar-2011  rmind sync with head
 1.1.4.1 26-Feb-2011  rmind file flash.ioconf was added on branch rmind-uvmplock on 2011-03-05 20:55:41 +0000
 1.1.2.2 05-Mar-2011  bouyer Sync with HEAD
 1.1.2.1 26-Feb-2011  bouyer file flash.ioconf was added on branch bouyer-quota2 on 2011-03-05 15:10:44 +0000
 1.3 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.2 20-Aug-2015  christos branches: 1.2.18;
Add ioconf entries to the pseudo-devices.
 1.1 23-Sep-2008  hannken branches: 1.1.2; 1.1.4; 1.1.6; 1.1.18; 1.1.46; 1.1.66;
Build modular fss driver.

Reviewed by: Quentin Garnier <cube@netbsd.org>
 1.1.66.1 22-Sep-2015  skrll Sync with HEAD
 1.1.46.1 03-Dec-2017  jdolecek update from HEAD
 1.1.18.2 04-May-2009  yamt sync with head.
 1.1.18.1 23-Sep-2008  yamt file Makefile was added on branch yamt-nfs-mp on 2009-05-04 08:14:10 +0000
 1.1.6.2 19-Oct-2008  haad Sync with HEAD.
 1.1.6.1 23-Sep-2008  haad file Makefile was added on branch haad-dm on 2008-10-19 22:17:41 +0000
 1.1.4.2 10-Oct-2008  skrll Sync with HEAD.
 1.1.4.1 23-Sep-2008  skrll file Makefile was added on branch wrstuden-revivesa on 2008-10-10 22:35:43 +0000
 1.1.2.2 28-Sep-2008  mjf Sync with HEAD.
 1.1.2.1 23-Sep-2008  mjf file Makefile was added on branch mjf-devfs2 on 2008-09-28 10:40:55 +0000
 1.2.18.1 10-Jun-2019  christos Sync with HEAD
 1.1 20-Aug-2015  christos branches: 1.1.2; 1.1.18;
Add ioconf entries to the pseudo-devices.
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 20-Aug-2015  jdolecek file fss.ioconf was added on branch tls-maxphys on 2017-12-03 11:38:54 +0000
 1.1.2.2 22-Sep-2015  skrll Sync with HEAD
 1.1.2.1 20-Aug-2015  skrll file fss.ioconf was added on branch nick-nhusb on 2015-09-22 12:06:09 +0000
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 20-Feb-2011  jruoho branches: 1.1.2; 1.1.4; 1.1.8; 1.1.62;
Build fujbp(4), fujhk(4), and wmieeepc(4) as modules.
 1.1.62.1 10-Jun-2019  christos Sync with HEAD
 1.1.8.2 06-Jun-2011  jruoho Sync with HEAD.
 1.1.8.1 20-Feb-2011  jruoho file Makefile was added on branch jruoho-x86intr on 2011-06-06 09:09:48 +0000
 1.1.4.2 05-Mar-2011  rmind sync with head
 1.1.4.1 20-Feb-2011  rmind file Makefile was added on branch rmind-uvmplock on 2011-03-05 20:55:41 +0000
 1.1.2.2 05-Mar-2011  bouyer Sync with HEAD
 1.1.2.1 20-Feb-2011  bouyer file Makefile was added on branch bouyer-quota2 on 2011-03-05 15:10:44 +0000
 1.1 20-Feb-2011  jruoho branches: 1.1.2; 1.1.4; 1.1.8;
Build fujbp(4), fujhk(4), and wmieeepc(4) as modules.
 1.1.8.2 06-Jun-2011  jruoho Sync with HEAD.
 1.1.8.1 20-Feb-2011  jruoho file fujbp.ioconf was added on branch jruoho-x86intr on 2011-06-06 09:09:48 +0000
 1.1.4.2 05-Mar-2011  rmind sync with head
 1.1.4.1 20-Feb-2011  rmind file fujbp.ioconf was added on branch rmind-uvmplock on 2011-03-05 20:55:41 +0000
 1.1.2.2 05-Mar-2011  bouyer Sync with HEAD
 1.1.2.1 20-Feb-2011  bouyer file fujbp.ioconf was added on branch bouyer-quota2 on 2011-03-05 15:10:44 +0000
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 20-Feb-2011  jruoho branches: 1.1.2; 1.1.4; 1.1.8; 1.1.62;
Build fujbp(4), fujhk(4), and wmieeepc(4) as modules.
 1.1.62.1 10-Jun-2019  christos Sync with HEAD
 1.1.8.2 06-Jun-2011  jruoho Sync with HEAD.
 1.1.8.1 20-Feb-2011  jruoho file Makefile was added on branch jruoho-x86intr on 2011-06-06 09:09:48 +0000
 1.1.4.2 05-Mar-2011  rmind sync with head
 1.1.4.1 20-Feb-2011  rmind file Makefile was added on branch rmind-uvmplock on 2011-03-05 20:55:42 +0000
 1.1.2.2 05-Mar-2011  bouyer Sync with HEAD
 1.1.2.1 20-Feb-2011  bouyer file Makefile was added on branch bouyer-quota2 on 2011-03-05 15:10:44 +0000
 1.1 20-Feb-2011  jruoho branches: 1.1.2; 1.1.4; 1.1.8;
Build fujbp(4), fujhk(4), and wmieeepc(4) as modules.
 1.1.8.2 06-Jun-2011  jruoho Sync with HEAD.
 1.1.8.1 20-Feb-2011  jruoho file fujhk.ioconf was added on branch jruoho-x86intr on 2011-06-06 09:09:48 +0000
 1.1.4.2 05-Mar-2011  rmind sync with head
 1.1.4.1 20-Feb-2011  rmind file fujhk.ioconf was added on branch rmind-uvmplock on 2011-03-05 20:55:42 +0000
 1.1.2.2 05-Mar-2011  bouyer Sync with HEAD
 1.1.2.1 20-Feb-2011  bouyer file fujhk.ioconf was added on branch bouyer-quota2 on 2011-03-05 15:10:44 +0000
 1.3 03-Oct-2011  jmcneill Remove an invalid include path from CPPFLAGS
 1.2 31-Aug-2011  mbalmer Add CWARNFLAGS+= -Wno-unused for clang.
 1.1 12-Aug-2011  mbalmer gpio(4) and gpiosim(4) can now be built and used as modules. While here,
make some functions static.
 1.1 12-Aug-2011  mbalmer gpio(4) and gpiosim(4) can now be built and used as modules. While here,
make some functions static.
 1.1 02-Oct-2011  mbalmer Modules for iic(4) and gpioiic(4).
 1.1 02-Oct-2011  mbalmer Modules for iic(4) and gpioiic(4).
 1.1 19-May-2018  thorpej branches: 1.1.2;
Add an example "gpioirq" driver that demonstrates interrupts on GPIO
pins. Will be enhanced in the future to support sending events to
user space on edge-triggered interrupt events.

Based on initial work by Brad Spencer.
PR kern/51676
 1.1.2.2 21-May-2018  pgoyette Sync with HEAD
 1.1.2.1 19-May-2018  pgoyette file Makefile was added on branch pgoyette-compat on 2018-05-21 04:36:15 +0000
 1.1 19-May-2018  thorpej branches: 1.1.2;
Add an example "gpioirq" driver that demonstrates interrupts on GPIO
pins. Will be enhanced in the future to support sending events to
user space on edge-triggered interrupt events.

Based on initial work by Brad Spencer.
PR kern/51676
 1.1.2.2 21-May-2018  pgoyette Sync with HEAD
 1.1.2.1 19-May-2018  pgoyette file gpioirq.ioconf was added on branch pgoyette-compat on 2018-05-21 04:36:15 +0000
 1.1 31-Aug-2011  mbalmer gpioow(4) and onewire(4) can be build as modules. Not linked to the build.
 1.1 31-Aug-2011  mbalmer gpioow(4) and onewire(4) can be build as modules. Not linked to the build.
 1.1 20-May-2018  thorpej branches: 1.1.2;
Add a 1PPS-over-GPIO driver, originally by Brad Spencer, with changes by
me to adapt to the new GPIO interrupt interface and support a wider variety
of GPIO pin configuations.

PR kern/51676

(Oops, forgot to "cvs add" these items previously.)
 1.1.2.2 21-May-2018  pgoyette Sync with HEAD
 1.1.2.1 20-May-2018  pgoyette file Makefile was added on branch pgoyette-compat on 2018-05-21 04:36:15 +0000
 1.1 20-May-2018  thorpej branches: 1.1.2;
Add a 1PPS-over-GPIO driver, originally by Brad Spencer, with changes by
me to adapt to the new GPIO interrupt interface and support a wider variety
of GPIO pin configuations.

PR kern/51676

(Oops, forgot to "cvs add" these items previously.)
 1.1.2.2 21-May-2018  pgoyette Sync with HEAD
 1.1.2.1 20-May-2018  pgoyette file gpiopps.ioconf was added on branch pgoyette-compat on 2018-05-21 04:36:15 +0000
 1.2 20-Aug-2015  christos Add ioconf entries to the pseudo-devices.
 1.1 12-Aug-2011  mbalmer branches: 1.1.12; 1.1.30;
gpio(4) and gpiosim(4) can now be built and used as modules. While here,
make some functions static.
 1.1.30.1 22-Sep-2015  skrll Sync with HEAD
 1.1.12.1 03-Dec-2017  jdolecek update from HEAD
 1.1 20-Aug-2015  uebayasi branches: 1.1.2; 1.1.18;
ioconf glue for gpiosim module.
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 20-Aug-2015  jdolecek file gpiosim.conf was added on branch tls-maxphys on 2017-12-03 11:38:54 +0000
 1.1.2.2 22-Sep-2015  skrll Sync with HEAD
 1.1.2.1 20-Aug-2015  skrll file gpiosim.conf was added on branch nick-nhusb on 2015-09-22 12:06:09 +0000
 1.1 20-Aug-2015  uebayasi branches: 1.1.2; 1.1.18;
Now gpiosim needs this for NGPIOSIM.
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 20-Aug-2015  jdolecek file gpiosim.h was added on branch tls-maxphys on 2017-12-03 11:38:54 +0000
 1.1.2.2 22-Sep-2015  skrll Sync with HEAD
 1.1.2.1 20-Aug-2015  skrll file gpiosim.h was added on branch nick-nhusb on 2015-09-22 12:06:09 +0000
 1.8 18-Feb-2023  mrg the HDAUDIO_ENABLE_HDMI option is obsolete. don't define here..
 1.7 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.6 16-Jun-2017  pgoyette branches: 1.6.6;
For non-rump modules, enable HDMI audio device.

No impact to rump modules, and no impact to kernels which have the
hdafg driver built-in.
 1.5 19-Nov-2014  pooka branches: 1.5.2;
allow sharing Makefiles with rump kernel components
 1.4 28-Aug-2011  jmcneill branches: 1.4.12;
WARNS=3 is the default
 1.3 12-Feb-2011  jmcneill branches: 1.3.2;
build hdafg_dd.c
 1.2 12-Feb-2011  jmcneill rename hdaudio_afg.c to hdafg.c
 1.1 07-Jan-2011  jmcneill branches: 1.1.2; 1.1.4;
add hdaudio and hdafg modules
 1.1.4.1 17-Feb-2011  bouyer Sync with HEAD
 1.1.2.1 06-Jun-2011  jruoho Sync with HEAD.
 1.3.2.2 05-Mar-2011  rmind sync with head
 1.3.2.1 12-Feb-2011  rmind file Makefile was added on branch rmind-uvmplock on 2011-03-05 20:55:42 +0000
 1.4.12.1 03-Dec-2017  jdolecek update from HEAD
 1.5.2.1 28-Aug-2017  skrll Sync with HEAD
 1.6.6.1 10-Jun-2019  christos Sync with HEAD
 1.2 28-Mar-2015  jmcneill branches: 1.2.16;
Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.
 1.1 19-Nov-2014  pooka branches: 1.1.2;
allow sharing Makefiles with rump kernel components
 1.1.2.1 06-Apr-2015  skrll Sync with HEAD
 1.2.16.2 03-Dec-2017  jdolecek update from HEAD
 1.2.16.1 28-Mar-2015  jdolecek file Makefile.inc was added on branch tls-maxphys on 2017-12-03 11:38:54 +0000
 1.2 28-Mar-2015  jmcneill Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.
 1.1 07-Jan-2011  jmcneill branches: 1.1.6; 1.1.20; 1.1.38;
add hdaudio and hdafg modules
 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 07-Jan-2011  rmind file hdafg.ioconf was added on branch rmind-uvmplock on 2011-03-05 20:55:42 +0000
 1.7 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.6 28-Mar-2015  jmcneill branches: 1.6.18;
pull in Makefile.inc
 1.5 28-Mar-2015  jmcneill Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.
 1.4 19-Nov-2014  pooka branches: 1.4.2;
allow sharing Makefiles with rump kernel components
 1.3 19-Sep-2014  christos delete hdaudio_ids.
 1.2 28-Aug-2011  jmcneill branches: 1.2.12;
WARNS=3 is the default
 1.1 07-Jan-2011  jmcneill branches: 1.1.6;
add hdaudio and hdafg modules
 1.1.6.2 05-Mar-2011  rmind sync with head
 1.1.6.1 07-Jan-2011  rmind file Makefile was added on branch rmind-uvmplock on 2011-03-05 20:55:42 +0000
 1.2.12.1 03-Dec-2017  jdolecek update from HEAD
 1.4.2.1 06-Apr-2015  skrll Sync with HEAD
 1.6.18.1 10-Jun-2019  christos Sync with HEAD
 1.3 02-Jun-2015  pooka branches: 1.3.16;
Use SRCS+= instead of SRCS= in Makefile.incs to avoid assumptions of
what is being included when.
 1.2 28-Mar-2015  jmcneill Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.
 1.1 19-Nov-2014  pooka branches: 1.1.2;
allow sharing Makefiles with rump kernel components
 1.1.2.2 06-Jun-2015  skrll Sync with HEAD
 1.1.2.1 06-Apr-2015  skrll Sync with HEAD
 1.3.16.2 03-Dec-2017  jdolecek update from HEAD
 1.3.16.1 02-Jun-2015  jdolecek file Makefile.inc was added on branch tls-maxphys on 2017-12-03 11:38:54 +0000
 1.2 28-Mar-2015  jmcneill Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.
 1.1 07-Jan-2011  jmcneill branches: 1.1.6; 1.1.20; 1.1.38;
add hdaudio and hdafg modules
 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 07-Jan-2011  rmind file hdaudio.ioconf was added on branch rmind-uvmplock on 2011-03-05 20:55:42 +0000
 1.1 28-Mar-2015  jmcneill branches: 1.1.2; 1.1.18;
Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 28-Mar-2015  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:54 +0000
 1.1.2.2 06-Apr-2015  skrll Sync with HEAD
 1.1.2.1 28-Mar-2015  skrll file Makefile was added on branch nick-nhusb on 2015-04-06 15:18:21 +0000
 1.2 02-Jun-2015  pooka branches: 1.2.16;
Use SRCS+= instead of SRCS= in Makefile.incs to avoid assumptions of
what is being included when.
 1.1 28-Mar-2015  jmcneill branches: 1.1.2;
Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.
 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 28-Mar-2015  skrll file Makefile.inc was added on branch nick-nhusb on 2015-04-06 15:18:21 +0000
 1.2.16.2 03-Dec-2017  jdolecek update from HEAD
 1.2.16.1 02-Jun-2015  jdolecek file Makefile.inc was added on branch tls-maxphys on 2017-12-03 11:38:54 +0000
 1.1 28-Mar-2015  jmcneill branches: 1.1.2; 1.1.18;
Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 28-Mar-2015  jdolecek file hdaudio_pci.ioconf was added on branch tls-maxphys on 2017-12-03 11:38:54 +0000
 1.1.2.2 06-Apr-2015  skrll Sync with HEAD
 1.1.2.1 28-Mar-2015  skrll file hdaudio_pci.ioconf was added on branch nick-nhusb on 2015-04-06 15:18:21 +0000
 1.2 28-Mar-2015  jmcneill branches: 1.2.16;
Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.
 1.1 19-Sep-2014  christos branches: 1.1.2;
new module
 1.1.2.1 06-Apr-2015  skrll Sync with HEAD
 1.2.16.2 03-Dec-2017  jdolecek update from HEAD
 1.2.16.1 28-Mar-2015  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:54 +0000
 1.3 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.2 10-Aug-2014  hannken branches: 1.2.28;
Change hfs from hashlist to vcache.
- use (cnid, fork) as key.
- use pool for hfs nodes.
 1.1 28-Jun-2008  rumble branches: 1.1.2; 1.1.4; 1.1.8; 1.1.20; 1.1.48;
Add of bunch of file system modules.
 1.1.48.1 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.1.20.2 04-May-2009  yamt sync with head.
 1.1.20.1 28-Jun-2008  yamt file Makefile was added on branch yamt-nfs-mp on 2009-05-04 08:14:10 +0000
 1.1.8.2 18-Sep-2008  wrstuden Sync with wrstuden-revivesa-base-2.
 1.1.8.1 28-Jun-2008  wrstuden file Makefile was added on branch wrstuden-revivesa on 2008-09-18 04:36:58 +0000
 1.1.4.2 03-Jul-2008  simonb Sync with head.
 1.1.4.1 28-Jun-2008  simonb file Makefile was added on branch simonb-wapbl on 2008-07-03 18:38:19 +0000
 1.1.2.2 29-Jun-2008  mjf Sync with HEAD.
 1.1.2.1 28-Jun-2008  mjf file Makefile was added on branch mjf-devfs2 on 2008-06-29 09:33:16 +0000
 1.2.28.1 10-Jun-2019  christos Sync with HEAD
 1.1 03-Jan-2014  pgoyette branches: 1.1.4; 1.1.6; 1.1.10;
Add module glue for hifn(4)
 1.1.10.2 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.1.10.1 03-Jan-2014  tls file Makefile was added on branch tls-maxphys on 2014-08-20 00:04:33 +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 03-Jan-2014  yamt file Makefile was added on branch yamt-pagecache on 2014-05-22 11:41:07 +0000
 1.1.4.2 18-May-2014  rmind sync with head
 1.1.4.1 03-Jan-2014  rmind file Makefile was added on branch rmind-smpnet on 2014-05-18 17:46:11 +0000
 1.1 03-Jan-2014  pgoyette branches: 1.1.4; 1.1.6; 1.1.10;
Add module glue for hifn(4)
 1.1.10.2 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.1.10.1 03-Jan-2014  tls file hifn.ioconf was added on branch tls-maxphys on 2014-08-20 00:04:33 +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 03-Jan-2014  yamt file hifn.ioconf was added on branch yamt-pagecache on 2014-05-22 11:41:07 +0000
 1.1.4.2 18-May-2014  rmind sync with head
 1.1.4.1 03-Jan-2014  rmind file hifn.ioconf was added on branch rmind-smpnet on 2014-05-18 17:46:11 +0000
 1.4 03-Jun-2023  lukem bsd.own.mk: rename GCC_NO_* to CC_WNO_*

Rename compiler-warning-disable variables from
GCC_NO_warning
to
CC_WNO_warning
where warning is the full warning name as used by the compiler.

GCC_NO_IMPLICIT_FALLTHRU is CC_WNO_IMPLICIT_FALLTHROUGH

Using the convention CC_compilerflag, where compilerflag
is based on the full compiler flag name.
 1.3 13-Apr-2021  mrg more GCC 10 fixes.

mDNSResponder: another wrong return local address

dhcp: ignore a seemingly impossible stringop overflow

hpacel: avoid maybe uninitialised error that is wrong.

rsh: avoid impossible malloc(0)

udf: cast pointers through (uintptr_t) to fool invalid boundary checks
 1.2 17-Feb-2019  rin branches: 1.2.14;
Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 13-Jul-2011  jruoho branches: 1.1.54;
A driver for HP 3D DriverGuard; a LIS3LV02DL-based accelerometer. Tested on
HP NC4400. Like aps(4), this is commented out in the GENERIC kernels.
 1.1.54.1 10-Jun-2019  christos Sync with HEAD
 1.2.14.1 17-Apr-2021  thorpej Sync with HEAD.
 1.1 13-Jul-2011  jruoho A driver for HP 3D DriverGuard; a LIS3LV02DL-based accelerometer. Tested on
HP NC4400. Like aps(4), this is commented out in the GENERIC kernels.
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 15-Jun-2011  jruoho branches: 1.1.54;
Modularize hpet(4). Works nicely with the multiple bus locations.
 1.1.54.1 10-Jun-2019  christos Sync with HEAD
 1.1 15-Jun-2011  jruoho Modularize hpet(4). Works nicely with the multiple bus locations.
 1.2 16-Feb-2011  jruoho Convert the ioconf files to lower case for consistency. No functional change.
 1.1 26-Oct-2010  jruoho branches: 1.1.2; 1.1.4; 1.1.6;
Build asus(x) and hpqlb(4) as modules on x86.
 1.1.6.1 17-Feb-2011  bouyer Sync with HEAD
 1.1.4.1 06-Jun-2011  jruoho Sync with HEAD.
 1.1.2.2 06-Nov-2010  uebayasi Sync with HEAD.
 1.1.2.1 26-Oct-2010  uebayasi file HPQLB.ioconf was added on branch uebayasi-xip on 2010-11-06 08:08:48 +0000
 1.3 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.2 16-Feb-2011  jruoho branches: 1.2.2; 1.2.58;
Convert the ioconf files to lower case for consistency. No functional change.
 1.1 26-Oct-2010  jruoho branches: 1.1.2; 1.1.4; 1.1.6;
Build asus(x) and hpqlb(4) as modules on x86.
 1.1.6.1 17-Feb-2011  bouyer Sync with HEAD
 1.1.4.1 06-Jun-2011  jruoho Sync with HEAD.
 1.1.2.2 06-Nov-2010  uebayasi Sync with HEAD.
 1.1.2.1 26-Oct-2010  uebayasi file Makefile was added on branch uebayasi-xip on 2010-11-06 08:08:48 +0000
 1.2.58.1 10-Jun-2019  christos Sync with HEAD
 1.2.2.2 05-Mar-2011  rmind sync with head
 1.2.2.1 16-Feb-2011  rmind file Makefile was added on branch rmind-uvmplock on 2011-03-05 20:55:44 +0000
 1.1 16-Feb-2011  jruoho branches: 1.1.2; 1.1.4; 1.1.8;
Convert the ioconf files to lower case for consistency. No functional change.
 1.1.8.2 06-Jun-2011  jruoho Sync with HEAD.
 1.1.8.1 16-Feb-2011  jruoho file hpqlb.ioconf was added on branch jruoho-x86intr on 2011-06-06 09:09:48 +0000
 1.1.4.2 05-Mar-2011  rmind sync with head
 1.1.4.1 16-Feb-2011  rmind file hpqlb.ioconf was added on branch rmind-uvmplock on 2011-03-05 20:55:44 +0000
 1.1.2.2 17-Feb-2011  bouyer Sync with HEAD
 1.1.2.1 16-Feb-2011  bouyer file hpqlb.ioconf was added on branch bouyer-quota2 on 2011-02-17 12:00:48 +0000
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 18-May-2014  kardel branches: 1.1.2; 1.1.4; 1.1.8; 1.1.34;
add HYT-221/271/939 humidity/temperature I2C sensor
extend envsys(4) framework by %rH (relative humidity)
 1.1.34.1 10-Jun-2019  christos Sync with HEAD
 1.1.8.2 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.1.8.1 18-May-2014  tls file Makefile was added on branch tls-maxphys on 2014-08-20 00:04:33 +0000
 1.1.4.2 10-Aug-2014  tls Rebase.
 1.1.4.1 18-May-2014  tls file Makefile was added on branch tls-earlyentropy on 2014-08-10 06:56:10 +0000
 1.1.2.2 18-May-2014  rmind sync with head
 1.1.2.1 18-May-2014  rmind file Makefile was added on branch rmind-smpnet on 2014-05-18 17:46:11 +0000
 1.1 18-May-2014  kardel branches: 1.1.2; 1.1.4; 1.1.8;
add HYT-221/271/939 humidity/temperature I2C sensor
extend envsys(4) framework by %rH (relative humidity)
 1.1.8.2 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.1.8.1 18-May-2014  tls file hythygtemp.ioconf was added on branch tls-maxphys on 2014-08-20 00:04:33 +0000
 1.1.4.2 10-Aug-2014  tls Rebase.
 1.1.4.1 18-May-2014  tls file hythygtemp.ioconf was added on branch tls-earlyentropy on 2014-08-10 06:56:10 +0000
 1.1.2.2 18-May-2014  rmind sync with head
 1.1.2.1 18-May-2014  rmind file hythygtemp.ioconf was added on branch rmind-smpnet on 2014-05-18 17:46:11 +0000
 1.1 07-Jun-2016  pgoyette branches: 1.1.2; 1.1.18;
Create separate modules for i2c_bitbang and bpf_filter so these files
can be included in kernels which need them without also duplicating
them in other modules. Removes the duplicate symbols I found which
prevented loading i2c and bpf modules after having fixed PR 45125.
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 07-Jun-2016  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:54 +0000
 1.1.2.2 09-Jul-2016  skrll Sync with HEAD
 1.1.2.1 07-Jun-2016  skrll file Makefile was added on branch nick-nhusb on 2016-07-09 20:25:20 +0000
 1.1 01-Apr-2022  pgoyette Split i2c_subr.c into a separate module rather than including it in
the iic module. There are valid configurations where i2c_subr code
can be both built-in and part of a loaded module (eg, piixpm is in
the kernel, but the iic module is loaded later). This causes the
in-kernel linker to detect a duplicate symbol.
 1.1 07-Mar-2015  jmcneill branches: 1.1.2; 1.1.4; 1.1.20;
i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the
dependencies in files.i2c and switch device drivers to depend on "i2cexec"
module instead.

A kernel with a USB stack and no I2C controller / bus attachment would spit
out a bunch of "WARNING: module error: can't find builtin dependency `iic'"
messages at boot. This change solves that problem.
 1.1.20.2 03-Dec-2017  jdolecek update from HEAD
 1.1.20.1 07-Mar-2015  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:54 +0000
 1.1.4.2 06-Apr-2015  skrll Sync with HEAD
 1.1.4.1 07-Mar-2015  skrll file Makefile was added on branch nick-nhusb on 2015-04-06 15:18:22 +0000
 1.1.2.2 21-Mar-2015  snj Pull up following revision(s) (requested by jmcneill in ticket #634):
distrib/sets/lists/modules/md.amd64: revision 1.51
distrib/sets/lists/modules/md.evbppc.powerpc: revision 1.5
distrib/sets/lists/modules/md.i386: revision 1.55
distrib/sets/lists/modules/mi: revision 1.71
sys/dev/i2c/au8522.c: revision 1.7
sys/dev/i2c/cx24227.c: revision 1.7
sys/dev/i2c/dbcool.c: revision 1.42
sys/dev/i2c/hytp14.c: revision 1.3
sys/dev/i2c/i2c_exec.c: revision 1.10
sys/dev/i2c/lg3303.c: revision 1.9
sys/dev/i2c/mt2131.c: revision 1.5
sys/dev/i2c/nxt2k.c: revision 1.4
sys/dev/i2c/sdtemp.c: revision 1.24
sys/dev/i2c/spdmem_i2c.c: revision 1.10
sys/dev/i2c/tvpll.c: revision 1.6
sys/dev/i2c/xc3028.c: revision 1.7
sys/dev/i2c/xc5k.c: revision 1.6
sys/dev/i2c/zl10353.c: revision 1.4
sys/modules/Makefile: revision 1.143
sys/modules/i2cexec/Makefile: revision 1.1
i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the
dependencies in files.i2c and switch device drivers to depend on "i2cexec"
module instead.
A kernel with a USB stack and no I2C controller / bus attachment would spit
out a bunch of "WARNING: module error: can't find builtin dependency `iic'"
messages at boot. This change solves that problem.
 1.1.2.1 07-Mar-2015  snj file Makefile was added on branch netbsd-7 on 2015-03-21 17:11:35 +0000
 1.7 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.6 28-Aug-2011  jmcneill branches: 1.6.54;
set default WARNS for modules to 3 -- the only one that needs < 3 now is pf
 1.5 22-Jun-2009  mrg add a couple of missing files. pointed out by tron.
 1.4 22-Jun-2009  tron Fix modules build after update of drm(4).
 1.3 08-Jul-2008  jmmv branches: 1.3.2; 1.3.6; 1.3.10; 1.3.14; 1.3.16;
Fix build of the i915drm and radeondrm modules after the #include changes
from <dev/drm/drm{,P}.h> to "drm{,P}.h" by mrg@.
 1.2 19-May-2008  tnn branches: 1.2.2; 1.2.4; 1.2.6; 1.2.8;
Fix build.
 1.1 18-May-2008  jmcneill Add Makefiles for building drmbase and i915drm as kmods.
 1.2.8.1 19-Oct-2008  haad Sync with HEAD.
 1.2.6.1 18-Jul-2008  simonb Sync with head.
 1.2.4.2 04-Jun-2008  yamt sync with head
 1.2.4.1 19-May-2008  yamt file Makefile was added on branch yamt-pf42 on 2008-06-04 02:05:47 +0000
 1.2.2.3 28-Sep-2008  mjf Sync with HEAD.
 1.2.2.2 02-Jun-2008  mjf Sync with HEAD.
 1.2.2.1 19-May-2008  mjf file Makefile was added on branch mjf-devfs2 on 2008-06-02 13:24:21 +0000
 1.3.16.1 21-Apr-2010  matt sync to netbsd-5
 1.3.14.3 18-Jul-2009  yamt sync with head.
 1.3.14.2 04-May-2009  yamt sync with head.
 1.3.14.1 08-Jul-2008  yamt file Makefile was added on branch yamt-nfs-mp on 2009-05-04 08:14:10 +0000
 1.3.10.1 23-Jul-2009  jym Sync with HEAD.
 1.3.6.2 23-Jun-2009  snj Pull up following revision(s) (requested by mrg in ticket #829):
sys/modules/i915drm/Makefile: revision 1.5
sys/modules/radeondrm/Makefile: revision 1.7
add a couple of missing files. pointed out by tron.
 1.3.6.1 23-Jun-2009  snj Pull up following revision(s) (requested by mrg in ticket #829):
sys/modules/drm/Makefile: revision 1.3
sys/modules/i915drm/Makefile: revision 1.4
sys/modules/radeondrm/Makefile: revision 1.6
Fix modules build after update of drm(4).
 1.3.2.2 24-Sep-2008  wrstuden Sync with wrstuden-revivesa-base-2
 1.3.2.1 08-Jul-2008  wrstuden file Makefile was added on branch wrstuden-revivesa on 2008-09-24 05:28:33 +0000
 1.6.54.1 10-Jun-2019  christos Sync with HEAD
 1.1 28-Aug-2011  jmcneill set default WARNS for modules to 3 -- the only one that needs < 3 now is pf
 1.24 19-Sep-2025  mrg avoid various seemingly bogus warnings with GCC 14.

i couldn't see any real case for any of these issues. it seems like
the "maybe uninit" checker has gotten worse.

additionally, the "dangling pointer" checker also failing.
 1.23 04-Sep-2023  mrg apply some warning disables for GCC 12.

*possibly* the one for intel_dp.c is a real bug but it seems very
difficult to be sure (i can't seem to convince myself either way.)
 1.22 03-Jun-2023  lukem adapt to ${CC_WNO_MAYBE_UNINITIALIZED}

Use ${CC_WNO_MAYBE_UNINITIALIZED} instead of
the older style more complex expressions.

Remove workarounds if they were for a specific
version of gcc < 10.
 1.21 03-Jun-2023  lukem bsd.own.mk: rename GCC_NO_* to CC_WNO_*

Rename compiler-warning-disable variables from
GCC_NO_warning
to
CC_WNO_warning
where warning is the full warning name as used by the compiler.

GCC_NO_IMPLICIT_FALLTHRU is CC_WNO_IMPLICIT_FALLTHROUGH

Using the convention CC_compilerflag, where compilerflag
is based on the full compiler flag name.
 1.20 17-Jul-2022  riastradh drm: Dust off module build a little.
 1.19 19-Dec-2021  riastradh Suppress some harmless clang warnings.
 1.18 03-Jun-2021  nia build the drmkms modules with -fwrapv too
 1.17 13-Apr-2021  mrg branches: 1.17.2; 1.17.6;
apply some -Wno- to ignore several new warnings with GCC 10.


ntp: ignore truncation beyond api sizes, and ignore wrongly
guessed underflow

tmux: ignore maybe uninitialised warning for impossible case

libbfd: signed/unsigned variables assigned in the same statement

dri/gallium: -Wno-builtin-declaration-mismatch for u_atomic.c as
it implements backend functions with different in-C-machine but
same-in-real-machine types

libXfont/libXfont2: signed/unsigned variables assigned in the same
statement

i915drm: ignore impossible maybe uninitialised warnings

sysinst: ignore an invalid string truncation issue
 1.16 18-Oct-2020  christos branches: 1.16.4;
Provide a global no-packed-address for both gcc and clang
 1.15 14-Feb-2020  riastradh Carry new CWARNFLAGS over to module reachover makefiles.

Forgot these modules existed!
 1.14 29-Sep-2019  mrg branches: 1.14.2;
convert HAVE_GCC == 7 to HAVE_GCC >= 7.
 1.13 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.12 04-Feb-2019  mrg add -Wno-error=int-in-bool-context or -Wno-error=implicit-fallthrough
for various drm files that would be best ignored or upstream fixed.
(could fix savagedrm, no one upstream is that any more.)
 1.11 28-Aug-2018  riastradh Remove some superfluous vestigial `-I.'.
 1.10 28-Aug-2018  riastradh Rework PCI and AGP conditionalization.

- Push drm_pci_set_unique into driver callback.
- Eliminate drm_pci_set_unique_hook.
- Gather all drm_agp_* functions into struct drm_agp_hooks.
- Replace the nonsensical old atomic garbage by serious locking.
- Make drm_agpsupport.c its own module.
- Eliminate NDRMKMS_PCI.
- Use NAGP from "agp.h" only in drm_module.c for horrible hack.
=> See comment in file for rationale.
- Always define CONFIG_PCI=1 and CONFIG_AGP=1.
- Always go through the drm_agp_* function hooks.
- Ifdef out nouveau agp stuff that doesn't go through drm_agp_*
for reasons that I'm too frustrated to figure out tonight.
- pci_iomap no longer automagically does agp_i810_borrow.
=> Use drm_agp_borrow instead.
 1.9 27-Aug-2018  riastradh Make i915drmkms.kmod build again.
 1.8 21-Aug-2015  christos branches: 1.8.16; 1.8.18;
consistency with: src/sys/external/bsd/drm2/i915drm/files.i915drmkms
so that we can build again
 1.7 13-Nov-2014  joerg branches: 1.7.2;
Adjust flags to allow building with clang.
 1.6 12-Nov-2014  christos turn on dynamic ldscript creation to handle link set symbol definitions
used in the automatic sysctl creation.
 1.5 11-Nov-2014  nonaka fix build failure.

> /tmp/bracket/build/2014.11.10.22.43.46-i386/src/sys/external/bsd/drm2/include/linux/pci.h:36:20: fatal error: acpica.h: No such file or directory
 1.4 24-Jul-2014  riastradh branches: 1.4.2; 1.4.4;
Rework Intel framebuffer attachment.

Turns out genfb_softc must be at the start of its own device_private,
so we can't have it in the middle of a structure, and certainly can't
have potentially multiple genfbs per graphics device. Failing to do
this is why entering ddb didn't work with an i915drmkms console.

Instead of putting a genfb_softc into each drm_fb_helper, put a
device_t into each drm_fb_helper and create a new intelfb(4) device
for each Intel framebuffer. This will be more flexible, too, in case
we want accelerated framebuffers later on. (XXX Need to adapt the
radeon code, which I'm disabling until that happens to avoid breaking
the build.)

While here, defer disabling VGA, vga_cndetach, and genfb_attach until
we're actually ready to do them all together along with the mode
switch. This should reduce the amount of time during which the
screen is blanked, in case it hangs.
 1.3 16-Jul-2014  riastradh Make it build and boot on my test machines.

Screen blanks on boot on the Ivy Bridge system with

DRM error in cpt_serr_int_handler: PCH transcoder A FIFO underrun

But after that everything is OK. Appears to be an upstream problem.
To investigate...

I think there's a cache flushing issue somewhere -- there are little
display artefacts on my T60.
 1.2 18-Mar-2014  riastradh branches: 1.2.2; 1.2.4; 1.2.6;
Merge riastradh-drm2 to HEAD.
 1.1 04-Mar-2014  riastradh branches: 1.1.2;
file Makefile was initially added on branch riastradh-drm2.
 1.1.2.1 04-Mar-2014  riastradh Rework drm2 configuration and modularization.

- Split drm2.kmod into drmkms_linux, drmkms, drmkms_pci.
- Split up drmkms-related files.* similarly.
- Make drm_agp_* routines hooks that the drmkms_pci module installs.
- Reuse drm device major 180 for (old) drm and drmkms.

Now old drm and new drmkms can coexist happily in the same tree, with
or without PCI, and require no changes to userland.
 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 18-Mar-2014  yamt file Makefile was added on branch yamt-pagecache on 2014-05-22 11:41:07 +0000
 1.2.4.2 18-May-2014  rmind sync with head
 1.2.4.1 18-Mar-2014  rmind file Makefile was added on branch rmind-smpnet on 2014-05-18 17:46:11 +0000
 1.2.2.1 10-Aug-2014  tls Rebase.
 1.4.4.3 03-Dec-2017  jdolecek update from HEAD
 1.4.4.2 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.4.4.1 24-Jul-2014  tls file Makefile was added on branch tls-maxphys on 2014-08-20 00:04:33 +0000
 1.4.2.2 05-Apr-2017  snj Pull up following revision(s) (requested by skrll in ticket #1395):
share/man/man4/axe.4: netbsd-7-nhusb
share/man/man4/axen.4: netbsd-7-nhusb
share/man/man4/cdce.4: netbsd-7-nhusb
share/man/man4/uaudio.4: netbsd-7-nhusb
share/man/man4/ucom.4: netbsd-7-nhusb
share/man/man4/uep.4: netbsd-7-nhusb
share/man/man4/urtw.4: netbsd-7-nhusb
share/man/man4/usb.4: netbsd-7-nhusb
share/man/man4/uyap.4: netbsd-7-nhusb
share/man/man4/xhci.4: netbsd-7-nhusb
share/man/man9/usbdi.9: netbsd-7-nhusb
sys/arch/amd64/conf/ALL: netbsd-7-nhusb
sys/arch/amd64/conf/GENERIC: netbsd-7-nhusb
sys/arch/amiga/dev/slhci_zbus.c: netbsd-7-nhusb
sys/arch/arm/allwinner/awin_otg.c: netbsd-7-nhusb
sys/arch/arm/allwinner/awin_usb.c: netbsd-7-nhusb
sys/arch/arm/amlogic/amlogic_dwctwo.c: netbsd-7-nhusb
sys/arch/arm/at91/at91ohci.c: netbsd-7-nhusb
sys/arch/arm/broadcom/bcm2835_dwctwo.c: netbsd-7-nhusb
sys/arch/arm/broadcom/bcm53xx_usb.c: netbsd-7-nhusb
sys/arch/arm/ep93xx/epohci.c: netbsd-7-nhusb
sys/arch/arm/gemini/obio_ehci.c: netbsd-7-nhusb
sys/arch/arm/imx/files.imx23: netbsd-7-nhusb
sys/arch/arm/imx/imxusb.c: netbsd-7-nhusb
sys/arch/arm/imx/imxusbreg.h: netbsd-7-nhusb
sys/arch/arm/omap/obio_ohci.c: netbsd-7-nhusb
sys/arch/arm/omap/omap3_ehci.c: netbsd-7-nhusb
sys/arch/arm/omap/omapl1x_ohci.c: netbsd-7-nhusb
sys/arch/arm/omap/tiotg.c: netbsd-7-nhusb
sys/arch/arm/s3c2xx0/ohci_s3c24x0.c: netbsd-7-nhusb
sys/arch/arm/samsung/exynos_usb.c: netbsd-7-nhusb
sys/arch/arm/xscale/pxa2x0_ohci.c: netbsd-7-nhusb
sys/arch/arm/zynq/zynq_usb.c: netbsd-7-nhusb
sys/arch/hpcarm/dev/nbp_slhci.c: netbsd-7-nhusb
sys/arch/hpcmips/dev/plumohci.c: netbsd-7-nhusb
sys/arch/i386/conf/ALL: netbsd-7-nhusb
sys/arch/i386/conf/GENERIC: netbsd-7-nhusb
sys/arch/i386/pci/gcscehci.c: netbsd-7-nhusb
sys/arch/luna68k/conf/GENERIC: netbsd-7-nhusb
sys/arch/mips/adm5120/dev/ahci.c: netbsd-7-nhusb
sys/arch/mips/adm5120/dev/ahcivar.h: netbsd-7-nhusb
sys/arch/mips/alchemy/dev/ohci_aubus.c: netbsd-7-nhusb
sys/arch/mips/atheros/dev/ehci_arbus.c: netbsd-7-nhusb
sys/arch/mips/atheros/dev/ohci_arbus.c: netbsd-7-nhusb
sys/arch/mips/conf/files.adm5120: netbsd-7-nhusb
sys/arch/mips/ralink/ralink_ehci.c: netbsd-7-nhusb
sys/arch/mips/ralink/ralink_ohci.c: netbsd-7-nhusb
sys/arch/mips/rmi/rmixl_ehci.c: netbsd-7-nhusb
sys/arch/mips/rmi/rmixl_ohci.c: netbsd-7-nhusb
sys/arch/playstation2/dev/ohci_sbus.c: netbsd-7-nhusb
sys/arch/powerpc/booke/dev/pq3ehci.c: netbsd-7-nhusb
sys/arch/powerpc/ibm4xx/dev/dwctwo_plb.c: netbsd-7-nhusb
sys/arch/x68k/dev/slhci_intio.c: netbsd-7-nhusb
sys/conf/files: netbsd-7-nhusb
sys/dev/cardbus/ehci_cardbus.c: netbsd-7-nhusb
sys/dev/cardbus/ohci_cardbus.c: netbsd-7-nhusb
sys/dev/cardbus/uhci_cardbus.c: netbsd-7-nhusb
sys/dev/ic/sl811hs.c: netbsd-7-nhusb
sys/dev/ic/sl811hsvar.h: netbsd-7-nhusb
sys/dev/isa/slhci_isa.c: netbsd-7-nhusb
sys/dev/marvell/ehci_mv.c: netbsd-7-nhusb
sys/dev/pci/ehci_pci.c: netbsd-7-nhusb
sys/dev/pci/ohci_pci.c: netbsd-7-nhusb
sys/dev/pci/uhci_pci.c: netbsd-7-nhusb
sys/dev/pci/xhci_pci.c: netbsd-7-nhusb
sys/dev/pcmcia/slhci_pcmcia.c: netbsd-7-nhusb
sys/dev/usb/Makefile.usbdevs: netbsd-7-nhusb
sys/dev/usb/TODO: netbsd-7-nhusb
sys/dev/usb/TODO.usbmp: netbsd-7-nhusb
sys/dev/usb/aubtfwl.c: netbsd-7-nhusb
sys/dev/usb/auvitek.c: netbsd-7-nhusb
sys/dev/usb/auvitek_audio.c: netbsd-7-nhusb
sys/dev/usb/auvitek_dtv.c: netbsd-7-nhusb
sys/dev/usb/auvitek_i2c.c: netbsd-7-nhusb
sys/dev/usb/auvitek_video.c: netbsd-7-nhusb
sys/dev/usb/auvitekvar.h: netbsd-7-nhusb
sys/dev/usb/ehci.c: netbsd-7-nhusb
sys/dev/usb/ehcireg.h: netbsd-7-nhusb
sys/dev/usb/ehcivar.h: netbsd-7-nhusb
sys/dev/usb/emdtv.c: netbsd-7-nhusb
sys/dev/usb/emdtv_dtv.c: netbsd-7-nhusb
sys/dev/usb/emdtv_ir.c: netbsd-7-nhusb
sys/dev/usb/emdtvvar.h: netbsd-7-nhusb
sys/dev/usb/ezload.c: netbsd-7-nhusb
sys/dev/usb/ezload.h: netbsd-7-nhusb
sys/dev/usb/files.usb: netbsd-7-nhusb
sys/dev/usb/hid.c: netbsd-7-nhusb
sys/dev/usb/hid.h: netbsd-7-nhusb
sys/dev/usb/if_athn_usb.c: netbsd-7-nhusb
sys/dev/usb/if_athn_usb.h: netbsd-7-nhusb
sys/dev/usb/if_atu.c: netbsd-7-nhusb
sys/dev/usb/if_atureg.h: netbsd-7-nhusb
sys/dev/usb/if_aue.c: netbsd-7-nhusb
sys/dev/usb/if_auereg.h: netbsd-7-nhusb
sys/dev/usb/if_axe.c: netbsd-7-nhusb
sys/dev/usb/if_axen.c: netbsd-7-nhusb
sys/dev/usb/if_axenreg.h: netbsd-7-nhusb
sys/dev/usb/if_axereg.h: netbsd-7-nhusb
sys/dev/usb/if_cdce.c: netbsd-7-nhusb
sys/dev/usb/if_cdcereg.h: netbsd-7-nhusb
sys/dev/usb/if_cue.c: netbsd-7-nhusb
sys/dev/usb/if_cuereg.h: netbsd-7-nhusb
sys/dev/usb/if_kue.c: netbsd-7-nhusb
sys/dev/usb/if_kuereg.h: netbsd-7-nhusb
sys/dev/usb/if_otus.c: netbsd-7-nhusb
sys/dev/usb/if_otusvar.h: netbsd-7-nhusb
sys/dev/usb/if_rum.c: netbsd-7-nhusb
sys/dev/usb/if_rumreg.h: netbsd-7-nhusb
sys/dev/usb/if_rumvar.h: netbsd-7-nhusb
sys/dev/usb/if_run.c: netbsd-7-nhusb
sys/dev/usb/if_runvar.h: netbsd-7-nhusb
sys/dev/usb/if_smsc.c: netbsd-7-nhusb
sys/dev/usb/if_smscreg.h: netbsd-7-nhusb
sys/dev/usb/if_smscvar.h: netbsd-7-nhusb
sys/dev/usb/if_udav.c: netbsd-7-nhusb
sys/dev/usb/if_udavreg.h: netbsd-7-nhusb
sys/dev/usb/if_upgt.c: netbsd-7-nhusb
sys/dev/usb/if_upgtvar.h: netbsd-7-nhusb
sys/dev/usb/if_upl.c: netbsd-7-nhusb
sys/dev/usb/if_ural.c: netbsd-7-nhusb
sys/dev/usb/if_uralreg.h: netbsd-7-nhusb
sys/dev/usb/if_uralvar.h: netbsd-7-nhusb
sys/dev/usb/if_url.c: netbsd-7-nhusb
sys/dev/usb/if_urlreg.h: netbsd-7-nhusb
sys/dev/usb/if_urndis.c: netbsd-7-nhusb
sys/dev/usb/if_urndisreg.h: netbsd-7-nhusb
sys/dev/usb/if_urtw.c: netbsd-7-nhusb
sys/dev/usb/if_urtwn.c: netbsd-7-nhusb
sys/dev/usb/if_urtwn_data.h: netbsd-7-nhusb
sys/dev/usb/if_urtwnreg.h: netbsd-7-nhusb
sys/dev/usb/if_urtwnvar.h: netbsd-7-nhusb
sys/dev/usb/if_urtwreg.h: netbsd-7-nhusb
sys/dev/usb/if_zyd.c: netbsd-7-nhusb
sys/dev/usb/if_zydreg.h: netbsd-7-nhusb
sys/dev/usb/irmce.c: netbsd-7-nhusb
sys/dev/usb/moscom.c: netbsd-7-nhusb
sys/dev/usb/motg.c: netbsd-7-nhusb
sys/dev/usb/motgvar.h: netbsd-7-nhusb
sys/dev/usb/ohci.c: netbsd-7-nhusb
sys/dev/usb/ohcireg.h: netbsd-7-nhusb
sys/dev/usb/ohcivar.h: netbsd-7-nhusb
sys/dev/usb/pseye.c: netbsd-7-nhusb
sys/dev/usb/slurm.c: netbsd-7-nhusb
sys/dev/usb/stuirda.c: netbsd-7-nhusb
sys/dev/usb/u3g.c: netbsd-7-nhusb
sys/dev/usb/uark.c: netbsd-7-nhusb
sys/dev/usb/uatp.c: netbsd-7-nhusb
sys/dev/usb/uaudio.c: netbsd-7-nhusb
sys/dev/usb/uberry.c: netbsd-7-nhusb
sys/dev/usb/ubsa.c: netbsd-7-nhusb
sys/dev/usb/ubsa_common.c: netbsd-7-nhusb
sys/dev/usb/ubsavar.h: netbsd-7-nhusb
sys/dev/usb/ubt.c: netbsd-7-nhusb
sys/dev/usb/uchcom.c: netbsd-7-nhusb
sys/dev/usb/ucom.c: netbsd-7-nhusb
sys/dev/usb/ucomvar.h: netbsd-7-nhusb
sys/dev/usb/ucycom.c: netbsd-7-nhusb
sys/dev/usb/udl.c: netbsd-7-nhusb
sys/dev/usb/udl.h: netbsd-7-nhusb
sys/dev/usb/udsbr.c: netbsd-7-nhusb
sys/dev/usb/udsir.c: netbsd-7-nhusb
sys/dev/usb/uep.c: netbsd-7-nhusb
sys/dev/usb/uftdi.c: netbsd-7-nhusb
sys/dev/usb/uftdireg.h: netbsd-7-nhusb
sys/dev/usb/ugen.c: netbsd-7-nhusb
sys/dev/usb/ugensa.c: netbsd-7-nhusb
sys/dev/usb/uhci.c: netbsd-7-nhusb
sys/dev/usb/uhcireg.h: netbsd-7-nhusb
sys/dev/usb/uhcivar.h: netbsd-7-nhusb
sys/dev/usb/uhid.c: netbsd-7-nhusb
sys/dev/usb/uhidev.c: netbsd-7-nhusb
sys/dev/usb/uhidev.h: netbsd-7-nhusb
sys/dev/usb/uhmodem.c: netbsd-7-nhusb
sys/dev/usb/uhso.c: netbsd-7-nhusb
sys/dev/usb/uhub.c: netbsd-7-nhusb
sys/dev/usb/uipad.c: netbsd-7-nhusb
sys/dev/usb/uipaq.c: netbsd-7-nhusb
sys/dev/usb/uirda.c: netbsd-7-nhusb
sys/dev/usb/uirdavar.h: netbsd-7-nhusb
sys/dev/usb/ukbd.c: netbsd-7-nhusb
sys/dev/usb/ukbdmap.c: netbsd-7-nhusb
sys/dev/usb/ukyopon.c: netbsd-7-nhusb
sys/dev/usb/ukyopon.h: netbsd-7-nhusb
sys/dev/usb/ulpt.c: netbsd-7-nhusb
sys/dev/usb/umass.c: netbsd-7-nhusb
sys/dev/usb/umass_isdata.c: netbsd-7-nhusb
sys/dev/usb/umass_isdata.h: netbsd-7-nhusb
sys/dev/usb/umass_quirks.c: netbsd-7-nhusb
sys/dev/usb/umass_quirks.h: netbsd-7-nhusb
sys/dev/usb/umass_scsipi.c: netbsd-7-nhusb
sys/dev/usb/umass_scsipi.h: netbsd-7-nhusb
sys/dev/usb/umassvar.h: netbsd-7-nhusb
sys/dev/usb/umcs.c: netbsd-7-nhusb
sys/dev/usb/umct.c: netbsd-7-nhusb
sys/dev/usb/umidi.c: netbsd-7-nhusb
sys/dev/usb/umidi_quirks.c: netbsd-7-nhusb
sys/dev/usb/umidi_quirks.h: netbsd-7-nhusb
sys/dev/usb/umodem.c: netbsd-7-nhusb
sys/dev/usb/umodem_common.c: netbsd-7-nhusb
sys/dev/usb/umodemvar.h: netbsd-7-nhusb
sys/dev/usb/ums.c: netbsd-7-nhusb
sys/dev/usb/uplcom.c: netbsd-7-nhusb
sys/dev/usb/urio.c: netbsd-7-nhusb
sys/dev/usb/urio.h: netbsd-7-nhusb
sys/dev/usb/usb.c: netbsd-7-nhusb
sys/dev/usb/usb.h: netbsd-7-nhusb
sys/dev/usb/usb_mem.c: netbsd-7-nhusb
sys/dev/usb/usb_mem.h: netbsd-7-nhusb
sys/dev/usb/usb_quirks.c: netbsd-7-nhusb
sys/dev/usb/usb_quirks.h: netbsd-7-nhusb
sys/dev/usb/usb_subr.c: netbsd-7-nhusb
sys/dev/usb/usbdevices.config: netbsd-7-nhusb
sys/dev/usb/usbdevs: netbsd-7-nhusb
sys/dev/usb/usbdevs.h: netbsd-7-nhusb
sys/dev/usb/usbdevs_data.h: netbsd-7-nhusb
sys/dev/usb/usbdi.c: netbsd-7-nhusb
sys/dev/usb/usbdi.h: netbsd-7-nhusb
sys/dev/usb/usbdi_util.c: netbsd-7-nhusb
sys/dev/usb/usbdi_util.h: netbsd-7-nhusb
sys/dev/usb/usbdivar.h: netbsd-7-nhusb
sys/dev/usb/usbhid.h: netbsd-7-nhusb
sys/dev/usb/usbhist.h: netbsd-7-nhusb
sys/dev/usb/usbroothub.c: netbsd-7-nhusb
sys/dev/usb/usbroothub.h: netbsd-7-nhusb
sys/dev/usb/usbroothub_subr.c: delete
sys/dev/usb/usbroothub_subr.h: delete
sys/dev/usb/uscanner.c: netbsd-7-nhusb
sys/dev/usb/uslsa.c: netbsd-7-nhusb
sys/dev/usb/usscanner.c: netbsd-7-nhusb
sys/dev/usb/ustir.c: netbsd-7-nhusb
sys/dev/usb/uthum.c: netbsd-7-nhusb
sys/dev/usb/utoppy.c: netbsd-7-nhusb
sys/dev/usb/uts.c: netbsd-7-nhusb
sys/dev/usb/uvideo.c: netbsd-7-nhusb
sys/dev/usb/uvisor.c: netbsd-7-nhusb
sys/dev/usb/uvscom.c: netbsd-7-nhusb
sys/dev/usb/uyap.c: netbsd-7-nhusb
sys/dev/usb/uyap_firmware.h: netbsd-7-nhusb
sys/dev/usb/uyurex.c: netbsd-7-nhusb
sys/dev/usb/x1input_rdesc.h: netbsd-7-nhusb
sys/dev/usb/xhci.c: netbsd-7-nhusb
sys/dev/usb/xhcireg.h: netbsd-7-nhusb
sys/dev/usb/xhcivar.h: netbsd-7-nhusb
sys/dev/usb/xinput_rdesc.h: netbsd-7-nhusb
sys/external/bsd/common/conf/files.linux: netbsd-7-nhusb
sys/external/bsd/common/include/linux/err.h: netbsd-7-nhusb
sys/external/bsd/common/include/linux/kernel.h: netbsd-7-nhusb
sys/external/bsd/common/include/linux/workqueue.h: netbsd-7-nhusb
sys/external/bsd/common/linux/linux_work.c: netbsd-7-nhusb
sys/external/bsd/drm2/dist/drm/radeon/atombios_encoders.c: netbsd-7-nhusb
sys/external/bsd/drm2/dist/drm/radeon/radeon_legacy_encoders.c: netbsd-7-nhusb
sys/external/bsd/drm2/drm/files.drmkms: netbsd-7-nhusb
sys/external/bsd/drm2/i915drm/files.i915drmkms: netbsd-7-nhusb
sys/external/bsd/drm2/include/linux/err.h: delete
sys/external/bsd/drm2/include/linux/workqueue.h: delete
sys/external/bsd/drm2/linux/files.drmkms_linux: netbsd-7-nhusb
sys/external/bsd/drm2/linux/linux_work.c: delete
sys/external/bsd/dwc2/dwc2.c: netbsd-7-nhusb
sys/external/bsd/dwc2/dwc2.h: netbsd-7-nhusb
sys/external/bsd/dwc2/dwc2var.h: netbsd-7-nhusb
sys/external/bsd/dwc2/dwctwo2netbsd: netbsd-7-nhusb
sys/external/bsd/dwc2/conf/files.dwc2: netbsd-7-nhusb
sys/external/bsd/dwc2/dist/dwc2_core.c: netbsd-7-nhusb
sys/external/bsd/dwc2/dist/dwc2_core.h: netbsd-7-nhusb
sys/external/bsd/dwc2/dist/dwc2_coreintr.c: netbsd-7-nhusb
sys/external/bsd/dwc2/dist/dwc2_hcd.c: netbsd-7-nhusb
sys/external/bsd/dwc2/dist/dwc2_hcd.h: netbsd-7-nhusb
sys/external/bsd/dwc2/dist/dwc2_hcdddma.c: netbsd-7-nhusb
sys/external/bsd/dwc2/dist/dwc2_hcdintr.c: netbsd-7-nhusb
sys/external/bsd/dwc2/dist/dwc2_hcdqueue.c: netbsd-7-nhusb
sys/external/bsd/dwc2/dist/dwc2_hw.h: netbsd-7-nhusb
sys/modules/drmkms_linux/Makefile: netbsd-7-nhusb
sys/modules/i915drmkms/Makefile: netbsd-7-nhusb
sys/rump/dev/lib/libugenhc/ugenhc.c: netbsd-7-nhusb
sys/rump/dev/lib/libusb/Makefile: netbsd-7-nhusb
sys/rump/dev/lib/libusb/USB.ioconf: netbsd-7-nhusb
sys/rump/dev/lib/libusb/usb_at_ugenhc.c: delete
sys/rump/dev/lib/libusb/opt/opt_usb.h: delete
sys/rump/dev/lib/libusb/opt/opt_usbverbose.h: delete
sys/sys/mbuf.h: netbsd-7-nhusb
usr.sbin/usbdevs/usbdevs.8: netbsd-7-nhusb
usr.sbin/usbdevs/usbdevs.c: netbsd-7-nhusb
Merge netbsd-7-nhusb:
- API / infrastructure changes to support memory management changes.
- Memory management improvements and bug fixes.
- HCDs should now be MP safe
- conversion to KERNHIST based debug
- FS/LS isoc support on ehci(4).
- conversion to kmem(9)
- Some USB 3 support - mostly from Takahiro HAYASHI (t-hash).
- interrupt transfers now get proper DMA operations
- general bug fixes
- kern/48308
- uhub status notification improvements
- umass(4) probe fix (applied to HEAD already)
- ohci(4) short transfer fix
- Change the SOFTINT level from NET to SERIAL for the USB softint handler.
This gives the callback a chance of running when another softint handler
at SOFTINT_NET has blocked holding a lock, e.g. softnet_lock and most of
the network stack.
- kern/49065 - ifconfig tun0 ... sequence locks up system / lockup:
softnet_lock held across usb xfr
- kern/50491 - unkillable wait in usbd_transfer while using usmsc0
on raspberry pi 2
- kern/51395 - USB Ethernet makes xhci hang
- Various improvements to slhci(4)
- Various improvements to dwc2(4)
 1.4.2.1 11-Jan-2015  snj branches: 1.4.2.1.4;
Pull up following revision(s) (requested by chs in ticket #401):
distrib/sets/lists/modules/md.amd64: revisions 1.46, 1.47 via patch
distrib/sets/lists/modules/md.i386: revisions 1.49, 1.50
sys/dev/ic/pcdisplayvar.h: revision 1.20
sys/dev/ic/vgavar.h: revision 1.32
sys/external/bsd/drm/dist/bsd-core/drm_drv.c: revision 1.26
sys/external/bsd/drm2/dist/drm/drm_agpsupport.c: revisions 1.5, 1.6
sys/external/bsd/drm2/dist/drm/drm_pci.c: revisions 1.4, 1.5
sys/external/bsd/drm2/dist/drm/drm_stub.c: revisions 1.6-1.8
sys/external/bsd/drm2/dist/drm/i915/i915_drv.h: revision 1.11
sys/external/bsd/drm2/dist/drm/radeon/cik.c: revision 1.3
sys/external/bsd/drm2/dist/drm/radeon/ni.c: revision 1.3
sys/external/bsd/drm2/dist/drm/radeon/si.c: revision 1.3
sys/external/bsd/drm2/dist/include/drm/drmP.h: revisions 1.8, 1.9
sys/external/bsd/drm2/dist/include/drm/drm_agpsupport.h: revisions 1.3, 1.4
sys/external/bsd/drm2/drm/drm_drv.c: revision 1.11
sys/external/bsd/drm2/drm/drm_module.c: revision 1.9
sys/external/bsd/drm2/drm/drm_sysctl.c: revisions 1.1-1.4
sys/external/bsd/drm2/drm/drm_vm.c: revision 1.7
sys/external/bsd/drm2/drm/files.drmkms: revisions 1.8, 1.9
sys/external/bsd/drm2/i915drm/files.i915drmkms: revision 1.9
sys/external/bsd/drm2/i915drm/i915_module.c: revisions 1.4, 1.5
sys/external/bsd/drm2/include/drm/drm_sysctl.h: revisions 1.1, 1.2
sys/external/bsd/drm2/include/linux/hdmi.h: revisions 1.3-1.5
sys/external/bsd/drm2/include/linux/module.h: revision 1.5
sys/external/bsd/drm2/include/linux/moduleparam.h: revisions 1.3, 1.4
sys/external/bsd/drm2/include/linux/pci.h: revision 1.11
sys/external/bsd/drm2/linux/linux_module.c: revision 1.5
sys/external/bsd/drm2/nouveau/files.nouveau: revision 1.4
sys/external/bsd/drm2/nouveau/nouveau_module.c: revision 1.3
sys/external/bsd/drm2/pci/drm_pci.c: revision 1.8
sys/external/bsd/drm2/pci/drm_pci_module.c: revision 1.3
sys/external/bsd/drm2/radeon/radeon_module.c: revision 1.3
sys/external/bsd/drm2/ttm/files.ttm: revision 1.1
sys/modules/drm2pci/Makefile: file removal
sys/modules/drmkms/Makefile: revisions 1.4-1.7
sys/modules/drmkms_linux/Makefile: revision 1.5
sys/modules/drmkms_pci/Makefile: revisions 1.3, 1.4
sys/modules/i915drmkms/Makefile: revisions 1.5-1.7
Split drm ttm config into a separate file.
--
Fix module build of drmkms_linux.
--
Remove vestigial drm2pci module, replaced by drmkms_pci.
--
fix the module class.
--
add the drmkms modules
--
make a drm_agp_destroy() function to resolve the circular dependency between
drmkms and drmkms_pci
--
finalize the idr code.
--
add drm_agp_destroy
--
fix drmkms module path for xen.
--
fix build failure.
/tmp/bracket/build/2014.11.10.22.43.46-i386/src/sys/external/bsd/drm2/include/linux/pci.h:36:20: fatal error: acpica.h: No such file or directory
--
make this work: add agpsupport and sysctl code
--
move agpsupport to drmkms to avoid circular dependencies.
--
turn on dynamic ldscript creation to handle link set symbol definitions
used in the automatic sysctl creation.
--
Add __link_set based code to automatically convert the linux module parameters
into sysctls.
--
this module needs MKLDSCRIPT too now
--
more _KERNEL_OPT
--
prettify and add to all the modules that have it.
--
fix description setting.
--
Adjust flags to allow building with clang.
--
Fix build with clang.
--
Drop casts in favour of expressions that actually give the right
pointer.
--
Move all PCI/AGP code back to drmkms_pci module where it belongs.
--
Use correct length for hdmi_infoframe_header_pack in <linux/hdmi.h>.
Fixes PR kern/49411.
--
Back out previous, fix PR kern/49411 correctly.
frame->header.length is not initialized in the vendor packet case.
Instead, make hdmi_infoframe_header_pack take the packet length and
subtract the size of the header when packing the header.
(Could make it take the payload length instead, but for callers it is
more convenient to have a name for the whole packet length.)
--
Fix bounds checking in hdmi_infoframe_header_pack (PR kern/49411).
--
Trivial build fix for no options SYSCTL_INCLUDE_DESCR case, to
avoid -Werror.
OK christos@ and riastradh@
--
fix debugging compilation (ALL kernel)
--
nouveau_nv50_fence.c needs -Wno-shadow.
--
fix a confusion between dev_t and devmajor_t, and include the primary
minor when calling makedev().
 1.4.2.1.4.1 10-Sep-2016  skrll Sync with HEAD
 1.7.2.1 22-Sep-2015  skrll Sync with HEAD
 1.8.18.3 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.8.18.2 08-Apr-2020  martin Merge changes from current as of 20200406
 1.8.18.1 10-Jun-2019  christos Sync with HEAD
 1.8.16.1 06-Sep-2018  pgoyette Sync with HEAD

Resolve a couple of conflicts (result of the uimin/uimax changes)
 1.14.2.1 29-Feb-2020  ad Sync with head.
 1.16.4.1 17-Apr-2021  thorpej Sync with HEAD.
 1.17.6.1 06-Jun-2021  cjep sync with head
 1.17.2.1 17-Jun-2021  thorpej Sync w/ HEAD.
 1.3 24-Jul-2014  riastradh branches: 1.3.4;
Rework Intel framebuffer attachment.

Turns out genfb_softc must be at the start of its own device_private,
so we can't have it in the middle of a structure, and certainly can't
have potentially multiple genfbs per graphics device. Failing to do
this is why entering ddb didn't work with an i915drmkms console.

Instead of putting a genfb_softc into each drm_fb_helper, put a
device_t into each drm_fb_helper and create a new intelfb(4) device
for each Intel framebuffer. This will be more flexible, too, in case
we want accelerated framebuffers later on. (XXX Need to adapt the
radeon code, which I'm disabling until that happens to avoid breaking
the build.)

While here, defer disabling VGA, vga_cndetach, and genfb_attach until
we're actually ready to do them all together along with the mode
switch. This should reduce the amount of time during which the
screen is blanked, in case it hangs.
 1.2 18-Mar-2014  riastradh branches: 1.2.2; 1.2.4; 1.2.6;
Merge riastradh-drm2 to HEAD.
 1.1 04-Mar-2014  riastradh branches: 1.1.2;
file i915drmkms.ioconf was initially added on branch riastradh-drm2.
 1.1.2.1 04-Mar-2014  riastradh Rework drm2 configuration and modularization.

- Split drm2.kmod into drmkms_linux, drmkms, drmkms_pci.
- Split up drmkms-related files.* similarly.
- Make drm_agp_* routines hooks that the drmkms_pci module installs.
- Reuse drm device major 180 for (old) drm and drmkms.

Now old drm and new drmkms can coexist happily in the same tree, with
or without PCI, and require no changes to userland.
 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 18-Mar-2014  yamt file i915drmkms.ioconf was added on branch yamt-pagecache on 2014-05-22 11:41:07 +0000
 1.2.4.2 18-May-2014  rmind sync with head
 1.2.4.1 18-Mar-2014  rmind file i915drmkms.ioconf was added on branch rmind-smpnet on 2014-05-18 17:46:11 +0000
 1.2.2.1 10-Aug-2014  tls Rebase.
 1.3.4.2 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.3.4.1 24-Jul-2014  tls file i915drmkms.ioconf was added on branch tls-maxphys on 2014-08-20 00:04:33 +0000
 1.1 26-Feb-2018  pgoyette Descend into subdirectory to create the module for ichsmb(4) driver.
 1.1 26-Feb-2018  pgoyette Descend into subdirectory to create the module for ichsmb(4) driver.
 1.4 23-Mar-2019  pgoyette Replace compile-time checking for vlan code with a module hook.

Should resolve the errors reported on irc when booting a kernel which
has agr without vlan:


[ 1.0000000] WARNING: module error: built-in module if_agr can't find builtin dependency `if_vlan'
[ 1.0000000] WARNING: module error: built-in module if_agr prerequisite if_vlan failed, error 2
 1.3 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.2 16-Jan-2018  knakahara branches: 1.2.4;
Fix agr(4) module build. Reviewed by pgoyette@n.o, thanks.
 1.1 07-Aug-2016  christos branches: 1.1.2; 1.1.4; 1.1.18;
add new modules
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 07-Aug-2016  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:54 +0000
 1.1.4.2 05-Oct-2016  skrll Sync with HEAD
 1.1.4.1 07-Aug-2016  skrll file Makefile was added on branch nick-nhusb on 2016-10-05 20:56:04 +0000
 1.1.2.2 14-Sep-2016  pgoyette Sync with HEAD
 1.1.2.1 07-Aug-2016  pgoyette file Makefile was added on branch pgoyette-localcount on 2016-09-14 03:04:17 +0000
 1.2.4.1 10-Jun-2019  christos Sync with HEAD
 1.1 07-Aug-2016  christos branches: 1.1.2; 1.1.4; 1.1.18;
add new modules
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 07-Aug-2016  jdolecek file agr.ioconf was added on branch tls-maxphys on 2017-12-03 11:38:54 +0000
 1.1.4.2 05-Oct-2016  skrll Sync with HEAD
 1.1.4.1 07-Aug-2016  skrll file agr.ioconf was added on branch nick-nhusb on 2016-10-05 20:56:04 +0000
 1.1.2.2 14-Sep-2016  pgoyette Sync with HEAD
 1.1.2.1 07-Aug-2016  pgoyette file agr.ioconf was added on branch pgoyette-localcount on 2016-09-14 03:04:17 +0000
 1.2 28-Aug-2011  jmcneill WARNS=3 is the default
 1.1 23-Feb-2011  jmcneill branches: 1.1.2; 1.1.4; 1.1.8;
module glue for alc@pci
 1.1.8.2 06-Jun-2011  jruoho Sync with HEAD.
 1.1.8.1 23-Feb-2011  jruoho file Makefile was added on branch jruoho-x86intr on 2011-06-06 09:09:48 +0000
 1.1.4.2 05-Mar-2011  rmind sync with head
 1.1.4.1 23-Feb-2011  rmind file Makefile was added on branch rmind-uvmplock on 2011-03-05 20:55:44 +0000
 1.1.2.2 05-Mar-2011  bouyer Sync with HEAD
 1.1.2.1 23-Feb-2011  bouyer file Makefile was added on branch bouyer-quota2 on 2011-03-05 15:10:44 +0000
 1.1 23-Feb-2011  jmcneill branches: 1.1.2; 1.1.4; 1.1.8;
module glue for alc@pci
 1.1.8.2 06-Jun-2011  jruoho Sync with HEAD.
 1.1.8.1 23-Feb-2011  jruoho file if_alc.ioconf was added on branch jruoho-x86intr on 2011-06-06 09:09:48 +0000
 1.1.4.2 05-Mar-2011  rmind sync with head
 1.1.4.1 23-Feb-2011  rmind file if_alc.ioconf was added on branch rmind-uvmplock on 2011-03-05 20:55:44 +0000
 1.1.2.2 05-Mar-2011  bouyer Sync with HEAD
 1.1.2.1 23-Feb-2011  bouyer file if_alc.ioconf was added on branch bouyer-quota2 on 2011-03-05 15:10:44 +0000
 1.1 01-Jan-2020  ryo branches: 1.1.8;
Add module build for aq(4)
 1.1.8.2 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.1.8.1 01-Jan-2020  martin file Makefile was added on branch phil-wifi on 2020-04-13 08:05:11 +0000
 1.1 01-Jan-2020  ryo branches: 1.1.8;
Add module build for aq(4)
 1.1.8.2 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.1.8.1 01-Jan-2020  martin file if_aq.ioconf was added on branch phil-wifi on 2020-04-13 08:05:11 +0000
 1.2 28-Aug-2011  jmcneill WARNS=3 is the default
 1.1 20-Feb-2011  jmcneill branches: 1.1.2; 1.1.4; 1.1.8;
add module glue for ath_hal, ath, and if_ath_pci
 1.1.8.2 06-Jun-2011  jruoho Sync with HEAD.
 1.1.8.1 20-Feb-2011  jruoho file Makefile was added on branch jruoho-x86intr on 2011-06-06 09:09:48 +0000
 1.1.4.2 05-Mar-2011  rmind sync with head
 1.1.4.1 20-Feb-2011  rmind file Makefile was added on branch rmind-uvmplock on 2011-03-05 20:55:45 +0000
 1.1.2.2 05-Mar-2011  bouyer Sync with HEAD
 1.1.2.1 20-Feb-2011  bouyer file Makefile was added on branch bouyer-quota2 on 2011-03-05 15:10:45 +0000
 1.1 20-Feb-2011  jmcneill branches: 1.1.2; 1.1.4; 1.1.8;
add module glue for ath_hal, ath, and if_ath_pci
 1.1.8.2 06-Jun-2011  jruoho Sync with HEAD.
 1.1.8.1 20-Feb-2011  jruoho file if_ath_pci.ioconf was added on branch jruoho-x86intr on 2011-06-06 09:09:48 +0000
 1.1.4.2 05-Mar-2011  rmind sync with head
 1.1.4.1 20-Feb-2011  rmind file if_ath_pci.ioconf was added on branch rmind-uvmplock on 2011-03-05 20:55:45 +0000
 1.1.2.2 05-Mar-2011  bouyer Sync with HEAD
 1.1.2.1 20-Feb-2011  bouyer file if_ath_pci.ioconf was added on branch bouyer-quota2 on 2011-03-05 15:10:45 +0000
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 30-Mar-2013  christos branches: 1.1.4; 1.1.12; 1.1.40;
module for if_athn_usb
 1.1.40.1 10-Jun-2019  christos 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 30-Mar-2013  yamt file Makefile was added on branch yamt-pagecache on 2014-05-22 11:41:07 +0000
 1.1.4.2 23-Jun-2013  tls resync from head
 1.1.4.1 30-Mar-2013  tls file Makefile was added on branch tls-maxphys on 2013-06-23 06:20:24 +0000
 1.1 30-Mar-2013  christos branches: 1.1.4; 1.1.12;
module for if_athn_usb
 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 30-Mar-2013  yamt file if_athn_usb.ioconf was added on branch yamt-pagecache on 2014-05-22 11:41:07 +0000
 1.1.4.2 23-Jun-2013  tls resync from head
 1.1.4.1 30-Mar-2013  tls file if_athn_usb.ioconf was added on branch tls-maxphys on 2013-06-23 06:20:24 +0000
 1.1 17-Sep-2019  mrg branches: 1.1.8;
add modules for all usbnet drivers not present.
only some (axe, axen, ure, cdce) of these are tested.

will link into build in a separate change.
 1.1.8.2 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.1.8.1 17-Sep-2019  martin file Makefile was added on branch phil-wifi on 2020-04-13 08:05:12 +0000
 1.1 17-Sep-2019  mrg branches: 1.1.8;
add modules for all usbnet drivers not present.
only some (axe, axen, ure, cdce) of these are tested.

will link into build in a separate change.
 1.1.8.2 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.1.8.1 17-Sep-2019  martin file if_aue.ioconf was added on branch phil-wifi on 2020-04-13 08:05:12 +0000
 1.3 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.2 02-Feb-2012  tls branches: 1.2.48;
Entropy-pool implementation move and cleanup.

1) Move core entropy-pool code and source/sink/sample management code
to sys/kern from sys/dev.

2) Remove use of NRND as test for presence of entropy-pool code throughout
source tree.

3) Remove use of RND_ENABLED in device drivers as microoptimization to
avoid expensive operations on disabled entropy sources; make the
rnd_add calls do this directly so all callers benefit.

4) Fix bug in recent rnd_add_data()/rnd_add_uint32() changes that might
have lead to slight entropy overestimation for some sources.

5) Add new source types for environmental sensors, power sensors, VM
system events, and skew between clocks, with a sample implementation
for each.

ok releng to go in before the branch due to the difficulty of later
pullup (widespread #ifdef removal and moved files). Tested with release
builds on amd64 and evbarm and live testing on amd64.
 1.1 23-Aug-2011  pgoyette branches: 1.1.2; 1.1.6;
Module build glue for if_rum and if_axe
 1.1.6.1 18-Feb-2012  mrg merge to -current.
 1.1.2.1 17-Apr-2012  yamt sync with head
 1.2.48.1 10-Jun-2019  christos Sync with HEAD
 1.2 25-Aug-2011  pgoyette Fix the ioconf files. We can't include dev/usb/files.pci and the
attachment should be usbdevif as defined in files.usb
 1.1 23-Aug-2011  pgoyette Module build glue for if_rum and if_axe
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 26-Oct-2013  nonaka branches: 1.1.4; 1.1.6; 1.1.10; 1.1.36;
Add driver for ASIX AX88178a and AX88179 Ethernet interface.
Ported from OpenBSD.
 1.1.36.1 10-Jun-2019  christos Sync with HEAD
 1.1.10.2 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.1.10.1 26-Oct-2013  tls file Makefile was added on branch tls-maxphys on 2014-08-20 00:04:33 +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 26-Oct-2013  yamt file Makefile was added on branch yamt-pagecache on 2014-05-22 11:41:07 +0000
 1.1.4.2 18-May-2014  rmind sync with head
 1.1.4.1 26-Oct-2013  rmind file Makefile was added on branch rmind-smpnet on 2014-05-18 17:46:11 +0000
 1.1 26-Oct-2013  nonaka branches: 1.1.4; 1.1.6; 1.1.10;
Add driver for ASIX AX88178a and AX88179 Ethernet interface.
Ported from OpenBSD.
 1.1.10.2 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.1.10.1 26-Oct-2013  tls file if_axen.ioconf was added on branch tls-maxphys on 2014-08-20 00:04:33 +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 26-Oct-2013  yamt file if_axen.ioconf was added on branch yamt-pagecache on 2014-05-22 11:41:07 +0000
 1.1.4.2 18-May-2014  rmind sync with head
 1.1.4.1 26-Oct-2013  rmind file if_axen.ioconf was added on branch rmind-smpnet on 2014-05-18 17:46:11 +0000
 1.2 28-Aug-2011  jmcneill WARNS=3 is the default
 1.1 07-Jan-2011  jmcneill branches: 1.1.6;
support building cas(4) as a module
 1.1.6.2 05-Mar-2011  rmind sync with head
 1.1.6.1 07-Jan-2011  rmind file Makefile was added on branch rmind-uvmplock on 2011-03-05 20:55:45 +0000
 1.1 07-Jan-2011  jmcneill branches: 1.1.6;
support building cas(4) as a module
 1.1.6.2 05-Mar-2011  rmind sync with head
 1.1.6.1 07-Jan-2011  rmind file if_cas.ioconf was added on branch rmind-uvmplock on 2011-03-05 20:55:45 +0000
 1.1 17-Sep-2019  mrg branches: 1.1.8;
add modules for all usbnet drivers not present.
only some (axe, axen, ure, cdce) of these are tested.

will link into build in a separate change.
 1.1.8.2 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.1.8.1 17-Sep-2019  martin file Makefile was added on branch phil-wifi on 2020-04-13 08:05:12 +0000
 1.1 17-Sep-2019  mrg branches: 1.1.8;
add modules for all usbnet drivers not present.
only some (axe, axen, ure, cdce) of these are tested.

will link into build in a separate change.
 1.1.8.2 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.1.8.1 17-Sep-2019  martin file if_cdce.ioconf was added on branch phil-wifi on 2020-04-13 08:05:12 +0000
 1.1 17-Sep-2019  mrg branches: 1.1.8;
add modules for all usbnet drivers not present.
only some (axe, axen, ure, cdce) of these are tested.

will link into build in a separate change.
 1.1.8.2 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.1.8.1 17-Sep-2019  martin file Makefile was added on branch phil-wifi on 2020-04-13 08:05:12 +0000
 1.1 17-Sep-2019  mrg branches: 1.1.8;
add modules for all usbnet drivers not present.
only some (axe, axen, ure, cdce) of these are tested.

will link into build in a separate change.
 1.1.8.2 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.1.8.1 17-Sep-2019  martin file if_cue.ioconf was added on branch phil-wifi on 2020-04-13 08:05:12 +0000
 1.1 07-Aug-2016  christos branches: 1.1.2; 1.1.4; 1.1.18;
add new modules
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 07-Aug-2016  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:55 +0000
 1.1.4.2 05-Oct-2016  skrll Sync with HEAD
 1.1.4.1 07-Aug-2016  skrll file Makefile was added on branch nick-nhusb on 2016-10-05 20:56:05 +0000
 1.1.2.2 14-Sep-2016  pgoyette Sync with HEAD
 1.1.2.1 07-Aug-2016  pgoyette file Makefile was added on branch pgoyette-localcount on 2016-09-14 03:04:17 +0000
 1.1 07-Aug-2016  christos branches: 1.1.2; 1.1.4; 1.1.18;
add new modules
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 07-Aug-2016  jdolecek file faith.ioconf was added on branch tls-maxphys on 2017-12-03 11:38:55 +0000
 1.1.4.2 05-Oct-2016  skrll Sync with HEAD
 1.1.4.1 07-Aug-2016  skrll file faith.ioconf was added on branch nick-nhusb on 2016-10-05 20:56:05 +0000
 1.1.2.2 14-Sep-2016  pgoyette Sync with HEAD
 1.1.2.1 07-Aug-2016  pgoyette file faith.ioconf was added on branch pgoyette-localcount on 2016-09-14 03:04:17 +0000
 1.4 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.3 09-Dec-2017  pgoyette branches: 1.3.4;
Split ip_ecn code into its own module, so it can be shared between
gif(4), stf(4), and ipsec(4). Without this, loading the if_gif
module can result in redefined global symbols if either ipsec(4) or
stf(4) but not gif(4) is built into the kernel.

Fixes PR kern/52795 (as reported by martin@ via irc).

XXX pullup to netbsd-8
 1.2 18-Aug-2016  knakahara branches: 1.2.2; 1.2.4; 1.2.12; 1.2.18;
add required files to if_gif module. (unify to rump)
 1.1 07-Aug-2016  christos add new modules
 1.2.18.2 03-Dec-2017  jdolecek update from HEAD
 1.2.18.1 18-Aug-2016  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:55 +0000
 1.2.12.1 21-Dec-2017  snj Pull up following revision(s) (requested by pgoyette in ticket #436):
distrib/sets/lists/modules/mi: revision 1.112
sys/modules/Makefile: revision 1.196
sys/modules/ip_ecn/Makefile: revision 1.1
sys/modules/if_gif/Makefile: revision 1.3
sys/net/if_gif.c: revision 1.136
sys/netinet/ip_ecn.c: revision 1.17
Split ip_ecn code into its own module, so it can be shared between
gif(4), stf(4), and ipsec(4). Without this, loading the if_gif
module can result in redefined global symbols if either ipsec(4) or
stf(4) but not gif(4) is built into the kernel.
Fixes PR kern/52795 (as reported by martin@ via irc).
 1.2.4.2 05-Oct-2016  skrll Sync with HEAD
 1.2.4.1 18-Aug-2016  skrll file Makefile was added on branch nick-nhusb on 2016-10-05 20:56:05 +0000
 1.2.2.2 14-Sep-2016  pgoyette Sync with HEAD
 1.2.2.1 18-Aug-2016  pgoyette file Makefile was added on branch pgoyette-localcount on 2016-09-14 03:04:18 +0000
 1.3.4.1 10-Jun-2019  christos Sync with HEAD
 1.1 07-Aug-2016  christos branches: 1.1.2; 1.1.4; 1.1.18;
add new modules
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 07-Aug-2016  jdolecek file gif.ioconf was added on branch tls-maxphys on 2017-12-03 11:38:55 +0000
 1.1.4.2 05-Oct-2016  skrll Sync with HEAD
 1.1.4.1 07-Aug-2016  skrll file gif.ioconf was added on branch nick-nhusb on 2016-10-05 20:56:05 +0000
 1.1.2.2 14-Sep-2016  pgoyette Sync with HEAD
 1.1.2.1 07-Aug-2016  pgoyette file gif.ioconf was added on branch pgoyette-localcount on 2016-09-14 03:04:18 +0000
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 07-Aug-2016  christos branches: 1.1.2; 1.1.4; 1.1.18; 1.1.22;
add new modules
 1.1.22.1 10-Jun-2019  christos Sync with HEAD
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 07-Aug-2016  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:55 +0000
 1.1.4.2 05-Oct-2016  skrll Sync with HEAD
 1.1.4.1 07-Aug-2016  skrll file Makefile was added on branch nick-nhusb on 2016-10-05 20:56:05 +0000
 1.1.2.2 14-Sep-2016  pgoyette Sync with HEAD
 1.1.2.1 07-Aug-2016  pgoyette file Makefile was added on branch pgoyette-localcount on 2016-09-14 03:04:18 +0000
 1.1 07-Aug-2016  christos branches: 1.1.2; 1.1.4; 1.1.18;
add new modules
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 07-Aug-2016  jdolecek file gre.ioconf was added on branch tls-maxphys on 2017-12-03 11:38:55 +0000
 1.1.4.2 05-Oct-2016  skrll Sync with HEAD
 1.1.4.1 07-Aug-2016  skrll file gre.ioconf was added on branch nick-nhusb on 2016-10-05 20:56:05 +0000
 1.1.2.2 14-Sep-2016  pgoyette Sync with HEAD
 1.1.2.1 07-Aug-2016  pgoyette file gre.ioconf was added on branch pgoyette-localcount on 2016-09-14 03:04:18 +0000
 1.1 08-Sep-2020  yamaguchi Added iavf(4) that is based on OpenBSD's iavf(4) implementation

reviewed by msaitoh@n.o and knakahara@n.o
 1.1 08-Sep-2020  yamaguchi Added iavf(4) that is based on OpenBSD's iavf(4) implementation

reviewed by msaitoh@n.o and knakahara@n.o
 1.4 21-Oct-2025  pgoyette Don't define NVLAN - vlan support is currently ``#if 0'' in if_igc.c
 1.3 21-Oct-2025  pgoyette if_igc needs WARNS=3
 1.2 21-Oct-2025  pgoyette Define NVLAN for consistency with if_alc and if_aq modules
 1.1 21-Oct-2025  pgoyette Add MODULE glue and build infrasructure.

XXX We won't actually build or install it due to kern/59716 but
XXX it can be manually built and installed if you want.
 1.1 21-Oct-2025  pgoyette Add MODULE glue and build infrasructure.

XXX We won't actually build or install it due to kern/59716 but
XXX it can be manually built and installed if you want.
 1.1 10-Dec-2019  yamaguchi branches: 1.1.8;
Ported driver for Intel Ethernet 700 series

reviewed by msaitoh and knakahara
 1.1.8.2 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.1.8.1 10-Dec-2019  martin file Makefile was added on branch phil-wifi on 2020-04-13 08:05:12 +0000
 1.1 10-Dec-2019  yamaguchi branches: 1.1.8;
Ported driver for Intel Ethernet 700 series

reviewed by msaitoh and knakahara
 1.1.8.2 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.1.8.1 10-Dec-2019  martin file if_ixl.ioconf was added on branch phil-wifi on 2020-04-13 08:05:12 +0000
 1.1 17-Sep-2019  mrg branches: 1.1.8;
add modules for all usbnet drivers not present.
only some (axe, axen, ure, cdce) of these are tested.

will link into build in a separate change.
 1.1.8.2 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.1.8.1 17-Sep-2019  martin file Makefile was added on branch phil-wifi on 2020-04-13 08:05:12 +0000
 1.1 17-Sep-2019  mrg branches: 1.1.8;
add modules for all usbnet drivers not present.
only some (axe, axen, ure, cdce) of these are tested.

will link into build in a separate change.
 1.1.8.2 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.1.8.1 17-Sep-2019  martin file if_kue.ioconf was added on branch phil-wifi on 2020-04-13 08:05:12 +0000
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 16-Feb-2017  knakahara branches: 1.1.2; 1.1.6; 1.1.14; 1.1.18; 1.1.22;
add missing files.
 1.1.22.1 10-Jun-2019  christos Sync with HEAD
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 16-Feb-2017  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:55 +0000
 1.1.14.2 28-Aug-2017  skrll Sync with HEAD
 1.1.14.1 16-Feb-2017  skrll file Makefile was added on branch nick-nhusb on 2017-08-28 17:53:10 +0000
 1.1.6.2 16-Feb-2017  knakahara 794931
 1.1.6.1 16-Feb-2017  knakahara file Makefile was added on branch bouyer-socketcan on 2017-02-16 08:23:36 +0000
 1.1.2.2 20-Mar-2017  pgoyette Sync with HEAD
 1.1.2.1 16-Feb-2017  pgoyette file Makefile was added on branch pgoyette-localcount on 2017-03-20 06:57:49 +0000
 1.1 16-Feb-2017  knakahara branches: 1.1.2; 1.1.6; 1.1.14; 1.1.18;
add missing files.
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 16-Feb-2017  jdolecek file l2tp.ioconf was added on branch tls-maxphys on 2017-12-03 11:38:55 +0000
 1.1.14.2 28-Aug-2017  skrll Sync with HEAD
 1.1.14.1 16-Feb-2017  skrll file l2tp.ioconf was added on branch nick-nhusb on 2017-08-28 17:53:10 +0000
 1.1.6.2 16-Feb-2017  knakahara 794931
 1.1.6.1 16-Feb-2017  knakahara file l2tp.ioconf was added on branch bouyer-socketcan on 2017-02-16 08:23:36 +0000
 1.1.2.2 20-Mar-2017  pgoyette Sync with HEAD
 1.1.2.1 16-Feb-2017  pgoyette file l2tp.ioconf was added on branch pgoyette-localcount on 2017-03-20 06:57:49 +0000
 1.1 17-May-2021  yamaguchi branches: 1.1.2; 1.1.6;
Add a new link-aggregation pseudo interface named lagg(4)

- FreeBSD's lagg(4) based implementation
- MP-safe and MP-scalable
 1.1.6.2 17-Jun-2021  thorpej Sync w/ HEAD.
 1.1.6.1 17-May-2021  thorpej file Makefile was added on branch thorpej-i2c-spi-conf on 2021-06-17 04:46:34 +0000
 1.1.2.2 31-May-2021  cjep sync with head
 1.1.2.1 17-May-2021  cjep file Makefile was added on branch cjep_staticlib_x on 2021-05-31 22:15:21 +0000
 1.1 17-May-2021  yamaguchi branches: 1.1.2; 1.1.6;
Add a new link-aggregation pseudo interface named lagg(4)

- FreeBSD's lagg(4) based implementation
- MP-safe and MP-scalable
 1.1.6.2 17-Jun-2021  thorpej Sync w/ HEAD.
 1.1.6.1 17-May-2021  thorpej file lagg.ioconf was added on branch thorpej-i2c-spi-conf on 2021-06-17 04:46:34 +0000
 1.1.2.2 31-May-2021  cjep sync with head
 1.1.2.1 17-May-2021  cjep file lagg.ioconf was added on branch cjep_staticlib_x on 2021-05-31 22:15:21 +0000
 1.1 07-Aug-2016  christos branches: 1.1.2; 1.1.4; 1.1.18;
add new modules
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 07-Aug-2016  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:55 +0000
 1.1.4.2 05-Oct-2016  skrll Sync with HEAD
 1.1.4.1 07-Aug-2016  skrll file Makefile was added on branch nick-nhusb on 2016-10-05 20:56:05 +0000
 1.1.2.2 14-Sep-2016  pgoyette Sync with HEAD
 1.1.2.1 07-Aug-2016  pgoyette file Makefile was added on branch pgoyette-localcount on 2016-09-14 03:04:18 +0000
 1.1 07-Aug-2016  christos branches: 1.1.2; 1.1.4; 1.1.18;
add new modules
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 07-Aug-2016  jdolecek file loop.ioconf was added on branch tls-maxphys on 2017-12-03 11:38:55 +0000
 1.1.4.2 05-Oct-2016  skrll Sync with HEAD
 1.1.4.1 07-Aug-2016  skrll file loop.ioconf was added on branch nick-nhusb on 2016-10-05 20:56:05 +0000
 1.1.2.2 14-Sep-2016  pgoyette Sync with HEAD
 1.1.2.1 07-Aug-2016  pgoyette file loop.ioconf was added on branch pgoyette-localcount on 2016-09-14 03:04:18 +0000
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 07-Aug-2016  christos branches: 1.1.2; 1.1.4; 1.1.18; 1.1.22;
add new modules
 1.1.22.1 10-Jun-2019  christos Sync with HEAD
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 07-Aug-2016  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:55 +0000
 1.1.4.2 05-Oct-2016  skrll Sync with HEAD
 1.1.4.1 07-Aug-2016  skrll file Makefile was added on branch nick-nhusb on 2016-10-05 20:56:05 +0000
 1.1.2.2 14-Sep-2016  pgoyette Sync with HEAD
 1.1.2.1 07-Aug-2016  pgoyette file Makefile was added on branch pgoyette-localcount on 2016-09-14 03:04:18 +0000
 1.1 07-Aug-2016  christos branches: 1.1.2; 1.1.4; 1.1.18;
add new modules
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 07-Aug-2016  jdolecek file mpls.ioconf was added on branch tls-maxphys on 2017-12-03 11:38:55 +0000
 1.1.4.2 05-Oct-2016  skrll Sync with HEAD
 1.1.4.1 07-Aug-2016  skrll file mpls.ioconf was added on branch nick-nhusb on 2016-10-05 20:56:05 +0000
 1.1.2.2 14-Sep-2016  pgoyette Sync with HEAD
 1.1.2.1 07-Aug-2016  pgoyette file mpls.ioconf was added on branch pgoyette-localcount on 2016-09-14 03:04:18 +0000
 1.2 17-Feb-2019  rin branches: 1.2.4;
Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 25-Aug-2018  rin branches: 1.1.2;
Add mue(4), driver for Microchip LAN75xx/LAN78xx known as internal NIC of
Raspberry Pi 3 B+, from OpenBSD.

Tested on Raspberry Pi 3 B+ (LAN7800) and Z-TEK ZE582 (LAN7500).

* BUGS/TODO

- If the media type is set to something other than 1000baseT-FDX, data
transmission becomes quite unstable. Also, ukphy(4) recognize 1000baseT as
a supported media type, but it is not in fact.

- Catch up with changes made to usmsc(4) in nick-nhusb branch, i.e.,
make the driver MP-safe.

- Support RX/VLAN/TX chekcsum offloading.
 1.1.2.2 06-Sep-2018  pgoyette Sync with HEAD

Resolve a couple of conflicts (result of the uimin/uimax changes)
 1.1.2.1 25-Aug-2018  pgoyette file Makefile was added on branch pgoyette-compat on 2018-09-06 06:56:43 +0000
 1.2.4.2 10-Jun-2019  christos Sync with HEAD
 1.2.4.1 17-Feb-2019  christos file Makefile was added on branch phil-wifi on 2019-06-10 22:09:28 +0000
 1.1 25-Aug-2018  rin branches: 1.1.2; 1.1.6;
Add mue(4), driver for Microchip LAN75xx/LAN78xx known as internal NIC of
Raspberry Pi 3 B+, from OpenBSD.

Tested on Raspberry Pi 3 B+ (LAN7800) and Z-TEK ZE582 (LAN7500).

* BUGS/TODO

- If the media type is set to something other than 1000baseT-FDX, data
transmission becomes quite unstable. Also, ukphy(4) recognize 1000baseT as
a supported media type, but it is not in fact.

- Catch up with changes made to usmsc(4) in nick-nhusb branch, i.e.,
make the driver MP-safe.

- Support RX/VLAN/TX chekcsum offloading.
 1.1.6.2 10-Jun-2019  christos Sync with HEAD
 1.1.6.1 25-Aug-2018  christos file if_mue.ioconf was added on branch phil-wifi on 2019-06-10 22:09:28 +0000
 1.1.2.2 06-Sep-2018  pgoyette Sync with HEAD

Resolve a couple of conflicts (result of the uimin/uimax changes)
 1.1.2.1 25-Aug-2018  pgoyette file if_mue.ioconf was added on branch pgoyette-compat on 2018-09-06 06:56:43 +0000
 1.1 20-Jan-2025  maya Add ncm(4) a driver for USB Network Control Model

Seen on my Google Pixel 8, which implements ncm instead of urndis.
 1.1 20-Jan-2025  maya Add ncm(4) a driver for USB Network Control Model

Seen on my Google Pixel 8, which implements ncm instead of urndis.
 1.2 29-Sep-2018  rmind NPF: Major rework -- migrate NPF to the libnv library.
- This conversion significantly simplifies the code and moves NPF to
a binary serialisation format (replacing the XML-like format).
- Fix some memory/reference leaks and possibly use-after-free bugs.
- Bump NPF_VERSION as this change makes libnpf incompatible with the
previous versions. Also, different serialisation format means NPF
connection/config saving and loading is not compatible with the
previous versions either.

Thanks to christos@ for extra testing.
 1.1 10-Mar-2013  christos branches: 1.1.6; 1.1.14; 1.1.40; 1.1.42;
new npflog driver split out of npf_ext_log.
 1.1.42.1 10-Jun-2019  christos Sync with HEAD
 1.1.40.1 30-Sep-2018  pgoyette Ssync with HEAD
 1.1.14.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.14.1 10-Mar-2013  yamt file Makefile was added on branch yamt-pagecache on 2014-05-22 11:41:07 +0000
 1.1.6.2 23-Jun-2013  tls resync from head
 1.1.6.1 10-Mar-2013  tls file Makefile was added on branch tls-maxphys on 2013-06-23 06:20:24 +0000
 1.3 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.2 17-Sep-2017  christos branches: 1.2.2; 1.2.6;
This also needs INET6!
XXX: pullup-8
 1.1 06-Aug-2016  christos branches: 1.1.2; 1.1.4;
rename the ppp module so that it autoloads.
 1.1.4.2 05-Oct-2016  skrll Sync with HEAD
 1.1.4.1 06-Aug-2016  skrll file Makefile was added on branch nick-nhusb on 2016-10-05 20:56:05 +0000
 1.1.2.2 14-Sep-2016  pgoyette Sync with HEAD
 1.1.2.1 06-Aug-2016  pgoyette file Makefile was added on branch pgoyette-localcount on 2016-09-14 03:04:18 +0000
 1.2.6.1 10-Jun-2019  christos Sync with HEAD
 1.2.2.2 03-Dec-2017  jdolecek update from HEAD
 1.2.2.1 17-Sep-2017  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:55 +0000
 1.1 06-Aug-2016  christos branches: 1.1.2; 1.1.4; 1.1.18;
rename the ppp module so that it autoloads.
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 06-Aug-2016  jdolecek file ppp.ioconf was added on branch tls-maxphys on 2017-12-03 11:38:55 +0000
 1.1.4.2 05-Oct-2016  skrll Sync with HEAD
 1.1.4.1 06-Aug-2016  skrll file ppp.ioconf was added on branch nick-nhusb on 2016-10-05 20:56:05 +0000
 1.1.2.2 14-Sep-2016  pgoyette Sync with HEAD
 1.1.2.1 06-Aug-2016  pgoyette file ppp.ioconf was added on branch pgoyette-localcount on 2016-09-14 03:04:18 +0000
 1.3 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.2 07-Aug-2016  pgoyette branches: 1.2.2; 1.2.4; 1.2.18; 1.2.22;
For modular configurations, always build with PPPOE_TERM_UNKNOWN_SESSIONS
defined, and provide a sysctl variable for enabling/disabling the option.

Update man page accordingly.
 1.1 06-Aug-2016  pgoyette Modularize the pppoe driver
 1.2.22.1 10-Jun-2019  christos Sync with HEAD
 1.2.18.2 03-Dec-2017  jdolecek update from HEAD
 1.2.18.1 07-Aug-2016  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:55 +0000
 1.2.4.2 05-Oct-2016  skrll Sync with HEAD
 1.2.4.1 07-Aug-2016  skrll file Makefile was added on branch nick-nhusb on 2016-10-05 20:56:05 +0000
 1.2.2.2 14-Sep-2016  pgoyette Sync with HEAD
 1.2.2.1 07-Aug-2016  pgoyette file Makefile was added on branch pgoyette-localcount on 2016-09-14 03:04:18 +0000
 1.1 06-Aug-2016  pgoyette branches: 1.1.2; 1.1.4; 1.1.18;
Modularize the pppoe driver
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 06-Aug-2016  jdolecek file pppoe.ioconf was added on branch tls-maxphys on 2017-12-03 11:38:55 +0000
 1.1.4.2 05-Oct-2016  skrll Sync with HEAD
 1.1.4.1 06-Aug-2016  skrll file pppoe.ioconf was added on branch nick-nhusb on 2016-10-05 20:56:05 +0000
 1.1.2.2 14-Sep-2016  pgoyette Sync with HEAD
 1.1.2.1 06-Aug-2016  pgoyette file pppoe.ioconf was added on branch pgoyette-localcount on 2016-09-14 03:04:18 +0000
 1.1 21-Oct-2025  pgoyette Add MODULE glue.

XXX The module isn't actually gettung built because of  kern/59716
 1.1 21-Oct-2025  pgoyette Add MODULE glue.

XXX The module isn't actually gettung built because of  kern/59716
 1.3 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.2 23-Aug-2011  pgoyette branches: 1.2.54;
Remove left-over debug line
 1.1 23-Aug-2011  pgoyette Module build glue for if_rum and if_axe
 1.2.54.1 10-Jun-2019  christos Sync with HEAD
 1.2 25-Aug-2011  pgoyette Fix the ioconf files. We can't include dev/usb/files.pci and the
attachment should be usbdevif as defined in files.usb
 1.1 23-Aug-2011  pgoyette Module build glue for if_rum and if_axe
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 30-May-2012  nonaka branches: 1.1.4; 1.1.42;
Add a driver for Ralink Technology RT2700U/RT2800U/RT3000U USB IEEE
802.11a/b/g/n wireless network devices, ported from OpenBSD by FUKAUMI Naoki,
arranged by me.
 1.1.42.1 10-Jun-2019  christos Sync with HEAD
 1.1.4.2 30-Oct-2012  yamt sync with head
 1.1.4.1 30-May-2012  yamt file Makefile was added on branch yamt-pagecache on 2012-10-30 17:22:41 +0000
 1.1 30-May-2012  nonaka branches: 1.1.4;
Add a driver for Ralink Technology RT2700U/RT2800U/RT3000U USB IEEE
802.11a/b/g/n wireless network devices, ported from OpenBSD by FUKAUMI Naoki,
arranged by me.
 1.1.4.2 30-Oct-2012  yamt sync with head
 1.1.4.1 30-May-2012  yamt file if_run.ioconf was added on branch yamt-pagecache on 2012-10-30 17:22:41 +0000
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 06-Aug-2016  christos branches: 1.1.2; 1.1.4; 1.1.18; 1.1.22;
Add modules for strip and slip
 1.1.22.1 10-Jun-2019  christos Sync with HEAD
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 06-Aug-2016  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:55 +0000
 1.1.4.2 05-Oct-2016  skrll Sync with HEAD
 1.1.4.1 06-Aug-2016  skrll file Makefile was added on branch nick-nhusb on 2016-10-05 20:56:05 +0000
 1.1.2.2 14-Sep-2016  pgoyette Sync with HEAD
 1.1.2.1 06-Aug-2016  pgoyette file Makefile was added on branch pgoyette-localcount on 2016-09-14 03:04:18 +0000
 1.1 06-Aug-2016  christos branches: 1.1.2; 1.1.4; 1.1.18;
Add modules for strip and slip
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 06-Aug-2016  jdolecek file sl.ioconf was added on branch tls-maxphys on 2017-12-03 11:38:55 +0000
 1.1.4.2 05-Oct-2016  skrll Sync with HEAD
 1.1.4.1 06-Aug-2016  skrll file sl.ioconf was added on branch nick-nhusb on 2016-10-05 20:56:05 +0000
 1.1.2.2 14-Sep-2016  pgoyette Sync with HEAD
 1.1.2.1 06-Aug-2016  pgoyette file sl.ioconf was added on branch pgoyette-localcount on 2016-09-14 03:04:18 +0000
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 16-Nov-2013  skrll branches: 1.1.4; 1.1.6; 1.1.10; 1.1.36;
Build a module for usmsc(4).
 1.1.36.1 10-Jun-2019  christos Sync with 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 Makefile was added on branch tls-maxphys on 2014-08-20 00:04:33 +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 Makefile was added on branch yamt-pagecache on 2014-05-22 11:41:07 +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:11 +0000
 1.1 16-Nov-2013  skrll branches: 1.1.4; 1.1.6; 1.1.10;
Build a module for usmsc(4).
 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 if_smsc.ioconf was added on branch tls-maxphys on 2014-08-20 00:04:33 +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 if_smsc.ioconf was added on branch yamt-pagecache on 2014-05-22 11:41:07 +0000
 1.1.4.2 18-May-2014  rmind sync with head
 1.1.4.1 16-Nov-2013  rmind file if_smsc.ioconf was added on branch rmind-smpnet on 2014-05-18 17:46:11 +0000
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 07-Aug-2016  christos branches: 1.1.2; 1.1.4; 1.1.18; 1.1.22;
add new modules
 1.1.22.1 10-Jun-2019  christos Sync with HEAD
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 07-Aug-2016  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:55 +0000
 1.1.4.2 05-Oct-2016  skrll Sync with HEAD
 1.1.4.1 07-Aug-2016  skrll file Makefile was added on branch nick-nhusb on 2016-10-05 20:56:05 +0000
 1.1.2.2 14-Sep-2016  pgoyette Sync with HEAD
 1.1.2.1 07-Aug-2016  pgoyette file Makefile was added on branch pgoyette-localcount on 2016-09-14 03:04:18 +0000
 1.1 07-Aug-2016  christos branches: 1.1.2; 1.1.4; 1.1.18;
missed this one
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 07-Aug-2016  jdolecek file srt.ioconf was added on branch tls-maxphys on 2017-12-03 11:38:55 +0000
 1.1.4.2 05-Oct-2016  skrll Sync with HEAD
 1.1.4.1 07-Aug-2016  skrll file srt.ioconf was added on branch nick-nhusb on 2016-10-05 20:56:05 +0000
 1.1.2.2 14-Sep-2016  pgoyette Sync with HEAD
 1.1.2.1 07-Aug-2016  pgoyette file srt.ioconf was added on branch pgoyette-localcount on 2016-09-14 03:04:18 +0000
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 07-Aug-2016  christos branches: 1.1.2; 1.1.4; 1.1.18; 1.1.22;
add new modules
 1.1.22.1 10-Jun-2019  christos Sync with HEAD
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 07-Aug-2016  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:55 +0000
 1.1.4.2 05-Oct-2016  skrll Sync with HEAD
 1.1.4.1 07-Aug-2016  skrll file Makefile was added on branch nick-nhusb on 2016-10-05 20:56:05 +0000
 1.1.2.2 14-Sep-2016  pgoyette Sync with HEAD
 1.1.2.1 07-Aug-2016  pgoyette file Makefile was added on branch pgoyette-localcount on 2016-09-14 03:04:18 +0000
 1.1 07-Aug-2016  christos branches: 1.1.2; 1.1.4; 1.1.18;
add new modules
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 07-Aug-2016  jdolecek file stf.ioconf was added on branch tls-maxphys on 2017-12-03 11:38:55 +0000
 1.1.4.2 05-Oct-2016  skrll Sync with HEAD
 1.1.4.1 07-Aug-2016  skrll file stf.ioconf was added on branch nick-nhusb on 2016-10-05 20:56:05 +0000
 1.1.2.2 14-Sep-2016  pgoyette Sync with HEAD
 1.1.2.1 07-Aug-2016  pgoyette file stf.ioconf was added on branch pgoyette-localcount on 2016-09-14 03:04:18 +0000
 1.1 24-Mar-2019  pgoyette branches: 1.1.4;
Add a loadable module for tap(4).

The code was already modularized, we simply didn't build the loadable
module.

Note also that since the tap(4) device can be reasonably accessed by
either creating a device instance (using ifconfig(8)) or by opening
/dev/tap, we need to create both if_tap.kmod and tap.kmod (similar to
what is done with tun(4)).
 1.1.4.2 10-Jun-2019  christos Sync with HEAD
 1.1.4.1 24-Mar-2019  christos file Makefile was added on branch phil-wifi on 2019-06-10 22:09:29 +0000
 1.1 24-Mar-2019  pgoyette branches: 1.1.4;
Add a loadable module for tap(4).

The code was already modularized, we simply didn't build the loadable
module.

Note also that since the tap(4) device can be reasonably accessed by
either creating a device instance (using ifconfig(8)) or by opening
/dev/tap, we need to create both if_tap.kmod and tap.kmod (similar to
what is done with tun(4)).
 1.1.4.2 10-Jun-2019  christos Sync with HEAD
 1.1.4.1 24-Mar-2019  christos file tap.ioconf was added on branch phil-wifi on 2019-06-10 22:09:29 +0000
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 07-Aug-2016  christos branches: 1.1.2; 1.1.4; 1.1.18; 1.1.22;
add new modules
 1.1.22.1 10-Jun-2019  christos Sync with HEAD
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 07-Aug-2016  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:56 +0000
 1.1.4.2 05-Oct-2016  skrll Sync with HEAD
 1.1.4.1 07-Aug-2016  skrll file Makefile was added on branch nick-nhusb on 2016-10-05 20:56:05 +0000
 1.1.2.2 14-Sep-2016  pgoyette Sync with HEAD
 1.1.2.1 07-Aug-2016  pgoyette file Makefile was added on branch pgoyette-localcount on 2016-09-14 03:04:18 +0000
 1.1 07-Aug-2016  christos branches: 1.1.2; 1.1.4; 1.1.18;
add new modules
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 07-Aug-2016  jdolecek file tun.ioconf was added on branch tls-maxphys on 2017-12-03 11:38:56 +0000
 1.1.4.2 05-Oct-2016  skrll Sync with HEAD
 1.1.4.1 07-Aug-2016  skrll file tun.ioconf was added on branch nick-nhusb on 2016-10-05 20:56:05 +0000
 1.1.2.2 14-Sep-2016  pgoyette Sync with HEAD
 1.1.2.1 07-Aug-2016  pgoyette file tun.ioconf was added on branch pgoyette-localcount on 2016-09-14 03:04:18 +0000
 1.1 08-Aug-2019  skrll branches: 1.1.8;
Build an if_udav module (untested)
 1.1.8.2 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.1.8.1 08-Aug-2019  martin file Makefile was added on branch phil-wifi on 2020-04-13 08:05:12 +0000
 1.1 08-Aug-2019  skrll branches: 1.1.8;
Build an if_udav module (untested)
 1.1.8.2 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.1.8.1 08-Aug-2019  martin file if_udav.ioconf was added on branch phil-wifi on 2020-04-13 08:05:12 +0000
 1.1 17-Sep-2019  mrg branches: 1.1.8;
add modules for all usbnet drivers not present.
only some (axe, axen, ure, cdce) of these are tested.

will link into build in a separate change.
 1.1.8.2 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.1.8.1 17-Sep-2019  martin file Makefile was added on branch phil-wifi on 2020-04-13 08:05:12 +0000
 1.1 17-Sep-2019  mrg branches: 1.1.8;
add modules for all usbnet drivers not present.
only some (axe, axen, ure, cdce) of these are tested.

will link into build in a separate change.
 1.1.8.2 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.1.8.1 17-Sep-2019  martin file if_upl.ioconf was added on branch phil-wifi on 2020-04-13 08:05:12 +0000
 1.2 17-Feb-2019  rin branches: 1.2.4;
Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 06-Feb-2019  rin Add ure(4): RealTek RTL8152/RTL8153 10/100/Gigabit USB Ethernet device.
Ported from OpenBSD. Support for RX/TX checksum offload added by myself.
 1.2.4.2 10-Jun-2019  christos Sync with HEAD
 1.2.4.1 17-Feb-2019  christos file Makefile was added on branch phil-wifi on 2019-06-10 22:09:30 +0000
 1.1 06-Feb-2019  rin branches: 1.1.4;
Add ure(4): RealTek RTL8152/RTL8153 10/100/Gigabit USB Ethernet device.
Ported from OpenBSD. Support for RX/TX checksum offload added by myself.
 1.1.4.2 10-Jun-2019  christos Sync with HEAD
 1.1.4.1 06-Feb-2019  christos file if_ure.ioconf was added on branch phil-wifi on 2019-06-10 22:09:30 +0000
 1.1 17-Sep-2019  mrg branches: 1.1.8;
add modules for all usbnet drivers not present.
only some (axe, axen, ure, cdce) of these are tested.

will link into build in a separate change.
 1.1.8.2 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.1.8.1 17-Sep-2019  martin file Makefile was added on branch phil-wifi on 2020-04-13 08:05:13 +0000
 1.1 17-Sep-2019  mrg branches: 1.1.8;
add modules for all usbnet drivers not present.
only some (axe, axen, ure, cdce) of these are tested.

will link into build in a separate change.
 1.1.8.2 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.1.8.1 17-Sep-2019  martin file if_url.ioconf was added on branch phil-wifi on 2020-04-13 08:05:13 +0000
 1.1 17-Sep-2019  mrg branches: 1.1.8;
add modules for all usbnet drivers not present.
only some (axe, axen, ure, cdce) of these are tested.

will link into build in a separate change.
 1.1.8.2 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.1.8.1 17-Sep-2019  martin file Makefile was added on branch phil-wifi on 2020-04-13 08:05:13 +0000
 1.1 17-Sep-2019  mrg branches: 1.1.8;
add modules for all usbnet drivers not present.
only some (axe, axen, ure, cdce) of these are tested.

will link into build in a separate change.
 1.1.8.2 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.1.8.1 17-Sep-2019  martin file if_urndis.ioconf was added on branch phil-wifi on 2020-04-13 08:05:13 +0000
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 25-Mar-2012  nonaka branches: 1.1.2; 1.1.4; 1.1.44;
Added urtwn(4), a driver for Realtek RTL8188CU/RTL8192CU USB IEEE 802.11b/g/n wireless network devices.
 1.1.44.1 10-Jun-2019  christos Sync with HEAD
 1.1.4.2 14-Jun-2012  sborrill Pull up the following revisions(s) (requested by riz in ticket #326):
distrib/sets/lists/base/mi: 1.989
distrib/sets/lists/man/mi: 1.1385
etc/mtree/NetBSD.dist.base: 1.99
share/man/man4/Makefile: 1.583
share/man/man4/urtwn.4: 1.1
share/man/man4/usb.4: 1.97
sys/arch/amd64/conf/GENERIC: 1.351
sys/arch/i386/conf/GENERIC: 1.1068
sys/dev/usb/files.usb: 1.121
sys/dev/usb/if_urtwn.c: 1.1-1.4
sys/dev/usb/if_urtwn_data.h: 1.1
sys/dev/usb/if_urtwnreg.h: 1.1
sys/dev/usb/if_urtwnvar.h: 1.1
sys/dev/usb/usbdevices.config: 1.13
sys/dev/usb/usbdevs: 1.621 via patch
sys/dev/usb/usbdevs.h: regen
sys/dev/usb/usbdevs_data.h: regen
sys/modules/if_urtwn/Makefile: 1.1
sys/modules/if_urtwn/if_urtwn.ioconf: 1.1

Add support for urtwn(4) wireless. Ported from OpenBSD
 1.1.4.1 25-Mar-2012  sborrill file Makefile was added on branch netbsd-6 on 2012-06-14 09:48:48 +0000
 1.1.2.2 17-Apr-2012  yamt sync with head
 1.1.2.1 25-Mar-2012  yamt file Makefile was added on branch yamt-pagecache on 2012-04-17 00:08:36 +0000
 1.2 30-May-2012  nonaka branches: 1.2.2;
Use collect device.
 1.1 25-Mar-2012  nonaka branches: 1.1.2;
Added urtwn(4), a driver for Realtek RTL8188CU/RTL8192CU USB IEEE 802.11b/g/n wireless network devices.
 1.1.2.3 30-Oct-2012  yamt sync with head
 1.1.2.2 17-Apr-2012  yamt sync with head
 1.1.2.1 25-Mar-2012  yamt file if_urtwn.ioconf was added on branch yamt-pagecache on 2012-04-17 00:08:36 +0000
 1.2.2.2 14-Jun-2012  sborrill Pull up the following revisions(s) (requested by riz in ticket #326):
distrib/sets/lists/base/mi: 1.989
distrib/sets/lists/man/mi: 1.1385
etc/mtree/NetBSD.dist.base: 1.99
share/man/man4/Makefile: 1.583
share/man/man4/urtwn.4: 1.1
share/man/man4/usb.4: 1.97
sys/arch/amd64/conf/GENERIC: 1.351
sys/arch/i386/conf/GENERIC: 1.1068
sys/dev/usb/files.usb: 1.121
sys/dev/usb/if_urtwn.c: 1.1-1.4
sys/dev/usb/if_urtwn_data.h: 1.1
sys/dev/usb/if_urtwnreg.h: 1.1
sys/dev/usb/if_urtwnvar.h: 1.1
sys/dev/usb/usbdevices.config: 1.13
sys/dev/usb/usbdevs: 1.621 via patch
sys/dev/usb/usbdevs.h: regen
sys/dev/usb/usbdevs_data.h: regen
sys/modules/if_urtwn/Makefile: 1.1
sys/modules/if_urtwn/if_urtwn.ioconf: 1.1

Add support for urtwn(4) wireless. Ported from OpenBSD
 1.2.2.1 30-May-2012  sborrill file if_urtwn.ioconf was added on branch netbsd-6 on 2012-06-14 09:48:48 +0000
 1.2 21-Oct-2025  pgoyette Add WARNS=3 as needed for -Wsign-compare issues
 1.1 27-Sep-2016  pgoyette branches: 1.1.2; 1.1.4; 1.1.18;
Add module build infrastructure for ld and its attachments
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 27-Sep-2016  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:56 +0000
 1.1.4.2 04-Nov-2016  pgoyette Sync with HEAD
 1.1.4.1 27-Sep-2016  pgoyette file Makefile was added on branch pgoyette-localcount on 2016-11-04 14:49:18 +0000
 1.1.2.2 05-Oct-2016  skrll Sync with HEAD
 1.1.2.1 27-Sep-2016  skrll file Makefile was added on branch nick-nhusb on 2016-10-05 20:56:06 +0000
 1.1 27-Sep-2016  pgoyette branches: 1.1.2; 1.1.4; 1.1.18;
Add module build infrastructure for ld and its attachments
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 27-Sep-2016  jdolecek file if_vioif.ioconf was added on branch tls-maxphys on 2017-12-03 11:38:56 +0000
 1.1.4.2 04-Nov-2016  pgoyette Sync with HEAD
 1.1.4.1 27-Sep-2016  pgoyette file if_vioif.ioconf was added on branch pgoyette-localcount on 2016-11-04 14:49:18 +0000
 1.1.2.2 05-Oct-2016  skrll Sync with HEAD
 1.1.2.1 27-Sep-2016  skrll file if_vioif.ioconf was added on branch nick-nhusb on 2016-10-05 20:56:06 +0000
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 07-Aug-2016  christos branches: 1.1.2; 1.1.4; 1.1.18; 1.1.22;
add new modules
 1.1.22.1 10-Jun-2019  christos Sync with HEAD
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 07-Aug-2016  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:56 +0000
 1.1.4.2 05-Oct-2016  skrll Sync with HEAD
 1.1.4.1 07-Aug-2016  skrll file Makefile was added on branch nick-nhusb on 2016-10-05 20:56:06 +0000
 1.1.2.2 14-Sep-2016  pgoyette Sync with HEAD
 1.1.2.1 07-Aug-2016  pgoyette file Makefile was added on branch pgoyette-localcount on 2016-09-14 03:04:19 +0000
 1.1 07-Aug-2016  christos branches: 1.1.2; 1.1.4; 1.1.18;
add new modules
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 07-Aug-2016  jdolecek file vlan.ioconf was added on branch tls-maxphys on 2017-12-03 11:38:56 +0000
 1.1.4.2 05-Oct-2016  skrll Sync with HEAD
 1.1.4.1 07-Aug-2016  skrll file vlan.ioconf was added on branch nick-nhusb on 2016-10-05 20:56:06 +0000
 1.1.2.2 14-Sep-2016  pgoyette Sync with HEAD
 1.1.2.1 07-Aug-2016  pgoyette file vlan.ioconf was added on branch pgoyette-localcount on 2016-09-14 03:04:19 +0000
 1.1 14-Oct-2020  ryo modularize, and fix build error
 1.1 14-Oct-2020  ryo modularize, and fix build error
 1.2 27-Jan-2022  jakllsch Turn off ALTQ in if_wg module, to match default kernel configs
 1.1 17-Aug-2021  christos modules for blake2s libsodium and if_wg
 1.1 17-Aug-2021  christos modules for blake2s libsodium and if_wg
 1.7 01-Apr-2022  pgoyette Split i2c_subr.c into a separate module rather than including it in
the iic module. There are valid configurations where i2c_subr code
can be both built-in and part of a loaded module (eg, piixpm is in
the kernel, but the iic module is loaded later). This causes the
in-kernel linker to detect a duplicate symbol.
 1.6 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.5 27-Feb-2018  pgoyette branches: 1.5.4;
The iic module needs to include 2c_subr so that i2cbus modules can
reference iicbus_print()
 1.4 07-Jun-2016  pgoyette Create separate modules for i2c_bitbang and bpf_filter so these files
can be included in kernels which need them without also duplicating
them in other modules. Removes the duplicate symbols I found which
prevented loading i2c and bpf modules after having fixed PR 45125.
 1.3 03-Oct-2011  jmcneill branches: 1.3.12; 1.3.30;
fix build for kernels with i2c host controller drivers but no iic(4)
driver present
 1.2 02-Oct-2011  jmcneill rename ioconf file to match module name, and remove an invalid include path
from cppflags
 1.1 02-Oct-2011  mbalmer Modules for iic(4) and gpioiic(4).
 1.3.30.1 09-Jul-2016  skrll Sync with HEAD
 1.3.12.1 03-Dec-2017  jdolecek update from HEAD
 1.5.4.1 10-Jun-2019  christos Sync with HEAD
 1.3 02-Oct-2011  jmcneill rename ioconf file to match module name, and remove an invalid include path
from cppflags
 1.2 02-Oct-2011  mbalmer Build iic(4) and gpioiic(4) as modules.
 1.1 02-Oct-2011  mbalmer Modules for iic(4) and gpioiic(4).
 1.2 04-Mar-2014  ozaki-r Remove unnecessary files.i2c inclusion

files.i2c is already included in conf/files. So we don't need to include
it in this file.

This fix shuts up many warnings on building sys/modules/iic.
 1.1 02-Oct-2011  jmcneill branches: 1.1.2; 1.1.12; 1.1.16;
rename ioconf file to match module name, and remove an invalid include path
from cppflags
 1.1.16.1 18-May-2014  rmind sync with head
 1.1.12.1 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.1.2.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.2 01-Mar-2018  pgoyette Adjust PATHs for files that were moved
 1.1 25-Feb-2018  pgoyette Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.
 1.2 03-Mar-2018  pgoyette Update the ioconf files to reflect the move of the device source code
into arch/x86/pci/

Without this the devices don't attach.
 1.1 25-Feb-2018  pgoyette Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.
 1.2 01-Mar-2018  pgoyette Adjust PATHs for files that were moved
 1.1 25-Feb-2018  pgoyette Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.
 1.2 03-Mar-2018  pgoyette Update the ioconf files to reflect the move of the device source code
into arch/x86/pci/

Without this the devices don't attach.
 1.1 25-Feb-2018  pgoyette Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.
 1.1 09-Dec-2017  pgoyette branches: 1.1.2;
Split ip_ecn code into its own module, so it can be shared between
gif(4), stf(4), and ipsec(4). Without this, loading the if_gif
module can result in redefined global symbols if either ipsec(4) or
stf(4) but not gif(4) is built into the kernel.

Fixes PR kern/52795 (as reported by martin@ via irc).

XXX pullup to netbsd-8
 1.1.2.2 21-Dec-2017  snj Pull up following revision(s) (requested by pgoyette in ticket #436):
distrib/sets/lists/modules/mi: revision 1.112
sys/modules/Makefile: revision 1.196
sys/modules/ip_ecn/Makefile: revision 1.1
sys/modules/if_gif/Makefile: revision 1.3
sys/net/if_gif.c: revision 1.136
sys/netinet/ip_ecn.c: revision 1.17
Split ip_ecn code into its own module, so it can be shared between
gif(4), stf(4), and ipsec(4). Without this, loading the if_gif
module can result in redefined global symbols if either ipsec(4) or
stf(4) but not gif(4) is built into the kernel.
Fixes PR kern/52795 (as reported by martin@ via irc).
 1.1.2.1 09-Dec-2017  snj file Makefile was added on branch netbsd-8 on 2017-12-21 19:14:41 +0000
 1.8 03-Jun-2023  lukem bsd.own.mk: rename to CC_WNO_ADDRESS_OF_PACKED_MEMBER

Provide a single variable
CC_WNO_ADDRESS_OF_PACKED_MEMBER
with options for both clang and gcc, to replace
CLANG_NO_ADDR_OF_PACKED_MEMBER
CC_NO_ADDR_OF_PACKED_MEMBER
GCC_NO_ADDR_OF_PACKED_MEMBER

Using the convention CC_compilerflag, where compilerflag
is based on the full compiler flag name.
 1.7 29-May-2023  lukem bsd.own.mk: rename NO_ADDR_OF_PACKED_MEMBER to CC_NO_ADDR_OF_PACKED_MEMBER

Add "CC_" prefix to NO_ADDR_OF_PACKED_MEMBER.

We now have the following convention:
GCC_NO_*: Disable specific warnings from GCC.
CLANG_NO_*: Disable specific warnings from Clang.
CC_NO_*: Disable specific warnings from both Clang and GCC.

This reserves "NO_*" Makefile variables to disable other features.

Some space->tab fixes.
 1.6 18-Oct-2020  christos Provide a global no-packed-address for both gcc and clang
 1.5 18-Oct-2020  christos use the GCC_ warning variable
 1.4 18-Oct-2020  christos Avoid alignment of packed member
 1.3 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.2 13-Jun-2016  ryoon branches: 1.2.2; 1.2.18; 1.2.22;
Fix buld with clang, add warning option exceptions
 1.1 09-Jun-2016  pgoyette New module for ipl (aka ipfilter).
 1.2.22.1 10-Jun-2019  christos Sync with HEAD
 1.2.18.2 03-Dec-2017  jdolecek update from HEAD
 1.2.18.1 13-Jun-2016  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:56 +0000
 1.2.2.2 09-Jul-2016  skrll Sync with HEAD
 1.2.2.1 13-Jun-2016  skrll file Makefile was added on branch nick-nhusb on 2016-07-09 20:25:21 +0000
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 28-Dec-2010  jmcneill branches: 1.1.6; 1.1.62;
add "ir" and "cir" modules
 1.1.62.1 10-Jun-2019  christos Sync with HEAD
 1.1.6.2 05-Mar-2011  rmind sync with head
 1.1.6.1 28-Dec-2010  rmind file Makefile was added on branch rmind-uvmplock on 2011-03-05 20:55:45 +0000
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 19-Jul-2011  jmcneill branches: 1.1.54;
irmce module glue
 1.1.54.1 10-Jun-2019  christos Sync with HEAD
 1.1 19-Jul-2011  jmcneill irmce module glue
 1.5 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.4 20-Aug-2015  christos branches: 1.4.18;
Add ioconf entries to the pseudo-devices.
 1.3 30-May-2015  joerg Remove ISCSI_PERFTEST.
 1.2 30-May-2015  joerg Remove ISCSI_TEST_MODE and corresponding dev/iscsi_test.h header.
 1.1 15-Nov-2011  riz branches: 1.1.8; 1.1.12; 1.1.30;
Build and install new in-kernel iscsi initiator kernel module and associated
binaries (iscsid, iscsictl) if MKISCSI != no. Initiator can also be built
into a kernel by adding 'pseudo-device iscsi' in kernel configuration.
 1.1.30.2 22-Sep-2015  skrll Sync with HEAD
 1.1.30.1 06-Jun-2015  skrll Sync with HEAD
 1.1.12.1 03-Dec-2017  jdolecek update from HEAD
 1.1.8.2 17-Apr-2012  yamt sync with head
 1.1.8.1 15-Nov-2011  yamt file Makefile was added on branch yamt-pagecache on 2012-04-17 00:08:36 +0000
 1.4.18.1 10-Jun-2019  christos Sync with HEAD
 1.1 20-Aug-2015  christos branches: 1.1.2; 1.1.18;
Add ioconf entries to the pseudo-devices.
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 20-Aug-2015  jdolecek file iscsi.ioconf was added on branch tls-maxphys on 2017-12-03 11:38:56 +0000
 1.1.2.2 22-Sep-2015  skrll Sync with HEAD
 1.1.2.1 20-Aug-2015  skrll file iscsi.ioconf was added on branch nick-nhusb on 2015-09-22 12:06:09 +0000
 1.3 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.2 13-Oct-2011  plunky branches: 1.2.54;
max WARNS is 4
 1.1 29-Jul-2011  jmcneill module build glue for itesio
 1.2.54.1 10-Jun-2019  christos Sync with HEAD
 1.1 29-Jul-2011  jmcneill module build glue for itesio
 1.3 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.2 20-Jul-2014  hannken branches: 1.2.28;
Change kernfs from hashlist to vcache.
 1.1 28-Jun-2008  rumble branches: 1.1.2; 1.1.4; 1.1.8; 1.1.20; 1.1.48; 1.1.64;
Add of bunch of file system modules.
 1.1.64.1 10-Aug-2014  tls Rebase.
 1.1.48.1 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.1.20.2 04-May-2009  yamt sync with head.
 1.1.20.1 28-Jun-2008  yamt file Makefile was added on branch yamt-nfs-mp on 2009-05-04 08:14:10 +0000
 1.1.8.2 18-Sep-2008  wrstuden Sync with wrstuden-revivesa-base-2.
 1.1.8.1 28-Jun-2008  wrstuden file Makefile was added on branch wrstuden-revivesa on 2008-09-18 04:36:59 +0000
 1.1.4.2 03-Jul-2008  simonb Sync with head.
 1.1.4.1 28-Jun-2008  simonb file Makefile was added on branch simonb-wapbl on 2008-07-03 18:38:19 +0000
 1.1.2.2 29-Jun-2008  mjf Sync with HEAD.
 1.1.2.1 28-Jun-2008  mjf file Makefile was added on branch mjf-devfs2 on 2008-06-29 09:33:17 +0000
 1.2.28.1 10-Jun-2019  christos Sync with HEAD
 1.3 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.2 26-May-2011  joerg branches: 1.2.56;
Default to -Wno-sign-compare -Wno-pointer-sign for clang.
Push -Wno-array-bounds down to the cases that depend on it.
Selectively disable warnings for 3rd party software or non-trivial
issues to be reviewed later to get clang -Werror to build most of the
tree.
 1.1 05-Dec-2008  ad branches: 1.1.4; 1.1.6; 1.1.10; 1.1.14; 1.1.16;
PR kern/40110: null, overlay and umap modules loading -> panic (layerfs symbols not there)

Add a layerfs module.
 1.1.16.1 06-Jun-2011  jruoho Sync with HEAD.
 1.1.14.1 31-May-2011  rmind sync with head
 1.1.10.2 04-May-2009  yamt sync with head.
 1.1.10.1 05-Dec-2008  yamt file Makefile was added on branch yamt-nfs-mp on 2009-05-04 08:14:10 +0000
 1.1.6.2 19-Jan-2009  skrll Sync with HEAD.
 1.1.6.1 05-Dec-2008  skrll file Makefile was added on branch nick-hppapmap on 2009-01-19 13:20:09 +0000
 1.1.4.2 17-Jan-2009  mjf Sync with HEAD.
 1.1.4.1 05-Dec-2008  mjf file Makefile was added on branch mjf-devfs2 on 2009-01-17 13:29:30 +0000
 1.2.56.1 10-Jun-2019  christos Sync with HEAD
 1.2 21-Feb-2018  pgoyette On the off chance that someone tries to use the modular version of the
ld(4) driver, provide an ld.ioconf file which will declare the global ld_cd
 1.1 27-Sep-2016  pgoyette branches: 1.1.2; 1.1.4; 1.1.18;
Add module build infrastructure for ld and its attachments
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 27-Sep-2016  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:56 +0000
 1.1.4.2 04-Nov-2016  pgoyette Sync with HEAD
 1.1.4.1 27-Sep-2016  pgoyette file Makefile was added on branch pgoyette-localcount on 2016-11-04 14:49:18 +0000
 1.1.2.2 05-Oct-2016  skrll Sync with HEAD
 1.1.2.1 27-Sep-2016  skrll file Makefile was added on branch nick-nhusb on 2016-10-05 20:56:06 +0000
 1.1 21-Feb-2018  pgoyette On the off chance that someone tries to use the modular version of the
ld(4) driver, provide an ld.ioconf file which will declare the global ld_cd
 1.1 27-Sep-2016  pgoyette branches: 1.1.2; 1.1.4; 1.1.18;
Add module build infrastructure for ld and its attachments
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 27-Sep-2016  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:56 +0000
 1.1.4.2 04-Nov-2016  pgoyette Sync with HEAD
 1.1.4.1 27-Sep-2016  pgoyette file Makefile was added on branch pgoyette-localcount on 2016-11-04 14:49:18 +0000
 1.1.2.2 05-Oct-2016  skrll Sync with HEAD
 1.1.2.1 27-Sep-2016  skrll file Makefile was added on branch nick-nhusb on 2016-10-05 20:56:06 +0000
 1.1 27-Sep-2016  pgoyette branches: 1.1.2; 1.1.4; 1.1.18;
Add module build infrastructure for ld and its attachments
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 27-Sep-2016  jdolecek file ld_aac.ioconf was added on branch tls-maxphys on 2017-12-03 11:38:56 +0000
 1.1.4.2 04-Nov-2016  pgoyette Sync with HEAD
 1.1.4.1 27-Sep-2016  pgoyette file ld_aac.ioconf was added on branch pgoyette-localcount on 2016-11-04 14:49:18 +0000
 1.1.2.2 05-Oct-2016  skrll Sync with HEAD
 1.1.2.1 27-Sep-2016  skrll file ld_aac.ioconf was added on branch nick-nhusb on 2016-10-05 20:56:06 +0000
 1.1 27-Sep-2016  pgoyette branches: 1.1.2; 1.1.4; 1.1.18;
Add module build infrastructure for ld and its attachments
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 27-Sep-2016  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:56 +0000
 1.1.4.2 04-Nov-2016  pgoyette Sync with HEAD
 1.1.4.1 27-Sep-2016  pgoyette file Makefile was added on branch pgoyette-localcount on 2016-11-04 14:49:19 +0000
 1.1.2.2 05-Oct-2016  skrll Sync with HEAD
 1.1.2.1 27-Sep-2016  skrll file Makefile was added on branch nick-nhusb on 2016-10-05 20:56:06 +0000
 1.1 27-Sep-2016  pgoyette branches: 1.1.2; 1.1.4; 1.1.18;
Add module build infrastructure for ld and its attachments
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 27-Sep-2016  jdolecek file ld_amr.ioconf was added on branch tls-maxphys on 2017-12-03 11:38:56 +0000
 1.1.4.2 04-Nov-2016  pgoyette Sync with HEAD
 1.1.4.1 27-Sep-2016  pgoyette file ld_amr.ioconf was added on branch pgoyette-localcount on 2016-11-04 14:49:19 +0000
 1.1.2.2 05-Oct-2016  skrll Sync with HEAD
 1.1.2.1 27-Sep-2016  skrll file ld_amr.ioconf was added on branch nick-nhusb on 2016-10-05 20:56:06 +0000
 1.2 21-Oct-2025  pgoyette Add WARNS=3 as needed for -Wsign-compare issues
 1.1 27-Sep-2016  pgoyette branches: 1.1.2; 1.1.4; 1.1.18;
Add module build infrastructure for ld and its attachments
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 27-Sep-2016  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:56 +0000
 1.1.4.2 04-Nov-2016  pgoyette Sync with HEAD
 1.1.4.1 27-Sep-2016  pgoyette file Makefile was added on branch pgoyette-localcount on 2016-11-04 14:49:19 +0000
 1.1.2.2 05-Oct-2016  skrll Sync with HEAD
 1.1.2.1 27-Sep-2016  skrll file Makefile was added on branch nick-nhusb on 2016-10-05 20:56:06 +0000
 1.1 27-Sep-2016  pgoyette branches: 1.1.2; 1.1.4; 1.1.18;
Add module build infrastructure for ld and its attachments
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 27-Sep-2016  jdolecek file ld_ataraid.ioconf was added on branch tls-maxphys on 2017-12-03 11:38:56 +0000
 1.1.4.2 04-Nov-2016  pgoyette Sync with HEAD
 1.1.4.1 27-Sep-2016  pgoyette file ld_ataraid.ioconf was added on branch pgoyette-localcount on 2016-11-04 14:49:19 +0000
 1.1.2.2 05-Oct-2016  skrll Sync with HEAD
 1.1.2.1 27-Sep-2016  skrll file ld_ataraid.ioconf was added on branch nick-nhusb on 2016-10-05 20:56:06 +0000
 1.1 27-Sep-2016  pgoyette branches: 1.1.2; 1.1.4; 1.1.18;
Add module build infrastructure for ld and its attachments
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 27-Sep-2016  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:57 +0000
 1.1.4.2 04-Nov-2016  pgoyette Sync with HEAD
 1.1.4.1 27-Sep-2016  pgoyette file Makefile was added on branch pgoyette-localcount on 2016-11-04 14:49:19 +0000
 1.1.2.2 05-Oct-2016  skrll Sync with HEAD
 1.1.2.1 27-Sep-2016  skrll file Makefile was added on branch nick-nhusb on 2016-10-05 20:56:06 +0000
 1.1 27-Sep-2016  pgoyette branches: 1.1.2; 1.1.4; 1.1.18;
Add module build infrastructure for ld and its attachments
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 27-Sep-2016  jdolecek file ld_cac.ioconf was added on branch tls-maxphys on 2017-12-03 11:38:57 +0000
 1.1.4.2 04-Nov-2016  pgoyette Sync with HEAD
 1.1.4.1 27-Sep-2016  pgoyette file ld_cac.ioconf was added on branch pgoyette-localcount on 2016-11-04 14:49:19 +0000
 1.1.2.2 05-Oct-2016  skrll Sync with HEAD
 1.1.2.1 27-Sep-2016  skrll file ld_cac.ioconf was added on branch nick-nhusb on 2016-10-05 20:56:06 +0000
 1.2 21-Oct-2025  pgoyette Add WARNS=3 as needed for -Wsign-compare issues
 1.1 27-Sep-2016  pgoyette branches: 1.1.2; 1.1.4; 1.1.18;
Add module build infrastructure for ld and its attachments
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 27-Sep-2016  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:57 +0000
 1.1.4.2 04-Nov-2016  pgoyette Sync with HEAD
 1.1.4.1 27-Sep-2016  pgoyette file Makefile was added on branch pgoyette-localcount on 2016-11-04 14:49:19 +0000
 1.1.2.2 05-Oct-2016  skrll Sync with HEAD
 1.1.2.1 27-Sep-2016  skrll file Makefile was added on branch nick-nhusb on 2016-10-05 20:56:06 +0000
 1.1 27-Sep-2016  pgoyette branches: 1.1.2; 1.1.4; 1.1.18;
Add module build infrastructure for ld and its attachments
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 27-Sep-2016  jdolecek file ld_icp.ioconf was added on branch tls-maxphys on 2017-12-03 11:38:57 +0000
 1.1.4.2 04-Nov-2016  pgoyette Sync with HEAD
 1.1.4.1 27-Sep-2016  pgoyette file ld_icp.ioconf was added on branch pgoyette-localcount on 2016-11-04 14:49:19 +0000
 1.1.2.2 05-Oct-2016  skrll Sync with HEAD
 1.1.2.1 27-Sep-2016  skrll file ld_icp.ioconf was added on branch nick-nhusb on 2016-10-05 20:56:06 +0000
 1.1 27-Sep-2016  pgoyette branches: 1.1.2; 1.1.4; 1.1.18;
Add module build infrastructure for ld and its attachments
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 27-Sep-2016  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:57 +0000
 1.1.4.2 04-Nov-2016  pgoyette Sync with HEAD
 1.1.4.1 27-Sep-2016  pgoyette file Makefile was added on branch pgoyette-localcount on 2016-11-04 14:49:19 +0000
 1.1.2.2 05-Oct-2016  skrll Sync with HEAD
 1.1.2.1 27-Sep-2016  skrll file Makefile was added on branch nick-nhusb on 2016-10-05 20:56:06 +0000
 1.1 27-Sep-2016  pgoyette branches: 1.1.2; 1.1.4; 1.1.18;
Add module build infrastructure for ld and its attachments
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 27-Sep-2016  jdolecek file ld_mlx.ioconf was added on branch tls-maxphys on 2017-12-03 11:38:57 +0000
 1.1.4.2 04-Nov-2016  pgoyette Sync with HEAD
 1.1.4.1 27-Sep-2016  pgoyette file ld_mlx.ioconf was added on branch pgoyette-localcount on 2016-11-04 14:49:19 +0000
 1.1.2.2 05-Oct-2016  skrll Sync with HEAD
 1.1.2.1 27-Sep-2016  skrll file ld_mlx.ioconf was added on branch nick-nhusb on 2016-10-05 20:56:06 +0000
 1.2 20-Feb-2019  pgoyette Another module that needs WARNS=3 to allow signed-vs-unsigned compares
 1.1 27-Sep-2016  pgoyette branches: 1.1.2; 1.1.4; 1.1.18; 1.1.22;
Add module build infrastructure for ld and its attachments
 1.1.22.1 10-Jun-2019  christos Sync with HEAD
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 27-Sep-2016  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:57 +0000
 1.1.4.2 04-Nov-2016  pgoyette Sync with HEAD
 1.1.4.1 27-Sep-2016  pgoyette file Makefile was added on branch pgoyette-localcount on 2016-11-04 14:49:19 +0000
 1.1.2.2 05-Oct-2016  skrll Sync with HEAD
 1.1.2.1 27-Sep-2016  skrll file Makefile was added on branch nick-nhusb on 2016-10-05 20:56:06 +0000
 1.1 27-Sep-2016  pgoyette branches: 1.1.2; 1.1.4; 1.1.18;
Add module build infrastructure for ld and its attachments
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 27-Sep-2016  jdolecek file ld_nvme.ioconf was added on branch tls-maxphys on 2017-12-03 11:38:57 +0000
 1.1.4.2 04-Nov-2016  pgoyette Sync with HEAD
 1.1.4.1 27-Sep-2016  pgoyette file ld_nvme.ioconf was added on branch pgoyette-localcount on 2016-11-04 14:49:19 +0000
 1.1.2.2 05-Oct-2016  skrll Sync with HEAD
 1.1.2.1 27-Sep-2016  skrll file ld_nvme.ioconf was added on branch nick-nhusb on 2016-10-05 20:56:06 +0000
 1.2 21-Oct-2025  pgoyette Add WARNS=3 as needed for -Wsign-compare issues
 1.1 27-Sep-2016  pgoyette branches: 1.1.2; 1.1.4; 1.1.18;
Add module build infrastructure for ld and its attachments
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 27-Sep-2016  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:57 +0000
 1.1.4.2 04-Nov-2016  pgoyette Sync with HEAD
 1.1.4.1 27-Sep-2016  pgoyette file Makefile was added on branch pgoyette-localcount on 2016-11-04 14:49:19 +0000
 1.1.2.2 05-Oct-2016  skrll Sync with HEAD
 1.1.2.1 27-Sep-2016  skrll file Makefile was added on branch nick-nhusb on 2016-10-05 20:56:06 +0000
 1.1 27-Sep-2016  pgoyette branches: 1.1.2; 1.1.4; 1.1.18;
Add module build infrastructure for ld and its attachments
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 27-Sep-2016  jdolecek file ld_sdmmc.ioconf was added on branch tls-maxphys on 2017-12-03 11:38:57 +0000
 1.1.4.2 04-Nov-2016  pgoyette Sync with HEAD
 1.1.4.1 27-Sep-2016  pgoyette file ld_sdmmc.ioconf was added on branch pgoyette-localcount on 2016-11-04 14:49:19 +0000
 1.1.2.2 05-Oct-2016  skrll Sync with HEAD
 1.1.2.1 27-Sep-2016  skrll file ld_sdmmc.ioconf was added on branch nick-nhusb on 2016-10-05 20:56:06 +0000
 1.1 27-Sep-2016  pgoyette branches: 1.1.2; 1.1.4; 1.1.18;
Add module build infrastructure for ld and its attachments
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 27-Sep-2016  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:57 +0000
 1.1.4.2 04-Nov-2016  pgoyette Sync with HEAD
 1.1.4.1 27-Sep-2016  pgoyette file Makefile was added on branch pgoyette-localcount on 2016-11-04 14:49:19 +0000
 1.1.2.2 05-Oct-2016  skrll Sync with HEAD
 1.1.2.1 27-Sep-2016  skrll file Makefile was added on branch nick-nhusb on 2016-10-05 20:56:06 +0000
 1.1 27-Sep-2016  pgoyette branches: 1.1.2; 1.1.4; 1.1.18;
Add module build infrastructure for ld and its attachments
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 27-Sep-2016  jdolecek file ld_twa.ioconf was added on branch tls-maxphys on 2017-12-03 11:38:57 +0000
 1.1.4.2 04-Nov-2016  pgoyette Sync with HEAD
 1.1.4.1 27-Sep-2016  pgoyette file ld_twa.ioconf was added on branch pgoyette-localcount on 2016-11-04 14:49:19 +0000
 1.1.2.2 05-Oct-2016  skrll Sync with HEAD
 1.1.2.1 27-Sep-2016  skrll file ld_twa.ioconf was added on branch nick-nhusb on 2016-10-05 20:56:07 +0000
 1.1 27-Sep-2016  pgoyette branches: 1.1.2; 1.1.4; 1.1.18;
Add module build infrastructure for ld and its attachments
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 27-Sep-2016  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:57 +0000
 1.1.4.2 04-Nov-2016  pgoyette Sync with HEAD
 1.1.4.1 27-Sep-2016  pgoyette file Makefile was added on branch pgoyette-localcount on 2016-11-04 14:49:19 +0000
 1.1.2.2 05-Oct-2016  skrll Sync with HEAD
 1.1.2.1 27-Sep-2016  skrll file Makefile was added on branch nick-nhusb on 2016-10-05 20:56:07 +0000
 1.1 27-Sep-2016  pgoyette branches: 1.1.2; 1.1.4; 1.1.18;
Add module build infrastructure for ld and its attachments
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 27-Sep-2016  jdolecek file ld_twe.ioconf was added on branch tls-maxphys on 2017-12-03 11:38:57 +0000
 1.1.4.2 04-Nov-2016  pgoyette Sync with HEAD
 1.1.4.1 27-Sep-2016  pgoyette file ld_twe.ioconf was added on branch pgoyette-localcount on 2016-11-04 14:49:19 +0000
 1.1.2.2 05-Oct-2016  skrll Sync with HEAD
 1.1.2.1 27-Sep-2016  skrll file ld_twe.ioconf was added on branch nick-nhusb on 2016-10-05 20:56:07 +0000
 1.2 21-Oct-2025  pgoyette Add WARNS=3 as needed for -Wsign-compare issues
 1.1 27-Sep-2016  pgoyette branches: 1.1.2; 1.1.4; 1.1.18;
Add module build infrastructure for ld and its attachments
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 27-Sep-2016  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:57 +0000
 1.1.4.2 04-Nov-2016  pgoyette Sync with HEAD
 1.1.4.1 27-Sep-2016  pgoyette file Makefile was added on branch pgoyette-localcount on 2016-11-04 14:49:19 +0000
 1.1.2.2 05-Oct-2016  skrll Sync with HEAD
 1.1.2.1 27-Sep-2016  skrll file Makefile was added on branch nick-nhusb on 2016-10-05 20:56:07 +0000
 1.1 27-Sep-2016  pgoyette branches: 1.1.2; 1.1.4; 1.1.18;
Add module build infrastructure for ld and its attachments
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 27-Sep-2016  jdolecek file ld_virtio.ioconf was added on branch tls-maxphys on 2017-12-03 11:38:57 +0000
 1.1.4.2 04-Nov-2016  pgoyette Sync with HEAD
 1.1.4.1 27-Sep-2016  pgoyette file ld_virtio.ioconf was added on branch pgoyette-localcount on 2016-11-04 14:49:19 +0000
 1.1.2.2 05-Oct-2016  skrll Sync with HEAD
 1.1.2.1 27-Sep-2016  skrll file ld_virtio.ioconf was added on branch nick-nhusb on 2016-10-05 20:56:07 +0000
 1.11 07-Oct-2023  rin Drop -O[01] hacks for vax; no longer necessary for patched GCC 10

PR port-vax/57646: Import major vax toolchain fix by Kalvis Duckmanton

XXXRO: GCC 12 may require hacks for a while, but it turned out that
GCC 12 should be treated differently from older versions; a lot of new
files need -O[01] flags, while some may no longer require it.

I will take a look later.

Note that these hacks are not required if Kalvis's patches for GCC 12
are applied.

Keep doc/HACKS entries for a while (will be sync with update for GCC 12).

diff --git a/crypto/external/bsd/openssh/lib/Makefile b/crypto/external/bsd/openssh/lib/Makefile
index 96a93f5e396..4e38be1b642 100644
--- a/crypto/external/bsd/openssh/lib/Makefile
+++ b/crypto/external/bsd/openssh/lib/Makefile
@@ -117,12 +117,6 @@ COPTS.${f}.c+= -Wno-pointer-sign
# XXX
COPTS.channels.c+= -fno-strict-aliasing

-# XXX
-.if ${MACHINE} == "vax"
-COPTS.poly1305.c+= -O0
-COPTS.umac.c+= -O0
-.endif
-
COPTS.hostfile.c+= ${CC_WNO_FORMAT_TRUNCATION}
COPTS.sshkey.c+= ${CC_WNO_FORMAT_TRUNCATION}
COPTS.cipher.c+= -Wno-error=deprecated-declarations
diff --git a/distrib/utils/x_ping/Makefile b/distrib/utils/x_ping/Makefile
index f1c452a0d60..8ee77580a3f 100644
--- a/distrib/utils/x_ping/Makefile
+++ b/distrib/utils/x_ping/Makefile
@@ -12,10 +12,6 @@ CPPFLAGS+= -I${SRCDIR} -DCRUNCHOPS
DPADD= ${LIBM}
LDADD= -lm

-.if ${MACHINE_ARCH} == "vax"
-COPTS.ping.c=-O0
-.endif
-
.include <bsd.prog.mk>

.PATH: ${SRCDIR}
diff --git a/external/apache2/argon2/lib/libargon2/Makefile.inc b/external/apache2/argon2/lib/libargon2/Makefile.inc
index d3f4470c6c7..6a1dd146d7d 100644
--- a/external/apache2/argon2/lib/libargon2/Makefile.inc
+++ b/external/apache2/argon2/lib/libargon2/Makefile.inc
@@ -16,7 +16,3 @@ CFLAGS+= -pthread
LDADD+=-lpthread
DPADD+=${LIBPTHREAD}
.endif
-
-.if ${MACHINE} == "vax"
-COPTS.blake2b.c+= -O0
-.endif
diff --git a/external/bsd/jemalloc/lib/Makefile.inc b/external/bsd/jemalloc/lib/Makefile.inc
index 2f524358f46..d5da774f293 100644
--- a/external/bsd/jemalloc/lib/Makefile.inc
+++ b/external/bsd/jemalloc/lib/Makefile.inc
@@ -53,12 +53,6 @@ COPTS.ctl.c+=-Wno-error=stack-protector
COPTS.stats.c+=-Wno-error=stack-protector
COPTS.tcache.c+=-Wno-error=stack-protector

-.if ${MACHINE_ARCH} == "vax"
-# in merge_overlapping_regs, at regrename.c
-COPTS.arena.c+=-O0
-COPTS.extent.c+=-O0
-.endif
-
SRCS+=${JEMALLOC_SRCS}

jemalloc.d jemalloc.pico jemalloc.o jemalloc.ln jemalloc.po jemalloc.go: \
diff --git a/external/bsd/mdocml/lib/libmandoc/Makefile b/external/bsd/mdocml/lib/libmandoc/Makefile
index 40d7e29ae88..dfd3077a2c7 100644
--- a/external/bsd/mdocml/lib/libmandoc/Makefile
+++ b/external/bsd/mdocml/lib/libmandoc/Makefile
@@ -39,11 +39,6 @@ tbl_opts.c

MAN= mandoc.3

-# XXX
-.if ${MACHINE} == "vax"
-COPTS.mdoc_macro.c+=-O0
-.endif
-
COPTS.man_validate.c+=-Wno-error=array-bounds

.include <bsd.lib.mk>
diff --git a/external/gpl3/binutils.old/lib/libbfd/Makefile b/external/gpl3/binutils.old/lib/libbfd/Makefile
index 03477232b55..74a354532fa 100644
--- a/external/gpl3/binutils.old/lib/libbfd/Makefile
+++ b/external/gpl3/binutils.old/lib/libbfd/Makefile
@@ -41,10 +41,6 @@ CPPFLAGS+= -I${.CURDIR}/arch/${BFD_MACHINE_ARCH} -I${DIST}/include -I. \
-DDEBUGDIR=\"${DEBUGDIR}\" -DLIBDIR=\"${LIBDIR}\" \
-DBINDIR=\"${BINDIR}\"

-.if (${BFD_MACHINE_ARCH} == "vax")
-CPPFLAGS.elf.c += -O0
-.endif
-
COPTS.pei-x86_64.c+= -Wno-stack-protector
COPTS.elfxx-mips.c+= -Wno-stack-protector
COPTS.elf.c+= ${${ACTIVE_CC} == "gcc" && ${HAVE_GCC:U0} >= 10:? -Wno-overflow :}
diff --git a/external/gpl3/binutils/lib/libbfd/Makefile b/external/gpl3/binutils/lib/libbfd/Makefile
index 00cb2b20081..a3f0c25fd35 100644
--- a/external/gpl3/binutils/lib/libbfd/Makefile
+++ b/external/gpl3/binutils/lib/libbfd/Makefile
@@ -41,10 +41,6 @@ CPPFLAGS+= -I${.CURDIR}/arch/${BFD_MACHINE_ARCH} -I${DIST}/include -I. \
-DDEBUGDIR=\"${DEBUGDIR}\" -DLIBDIR=\"${LIBDIR}\" \
-DBINDIR=\"${BINDIR}\"

-.if (${BFD_MACHINE_ARCH} == "vax")
-CPPFLAGS.elf.c += -O0
-.endif
-
COPTS.pei-x86_64.c+= -Wno-stack-protector
COPTS.elfxx-mips.c+= -Wno-stack-protector
COPTS.elf.c+= ${${ACTIVE_CC} == "gcc" && ${HAVE_GCC:U0} >= 10:? -Wno-overflow :}
diff --git a/external/gpl3/gcc.old/lib/Makefile.sanitizer b/external/gpl3/gcc.old/lib/Makefile.sanitizer
index efd36ae4bee..5173a5109a0 100644
--- a/external/gpl3/gcc.old/lib/Makefile.sanitizer
+++ b/external/gpl3/gcc.old/lib/Makefile.sanitizer
@@ -88,22 +88,3 @@ COPTS+=-fno-builtin -fno-exceptions -fno-rtti -funwind-tables

# Can't profile without it`
#-fomit-frame-pointer
-
-.if ${MACHINE_ARCH} == "vax"
-COPTS.sanitizer_allocator.cc += -O1
-COPTS.sanitizer_common.cc += -O1
-COPTS.sanitizer_common_libcdep.cc += -O1
-COPTS.sanitizer_coverage_libcdep.cc += -O1
-COPTS.sanitizer_coverage_mapping_libcdep.cc += -O1
-COPTS.sanitizer_deadlock_detector1.cc += -O1
-COPTS.sanitizer_mac.cc += -O1
-COPTS.sanitizer_netbsd.cc += -O1
-COPTS.sanitizer_posix.cc += -O1
-COPTS.sanitizer_printf.cc += -O1
-COPTS.sanitizer_procmaps_common.cc += -O1
-COPTS.sanitizer_stackdepot.cc += -O1
-COPTS.sanitizer_symbolizer_libcdep.cc += -O1
-COPTS.sanitizer_symbolizer_report.cc += -O1
-COPTS.ubsan_diag.cc += -O1
-COPTS.ubsan_init.cc += -O1
-.endif
diff --git a/external/gpl3/gcc.old/lib/libasan/Makefile b/external/gpl3/gcc.old/lib/libasan/Makefile
index 1e6f9608abe..3da7bbf2f58 100644
--- a/external/gpl3/gcc.old/lib/libasan/Makefile
+++ b/external/gpl3/gcc.old/lib/libasan/Makefile
@@ -49,14 +49,6 @@ LIBDPLIBS+= m ${NETBSDSRCDIR}/lib/libm
LIBDPLIBS+= pthread ${NETBSDSRCDIR}/lib/libpthread
CPPFLAGS+=-DCAN_SANITIZE_UB=0

-.if ${MACHINE_ARCH} == "vax"
-COPTS.asan_allocator.cc += -O1
-COPTS.asan_report.cc += -O1
-COPTS.sanitizer_file.cc += -O1
-COPTS.ubsan_diag.cc += -O1
-COPTS.ubsan_init.cc += -O1
-.endif
-
.if ${MACHINE_ARCH} == "mipsel" || ${MACHINE_ARCH} == "mipseb"
COPTS.asan_interceptors.cc += -O1
.endif
diff --git a/external/gpl3/gcc.old/lib/liblsan/Makefile b/external/gpl3/gcc.old/lib/liblsan/Makefile
index 4578544a9a8..ddb7981077c 100644
--- a/external/gpl3/gcc.old/lib/liblsan/Makefile
+++ b/external/gpl3/gcc.old/lib/liblsan/Makefile
@@ -16,11 +16,6 @@ LSAN_SRCS+= \
lsan_linux.cc \
lsan_thread.cc

-.if ${MACHINE_ARCH} == "vax"
-COPTS.lsan_allocator.cc += -O1
-COPTS.sanitizer_file.cc += -O1
-.endif
-
LIB= lsan
SRCS+= ${LSAN_SRCS}
LIBDPLIBS+= m ${NETBSDSRCDIR}/lib/libm
diff --git a/external/gpl3/gcc.old/lib/libubsan/Makefile b/external/gpl3/gcc.old/lib/libubsan/Makefile
index 2e2faca7b1c..9de82550d14 100644
--- a/external/gpl3/gcc.old/lib/libubsan/Makefile
+++ b/external/gpl3/gcc.old/lib/libubsan/Makefile
@@ -26,10 +26,6 @@ UBSAN_SRCS= \
COPTS.${_s}.cc+=-frtti
.endfor

-.if ${MACHINE_ARCH} == "vax"
-COPTS.sanitizer_file.cc += -O1
-.endif
-
LIB= ubsan
SRCS+= ${UBSAN_SRCS}
LIBDPLIBS+= m ${NETBSDSRCDIR}/lib/libm
diff --git a/external/gpl3/gcc.old/usr.bin/cc1/Makefile b/external/gpl3/gcc.old/usr.bin/cc1/Makefile
index c55e292ee8e..ff12a5be524 100644
--- a/external/gpl3/gcc.old/usr.bin/cc1/Makefile
+++ b/external/gpl3/gcc.old/usr.bin/cc1/Makefile
@@ -46,17 +46,6 @@ CPPFLAGS.default-c.c+= -I${BACKENDOBJ}
BUILDSYMLINKS+= ${GNUHOSTDIST}/gcc/config/sh/sh-c.cc sh-c.c
.endif

-.if ${MACHINE_CPU} == "vax"
-COPTS.c-decl.c+=-O0
-COPTS.c-typeck.c+=-O0
-COPTS.c-array-notation.c+=-O0
-COPTS.c-common.c+=-O0
-COPTS.c-ada-spec.c+=-O0
-COPTS.cilk.c+=-O0
-COPTS.c-ubsan.c+=-O0
-COPTS.cc1-checksum.c+=-O0
-.endif
-
.if ${MACHINE_ARCH} == "mipseb" || ${MACHINE_ARCH} == "mipsel"
COPTS.c-common.c+=-O3
.endif
diff --git a/external/gpl3/gcc.old/usr.bin/cc1obj/Makefile b/external/gpl3/gcc.old/usr.bin/cc1obj/Makefile
index 3123ee0d60b..aab82ad3448 100644
--- a/external/gpl3/gcc.old/usr.bin/cc1obj/Makefile
+++ b/external/gpl3/gcc.old/usr.bin/cc1obj/Makefile
@@ -44,16 +44,8 @@ COPTS.objc-act.c+= -Wno-stack-protector
COPTS.objc-gnu-runtime-abi-01.c+= -Wno-stack-protector
COPTS.objc-next-runtime-abi-01.c+= -Wno-stack-protector

-.if ${MACHINE_ARCH} == "vax"
-COPTS.c-decl.c+=-O0
-COPTS.c-typeck.c+=-O0
-COPTS.c-array-notation.c+=-O0
-COPTS.c-common.c+=-O0
-COPTS.c-ada-spec.c+=-O0
-COPTS.cilk.c+=-O0
-COPTS.c-ubsan.c+=-O0
-COPTS.cc1obj-checksum.c+=-O0
-.endif
+COPTS.c-cppbuiltin.c+= ${${ACTIVE_CC} == "gcc" && ${HAVE_GCC:U0} == 8:? -Wno-error=format-overflow :}
+COPTS.c-typeck.c+= ${${ACTIVE_CC} == "gcc" && ${HAVE_GCC:U0} == 8:? -Wno-error=format-overflow :}

.if ${MACHINE_ARCH} == "mipseb" || ${MACHINE_ARCH} == "mipsel"
COPTS.c-common.c+=-O3
diff --git a/external/gpl3/gcc.old/usr.bin/cc1objplus/Makefile b/external/gpl3/gcc.old/usr.bin/cc1objplus/Makefile
index b9c108251c5..e04e8fc7f53 100644
--- a/external/gpl3/gcc.old/usr.bin/cc1objplus/Makefile
+++ b/external/gpl3/gcc.old/usr.bin/cc1objplus/Makefile
@@ -69,18 +69,6 @@ COPTS.objc-act.c+= -Wno-stack-protector
COPTS.objc-gnu-runtime-abi-01.c+= -Wno-stack-protector
COPTS.objc-next-runtime-abi-01.c+= -Wno-stack-protector

-.if ${MACHINE_ARCH} == "vax"
-COPTS.c-decl.c+=-O0
-COPTS.c-typeck.c+=-O0
-COPTS.c-array-notation.c+=-O0
-COPTS.c-common.c+=-O0
-COPTS.c-ada-spec.c+=-O0
-COPTS.cilk.c+=-O0
-COPTS.c-ubsan.c+=-O0
-COPTS.cc1obj-checksum.c+=-O0
-COPTS.decl.c+=-O0
-.endif
-
.if ${MACHINE_ARCH} == "mipseb" || ${MACHINE_ARCH} == "mipsel"
COPTS.c-common.c+=-O3
.endif
diff --git a/external/gpl3/gcc.old/usr.bin/cc1plus/Makefile b/external/gpl3/gcc.old/usr.bin/cc1plus/Makefile
index 7936efd3a5e..7c54559e21a 100644
--- a/external/gpl3/gcc.old/usr.bin/cc1plus/Makefile
+++ b/external/gpl3/gcc.old/usr.bin/cc1plus/Makefile
@@ -31,23 +31,6 @@ CHECKSUM_OBJS= ${LIBBACKTRACEOBJ}/libbacktrace.a \

CFLAGS+= -Wno-error=stack-protector

-.if ${MACHINE_ARCH} == "vax"
-COPTS.call.c+=-O0
-COPTS.decl.c+=-O0
-COPTS.typeck2.c+=-O0
-COPTS.class.c+=-O0
-COPTS.typeck.c+=-O0
-COPTS.init.c+=-O0
-COPTS.semantics.c+=-O0
-COPTS.mangle.c+=-O0
-COPTS.constexpr.c+=-O0
-COPTS.c-common.c+=-O0
-COPTS.c-ada-spec.c+=-O0
-COPTS.cilk.c+=-O0
-COPTS.c-ubsan.c+=-O0
-COPTS.cc1plus-checksum.c+=-O0
-.endif
-
.if ${MACHINE_ARCH} == "mipseb" || ${MACHINE_ARCH} == "mipsel"
COPTS.c-common.c+=-O3
.endif
diff --git a/external/gpl3/gcc.old/usr.bin/gcc/Makefile b/external/gpl3/gcc.old/usr.bin/gcc/Makefile
index 7a66d77ffc7..a5a4b1c3adf 100644
--- a/external/gpl3/gcc.old/usr.bin/gcc/Makefile
+++ b/external/gpl3/gcc.old/usr.bin/gcc/Makefile
@@ -25,9 +25,6 @@ ${SRCS}: ${GCCARCH}/defs.mk
.include <bsd.info.mk>

COPTS.gcc.c= -Wno-stack-protector
-.if ${MACHINE_ARCH} == "vax"
-COPTS.dse.c= -O1
-.endif

.PATH: ${DIST}/gcc ${DIST}/gcc/doc ${DIST}/gcc/c

diff --git a/external/gpl3/gcc.old/usr.bin/libdecnumber/Makefile b/external/gpl3/gcc.old/usr.bin/libdecnumber/Makefile
index 751d1513eec..33aeb1c9898 100644
--- a/external/gpl3/gcc.old/usr.bin/libdecnumber/Makefile
+++ b/external/gpl3/gcc.old/usr.bin/libdecnumber/Makefile
@@ -14,10 +14,6 @@ SRCS= decNumber.c decContext.c decimal32.c decimal64.c decimal128.c
CPPFLAGS+= -I${.CURDIR}/arch/${GCC_MACHINE_ARCH} -I${DIST}/libdecnumber
CPPFLAGS+= -I${DIST}/libgcc

-.if ${MACHINE_ARCH} == "vax"
-COPTS.decNumber.c=-O0
-.endif
-
.include <bsd.lib.mk>

# Force using C++ for this
diff --git a/external/gpl3/gcc.old/usr.bin/lto-dump/Makefile b/external/gpl3/gcc.old/usr.bin/lto-dump/Makefile
index 90f44a9fcf6..fd251464fb7 100644
--- a/external/gpl3/gcc.old/usr.bin/lto-dump/Makefile
+++ b/external/gpl3/gcc.old/usr.bin/lto-dump/Makefile
@@ -24,11 +24,6 @@ COPTS.lto-common.c+= -Wno-stack-protector
.include "../Makefile.backtrace"
.include "../Makefile.libdecnumber"

-.if ${MACHINE_ARCH} == "vax"
-COPTS.lto-lang.c+=-O0
-COPTS.lto-symtab.c+=-O0
-.endif
-
LDADD+= ${LIBIBERTY} ${LIBMPC} ${LIBMPFR} ${LIBGMP} -lintl -lz -lm
DPADD+= ${LIBIBERTY} ${LIBMPC} ${LIBMPFR} ${LIBGMP} ${LIBINTL} ${LIBZ} ${LIBM}

diff --git a/external/gpl3/gcc.old/usr.bin/lto1/Makefile b/external/gpl3/gcc.old/usr.bin/lto1/Makefile
index 4c49161a64c..340d3c6124f 100644
--- a/external/gpl3/gcc.old/usr.bin/lto1/Makefile
+++ b/external/gpl3/gcc.old/usr.bin/lto1/Makefile
@@ -21,11 +21,6 @@ COPTS.lto-common.c+= -Wno-stack-protector
.include "../Makefile.libcpp"
.include "../Makefile.libdecnumber"

-.if ${MACHINE_ARCH} == "vax"
-COPTS.lto-lang.c+=-O0
-COPTS.lto-symtab.c+=-O0
-.endif
-
LDADD+= ${LIBIBERTYOBJ}/libiberty.a
DPADD+= ${LIBIBERTYOBJ}/libiberty.a
LDADD+= ${LIBIBERTY} ${LIBMPC} ${LIBMPFR} ${LIBGMP} -lintl -lz -lm
diff --git a/external/gpl3/gdb.old/lib/libdecnumber/Makefile b/external/gpl3/gdb.old/lib/libdecnumber/Makefile
index bcd4ae5b222..ce28811526b 100644
--- a/external/gpl3/gdb.old/lib/libdecnumber/Makefile
+++ b/external/gpl3/gdb.old/lib/libdecnumber/Makefile
@@ -18,10 +18,6 @@ CPPFLAGS+= -I${.CURDIR}/arch/${GDB_MACHINE_ARCH} \

SRCS= ${G_OBJS:.o=.c} ${G_SOURCES}

-.if ${MACHINE_ARCH} == "vax"
-COPTS.decNumber.c=-O0
-.endif
-
.PATH: ${DIST}/libdecnumber ${DIST}/libdecnumber/dpd

.include <bsd.lib.mk>
diff --git a/external/gpl3/gdb/lib/libdecnumber/Makefile b/external/gpl3/gdb/lib/libdecnumber/Makefile
index c95d36e3dfa..e3169865304 100644
--- a/external/gpl3/gdb/lib/libdecnumber/Makefile
+++ b/external/gpl3/gdb/lib/libdecnumber/Makefile
@@ -18,10 +18,6 @@ CPPFLAGS+= -I${.CURDIR}/arch/${GDB_MACHINE_ARCH} \

SRCS= ${G_OBJS:.o=.c} ${G_SOURCES}

-.if ${MACHINE_ARCH} == "vax"
-COPTS.decNumber.c=-O0
-.endif
-
.PATH: ${DIST}/libdecnumber ${DIST}/libdecnumber/dpd ${DIST}/libdecnumber/bid

.include <bsd.lib.mk>
diff --git a/external/gpl3/gdb/lib/libgdb/Makefile b/external/gpl3/gdb/lib/libgdb/Makefile
index b87a515d13a..c118c363975 100644
--- a/external/gpl3/gdb/lib/libgdb/Makefile
+++ b/external/gpl3/gdb/lib/libgdb/Makefile
@@ -66,12 +66,6 @@ CFLAGS:= ${CXXFLAGS} -std=gnu++17 -Wno-error=stack-protector

ada-exp.c: ada-lex.c

-.if ${MACHINE} == "vax"
-. if ${ACTIVE_CC} == "gcc" && ${HAVE_GCC:U0} >= 8
-COPTS.read.c+= -O0
-. endif
-.endif
-
# These are generated by implicit rules and are not easy to generate
CLEANDIRFILES+= \
ada-exp.c ada-lex.c \
diff --git a/external/mit/xorg/lib/gallium.old/Makefile b/external/mit/xorg/lib/gallium.old/Makefile
index 55b2fe3d1c1..bfa40c8974f 100644
--- a/external/mit/xorg/lib/gallium.old/Makefile
+++ b/external/mit/xorg/lib/gallium.old/Makefile
@@ -1211,10 +1211,6 @@ SYMLINKS+= gallium_dri.so.${SHLIB_MAJOR}.debug ${DRIDEBUGDIR}/${_d}_dri.so.${SHL
COPTS+= ${${ACTIVE_CC} == "clang":? -Wa,-Av8plus :}
.endif

-.if ${MACHINE_ARCH} == "vax"
-COPTS.nir.c += -O1
-.endif
-
# XXXGCC12
.if ${MACHINE_ARCH} == "m68k"
COPTS.st_glsl_to_tgsi.cpp += -O1
diff --git a/external/mit/xorg/lib/gallium/Makefile b/external/mit/xorg/lib/gallium/Makefile
index 6778a8c11c8..9f1422080fe 100644
--- a/external/mit/xorg/lib/gallium/Makefile
+++ b/external/mit/xorg/lib/gallium/Makefile
@@ -1428,10 +1428,6 @@ SYMLINKS+= gallium_dri.so.${SHLIB_MAJOR}.debug ${DRIDEBUGDIR}/${_d}_dri.so.${SHL
COPTS+= ${${ACTIVE_CC} == "clang":? -Wa,-Av8plus :}
.endif

-.if ${MACHINE_ARCH} == "vax"
-COPTS.nir.c += -O1
-.endif
-
COPTS.u_atomic.c+= ${${ACTIVE_CC} == "gcc" && ${HAVE_GCC:U0} >= 10:? -Wno-builtin-declaration-mismatch :}

.include <bsd.lib.mk>
diff --git a/external/mit/xorg/lib/libX11/Makefile.libx11 b/external/mit/xorg/lib/libX11/Makefile.libx11
index e103d9ace12..0e55c2a4732 100644
--- a/external/mit/xorg/lib/libX11/Makefile.libx11
+++ b/external/mit/xorg/lib/libX11/Makefile.libx11
@@ -471,11 +471,6 @@ COPTS.OpenDis.c+= -Wno-error # XXX xf86bigfstr.h
COPTS.XlibInt.c+= -Wno-error # XXX xcmiscstr.h
COPTS.XKBBind.c+= -Wno-deprecated-declarations # uses XKeycodeToKeysym

-# XXX
-.if ${MACHINE} == "vax"
-COPTS.lcWrap.c+= -O0
-.endif
-
CWARNFLAGS.clang+= -Wno-string-plus-int

.include "${NETBSDSRCDIR}/external/mit/xorg/tools/makekeys/Makefile.makekeys"
diff --git a/games/gomoku/Makefile b/games/gomoku/Makefile
index e86a63aaea7..678537066ed 100644
--- a/games/gomoku/Makefile
+++ b/games/gomoku/Makefile
@@ -9,10 +9,6 @@ LDADD= -lcurses -lterminfo
HIDEGAME=hidegame
CPPFLAGS+= ${DEBUG:D-DDEBUG}

-.if ${MACHINE} == "vax"
-COPTS.pickmove.c += -O0
-.endif
-
#WARNS= 6 # would produce warnings about small integer types
LINTFLAGS+= -w # treat warnings as errors
LINTFLAGS+= -T # strict bool mode
diff --git a/games/phantasia/Makefile b/games/phantasia/Makefile
index e9c53f23ae5..b919dac17c6 100644
--- a/games/phantasia/Makefile
+++ b/games/phantasia/Makefile
@@ -52,7 +52,3 @@ map: map.c
./map | plot > /dev/tty

.include <bsd.prog.mk>
-
-.if defined(HAVE_GCC) && ${MACHINE_ARCH} == "vax"
-COPTS.misc.c+= -O0
-.endif
diff --git a/lib/i18n_module/UTF7/Makefile b/lib/i18n_module/UTF7/Makefile
index 712c1515d42..7136f7f0cc3 100644
--- a/lib/i18n_module/UTF7/Makefile
+++ b/lib/i18n_module/UTF7/Makefile
@@ -3,6 +3,3 @@
SRCPRE=citrus_
.include <bsd.lib.mk>

-.if ${MACHINE_ARCH} == "vax" && defined(HAVE_GCC)
-COPTS.citrus_utf7.c+= -O0
-.endif
diff --git a/lib/libbz2/Makefile b/lib/libbz2/Makefile
index b2aea1e04b0..e60a2862d48 100644
--- a/lib/libbz2/Makefile
+++ b/lib/libbz2/Makefile
@@ -15,11 +15,6 @@ SRCS= blocksort.c huffman.c crctable.c randtable.c compress.c \
INCS= bzlib.h
INCSDIR= /usr/include

-# XXX huffman.c gets mis-compiled with 2.95.3
-.if ${MACHINE_ARCH} == "vax"
-COPTS+= -O0
-.endif
-
COPTS+= ${CC_WNO_IMPLICIT_FALLTHROUGH}

# XXX blocksort.c gets mis-compiled with 4.1
diff --git a/lib/libc/gdtoa/Makefile.inc b/lib/libc/gdtoa/Makefile.inc
index 132686fc33d..609da919803 100644
--- a/lib/libc/gdtoa/Makefile.inc
+++ b/lib/libc/gdtoa/Makefile.inc
@@ -44,10 +44,3 @@ SRCS+= dmisc.c \
.if ${MACHINE_ARCH} != "vax"
SRCS+= strtord.c
.endif
-
-# XXX revisit with newer GCC.
-# Ensure numbers like 0xffff319f5fa95963 print correctly
-# ("999999999999999.98", not garbage like "?A>C>@>C:BA;A><.:<")
-.if ${MACHINE_ARCH} == "vax" && defined(HAVE_GCC)
-COPTS.misc.c+= -O0
-.endif
diff --git a/lib/libcrypt/Makefile b/lib/libcrypt/Makefile
index cb3f89d6d09..e9c8be820da 100644
--- a/lib/libcrypt/Makefile
+++ b/lib/libcrypt/Makefile
@@ -30,9 +30,6 @@ SRCS+= crypt-argon2.c
SRCS+= ${src}
COPTS.${src}+= -fvisibility=hidden
. endfor
-. if ${MACHINE} == "vax"
-COPTS.blake2b.c+= -O0
-. endif
.endif

WARNS?= 5
diff --git a/libexec/ld.elf_so/Makefile b/libexec/ld.elf_so/Makefile
index f5baae1e883..24f7e1121e5 100644
--- a/libexec/ld.elf_so/Makefile
+++ b/libexec/ld.elf_so/Makefile
@@ -141,10 +141,6 @@ CPPFLAGS+= -DRTLD_DEFAULT_LIBRARY_PATH=\"${SHLIBDIR}:${LIBDIR}\"
COPTS.rtld.c+= -Wno-stack-protector
COPTS.symbol.c+=-Wno-stack-protector

-.if ${MACHINE_CPU} == "vax"
-COPTS.rtld.c+= -O0
-.endif
-
LDADD+= -Wl,--version-script=${.CURDIR}/symbols.map
LDADD+= -L${CLIBOBJ} -L${DESTDIR}${LIBDIR}
.if ${MKPICLIB} != "no"
diff --git a/sbin/fsck_ffs/Makefile.common b/sbin/fsck_ffs/Makefile.common
index 765638b2801..824e3bf2628 100644
--- a/sbin/fsck_ffs/Makefile.common
+++ b/sbin/fsck_ffs/Makefile.common
@@ -36,7 +36,3 @@ COPTS.ffs_appleufs.c+= -Wno-pointer-sign
.if ${MACHINE_ARCH} == "m68000"
COPTS.pass1.c+= -fno-tree-fre -fno-tree-lrs
.endif
-.if ${MACHINE_ARCH} == "vax"
-COPTS.pass1.c+= -O0
-COPTS.inode.c+= -O0
-.endif
diff --git a/sbin/fsdb/Makefile b/sbin/fsdb/Makefile
index c039f73a1eb..3b0331e5880 100644
--- a/sbin/fsdb/Makefile
+++ b/sbin/fsdb/Makefile
@@ -39,12 +39,6 @@ COPTS.${f}.c+= -Wno-pointer-sign
COPTS.pass1.c+= -fno-tree-fre -fno-tree-lrs
.endif

-.if ${MACHINE_ARCH} == "vax"
-COPTS.pass1.c+= -O0
-COPTS.inode.c+= -O0
-COPTS.fsdb.c+= -O0
-.endif
-
CWARNFLAGS.gcc+= ${CC_WNO_ADDRESS_OF_PACKED_MEMBER}

.include <bsd.prog.mk>
diff --git a/sbin/newfs_ext2fs/Makefile b/sbin/newfs_ext2fs/Makefile
index 40a44b9a038..ecfdbff4d3a 100644
--- a/sbin/newfs_ext2fs/Makefile
+++ b/sbin/newfs_ext2fs/Makefile
@@ -20,8 +20,4 @@ DPADD+=${LIBPROP}

.PATH: ${NETBSDSRCDIR}/sys/ufs/ext2fs ${FSCK}

-.if ${MACHINE_ARCH} == "vax"
-COPTS.mke2fs.c=-O0
-.endif
-
.include <bsd.prog.mk>
diff --git a/sbin/ping/Makefile b/sbin/ping/Makefile
index 4f33501ea7a..1f7f56e3ea5 100644
--- a/sbin/ping/Makefile
+++ b/sbin/ping/Makefile
@@ -12,8 +12,4 @@ CPPFLAGS+= -DIPSEC
LDADD+= -lipsec
DPADD+= ${LIBIPSEC}

-.if ${MACHINE_ARCH} == "vax"
-COPTS.ping.c=-O0
-.endif
-
.include <bsd.prog.mk>
diff --git a/sys/arch/vax/conf/Makefile.vax b/sys/arch/vax/conf/Makefile.vax
index cf095d54a86..c483eaa644a 100644
--- a/sys/arch/vax/conf/Makefile.vax
+++ b/sys/arch/vax/conf/Makefile.vax
@@ -34,7 +34,6 @@ GENASSYM_CONF= ${VAX}/vax/genassym.cf
CPPFLAGS+= -D_VAX_INLINE_
AFLAGS+= -x assembler-with-cpp -fno-pic
CFLAGS+= -fno-pic
-COPTS.wsmux.c+= ${${ACTIVE_CC} == "gcc" && ${HAVE_GCC:U0} >= 9:? -O1 :}


##
diff --git a/sys/lib/libsa/Makefile b/sys/lib/libsa/Makefile
index 718c97ce857..4ef3840c753 100644
--- a/sys/lib/libsa/Makefile
+++ b/sys/lib/libsa/Makefile
@@ -96,7 +96,3 @@ SRCS+= ufs.c
lib${LIB}.o:: ${OBJS:O} __buildstdlib

CPPFLAGS+= -Wno-pointer-sign
-
-.if defined(HAVE_GCC) && ${MACHINE_ARCH} == "vax"
-COPTS.bootp.c+= -O0
-.endif
diff --git a/sys/lib/libz/Makefile b/sys/lib/libz/Makefile
index 6945c0da6c6..61fb7d4f652 100644
--- a/sys/lib/libz/Makefile
+++ b/sys/lib/libz/Makefile
@@ -25,7 +25,3 @@ CLEANFILES+= lib${LIB}.o
.include <bsd.lib.mk>

lib${LIB}.o:: ${OBJS:O} __buildstdlib
-
-.if defined(HAVE_GCC) && ${MACHINE_ARCH} == "vax"
-COPTS.inftrees.c+= -O0
-.endif
diff --git a/sys/modules/lfs/Makefile b/sys/modules/lfs/Makefile
index 962538821a5..ea8f187e160 100644
--- a/sys/modules/lfs/Makefile
+++ b/sys/modules/lfs/Makefile
@@ -18,9 +18,4 @@ SRCS+= ulfs_bmap.c ulfs_dirhash.c ulfs_inode.c ulfs_lookup.c \

WARNS= 3

-.if ${MACHINE} == "vax"
-# GCC 6.5 and 7.4 cannot compile this with -DDIAGNOSTIC and -O2/-O1
-COPTS.lfs_inode.c+= -O0
-.endif
-
.include <bsd.kmodule.mk>
diff --git a/sys/rump/fs/lib/liblfs/Makefile b/sys/rump/fs/lib/liblfs/Makefile
index abade3767d9..68b74c62502 100644
--- a/sys/rump/fs/lib/liblfs/Makefile
+++ b/sys/rump/fs/lib/liblfs/Makefile
@@ -17,9 +17,6 @@ SRCS+= ulfs_bmap.c ulfs_dirhash.c ulfs_extattr.c \


CFLAGS+= -DLFS_KERNEL_RFW
-.if ${MACHINE_ARCH} == "vax"
-COPTS.lfs_inode.c+=-O0
-.endif

.include <bsd.lib.mk>
.include <bsd.klinks.mk>
diff --git a/usr.sbin/mtrace/Makefile b/usr.sbin/mtrace/Makefile
index aef09db6198..9c125c15265 100644
--- a/usr.sbin/mtrace/Makefile
+++ b/usr.sbin/mtrace/Makefile
@@ -12,10 +12,6 @@ PROG= mtrace
SRCS= igmp.c inet.c kern.c mtrace.c
MAN= mtrace.8

-.if ${MACHINE_ARCH} == "vax"
-COPTS.mtrace.c=-O0
-.endif
-
BINMODE=4555
BINOWN= root

diff --git a/external/gpl3/gcc.old/usr.bin/backend/Makefile b/external/gpl3/gcc.old/usr.bin/backend/Makefile
index d69a26fe619..99e881c783d 100644
--- a/external/gpl3/gcc.old/usr.bin/backend/Makefile
+++ b/external/gpl3/gcc.old/usr.bin/backend/Makefile
@@ -533,68 +533,9 @@ COPTS.insn-recog.c+=-Wno-error

.if ${GCC_MACHINE_ARCH} == "vax"
CPPFLAGS+=-I${.CURDIR}/../../lib/libgcc/libgcov/arch/${GCC_MACHINE_ARCH}
-COPTS.builtins.c+=-O0
-COPTS.calls.c+=-O0
-COPTS.convert.c+=-O0
-COPTS.data-streamer-out.c+=-O0
-COPTS.dse.c+=-O0 # XXX port-vax/51967
-COPTS.dwarf2out.c+=-O0
-COPTS.expmed.c+=-O0
-COPTS.expr.c+=-O0 -Wno-error=tautological-compare
-COPTS.fixed-value.c+=-O0
-COPTS.fold-const.c+=-O0
-COPTS.generic-match.c+=-O0
-COPTS.gimple-fold.c+=-O0
-COPTS.gimple-match.c+=-O0
-COPTS.gimple-ssa-strength-reduction.c+=-O0
-COPTS.gimple-ssa-warn-restrict.c+=-O0
-COPTS.gimple.c+=-O0
-COPTS.internal-fn.c+=-O0
-COPTS.lto-streamer-out.c+=-O0
-COPTS.omp-low.c+=-O0
-COPTS.predict.c+=-O0
-COPTS.range-op.cc+=-O0
-COPTS.recog.c+=-O0
-COPTS.sanopt.c+=-O0
-COPTS.stmt.c+=-O0
-COPTS.stor-layout.c+=-O0
-COPTS.targhooks.c+=-O0
-COPTS.tree-affine.c+=-O0
-COPTS.tree-cfg.c+=-O0
-COPTS.tree-data-ref.c+=-O0
-COPTS.tree-eh.c+=-O0
-COPTS.tree-if-conv.c+=-O0
-COPTS.tree-object-size.c+=-O0
-COPTS.tree-parloops.c+=-O0
-COPTS.tree-predcom.c+=-O0
-COPTS.tree-pretty-print.c+=-O0
-COPTS.tree-ssa-alias.c+=-O0
-COPTS.tree-ssa-ccp.c+=-O0
-COPTS.tree-ssa-forwprop.c+=-O0
-COPTS.tree-ssa-loop-ivopts.c+=-O0
-COPTS.tree-ssa-loop-manip.c+=-O0
-COPTS.tree-ssa-loop-niter.c+=-O0
-COPTS.tree-ssa-math-opts.c+=-O0
-COPTS.tree-ssa-phiopt.c+= -O0
-COPTS.tree-ssa-pre.c+=-O0
-COPTS.tree-ssa-reassoc.c+=-O0
-COPTS.tree-ssa-strlen.c+=-O0
-COPTS.tree-ssa-uninit.c+=-O0
-COPTS.tree-ssa.c+=-O0
-COPTS.tree-switch-conversion.c+=-O0
-COPTS.tree-vect-data-refs.c+=-O0
-COPTS.tree-vect-loop-manip.c+=-O0
-COPTS.tree-vect-loop.c+=-O0
-COPTS.tree-vect-patterns.c+=-O0
-COPTS.tree-vect-stmts.c+=-O0
-COPTS.tree-vrp.c+=-O0
-COPTS.tree.c+=-O0
-COPTS.ubsan.c+=-O0
-COPTS.varasm.c+=-O0
-COPTS.vr-values.c+=-O0
-COPTS.web.c+=-O0
-COPTS.wide-int-range.cc+=-O0
-COPTS.wide-int.cc+=-O0
+
+COPTS.expmed.c+=-Wno-error=tautological-compare
+COPTS.expr.c+=-Wno-error=tautological-compare
.else
COPTS.tree.c= ${${ACTIVE_CC} == "clang" :? -O0 :}
.endif
 1.10 17-Feb-2019  rin branches: 1.10.30;
For vax, GCC 6.5 and 7.4 cannot compile lfs_inode.c with
-DDIAGNOSTIC and -O2/-O1.
 1.9 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.8 31-May-2015  hannken branches: 1.8.18;
Change lfs from hash table to vcache.

- Change lfs_valloc() to return an inode number and version instead of
a vnode and move lfs_ialloc() and lfs_vcreate() to new lfs_init_vnode().

- Add lfs_valloc_fixed() to allocate a known inode, used by kernel
roll forward.

- Remove lfs_*ref(), these functions cannot coexist with vcache and
their commented behaviour is far away from their implementation.

- Add the cleaner lwp and blockinfo to struct ulfsmount so lfs_loadvnode()
may use hints from the cleaner.

- Remove vnode locks from ulfs_lookup() like we did with ufs_lookup().
 1.7 16-May-2014  dholland branches: 1.7.4;
Move lfs_getpages and lfs_putpages to their own file.
 1.6 18-Mar-2014  riastradh branches: 1.6.2;
Merge riastradh-drm2 to HEAD.
 1.5 20-Jul-2013  dholland fix another defective C&P makefile
 1.4 16-Jun-2013  dholland branches: 1.4.2; 1.4.4;
Update the sources list for lfs.

It is a defect in our module system that failure to include all the sources
in here does not result in a build failure with undefined symbols.

(It is also a defect in our module system that we need a whole parallel
system of source lists for it.)
 1.3 02-Mar-2010  pooka branches: 1.3.10; 1.3.20;
Remove the ufs_vnops.c hacks from the lfs module, since ffs (and
hence ufs) has been required by lfs for ages now.
 1.2 16-Nov-2008  ad branches: 1.2.6; 1.2.8;
+lfs_itimes.c
 1.1 28-Jun-2008  rumble branches: 1.1.2; 1.1.4; 1.1.6; 1.1.8; 1.1.10;
Add of bunch of file system modules.
 1.1.10.1 19-Jan-2009  skrll Sync with HEAD.
 1.1.8.2 18-Sep-2008  wrstuden Sync with wrstuden-revivesa-base-2.
 1.1.8.1 28-Jun-2008  wrstuden file Makefile was added on branch wrstuden-revivesa on 2008-09-18 04:36:59 +0000
 1.1.6.1 13-Dec-2008  haad Update haad-dm branch to haad-dm-base2.
 1.1.4.2 03-Jul-2008  simonb Sync with head.
 1.1.4.1 28-Jun-2008  simonb file Makefile was added on branch simonb-wapbl on 2008-07-03 18:38:19 +0000
 1.1.2.3 17-Jan-2009  mjf Sync with HEAD.
 1.1.2.2 29-Jun-2008  mjf Sync with HEAD.
 1.1.2.1 28-Jun-2008  mjf file Makefile was added on branch mjf-devfs2 on 2008-06-29 09:33:17 +0000
 1.2.8.1 30-Apr-2010  uebayasi Sync with HEAD.
 1.2.6.3 11-Mar-2010  yamt sync with head
 1.2.6.2 04-May-2009  yamt sync with head.
 1.2.6.1 16-Nov-2008  yamt file Makefile was added on branch yamt-nfs-mp on 2009-05-04 08:14:11 +0000
 1.3.20.3 03-Dec-2017  jdolecek update from HEAD
 1.3.20.2 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.3.20.1 23-Jun-2013  tls resync from head
 1.3.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.4.4.1 23-Jul-2013  riastradh sync with HEAD
 1.4.2.2 18-May-2014  rmind sync with head
 1.4.2.1 28-Aug-2013  rmind sync with head
 1.6.2.1 10-Aug-2014  tls Rebase.
 1.7.4.1 06-Jun-2015  skrll Sync with HEAD
 1.8.18.1 10-Jun-2019  christos Sync with HEAD
 1.10.30.1 08-Oct-2023  martin Pull up following revision(s) (requested by rin in ticket #394):

external/gpl3/binutils/dist/gas/config/tc-vax.h: revision 1.10
tools/gcc/Makefile: revision 1.109
external/gpl3/binutils/dist/gas/config/tc-vax.c: revision 1.16
external/gpl3/binutils/dist/gas/config/tc-vax.c: revision 1.17
external/gpl3/binutils/dist/gas/config/tc-vax.c: revision 1.18
external/gpl3/gcc.old/dist/gcc/recog.c: revision 1.12
external/gpl3/gcc.old/dist/gcc/function.c: revision 1.16
external/gpl3/gcc.old/dist/gcc/dse.c: revision 1.14 - 1.16
external/gpl3/gcc.old/dist/gcc/config/vax/vax.c: revision 1.13
external/gpl3/gcc.old/dist/gcc/config/vax/vax.c: revision 1.14
external/gpl3/gcc.old/dist/gcc/config/vax/vax.c: revision 1.15
external/gpl3/gcc.old/dist/gcc/doc/tm.texi.in: revision 1.10
external/gpl3/gcc.old/dist/gcc/config/vax/vax.c: revision 1.16
external/gpl3/gcc.old/dist/gcc/config/vax/vax.c: revision 1.17
external/gpl3/gcc.old/dist/gcc/config/vax/vax.c: revision 1.18
external/gpl3/gcc.old/dist/gcc/config/vax/vax.c: revision 1.19
external/gpl3/gcc.old/dist/gcc/config/vax/vax.md: revision 1.12
external/gpl3/gcc.old/dist/gcc/config/vax/vax.md: revision 1.13
external/gpl3/gcc.old/usr.bin/backend/Makefile: revision 1.20
external/gpl3/gcc.old/dist/gcc/targhooks.c: revision 1.12
external/gpl3/gcc.old/dist/gcc/config/vax/vax.md: revision 1.14
external/gpl3/gcc.old/dist/gcc/config/vax/vax.md: revision 1.15
external/gpl3/gcc.old/dist/gcc/config/vax/builtins.md: revision 1.12
external/gpl3/gcc.old/dist/gcc/config/vax/vax.md: revision 1.16
external/gpl3/gcc.old/dist/gcc/config/vax/builtins.md: revision 1.13
external/gpl3/gcc.old/dist/gcc/doc/tm.texi: revision 1.12
external/gpl3/gcc.old/dist/gcc/config/vax/vax.md: revision 1.17
external/gpl3/gcc.old/dist/gcc/config/vax/vax.md: revision 1.18
external/gpl3/gcc.old/dist/gcc/config/vax/elf.h: revision 1.12
external/gpl3/gcc.old/dist/gcc/config/vax/elf.h: revision 1.13
external/gpl3/gcc.old/dist/gcc/targhooks.h: revision 1.12
external/gpl3/gcc.old/dist/gcc/target.def: revision 1.10
external/gpl3/gcc.old/dist/gcc/rtlanal.c: revision 1.14
external/gpl3/gcc.old/dist/gcc/reload.c: revision 1.12
external/gpl3/gcc.old/usr.bin/gcc/Makefile: revision 1.11
external/gpl3/gcc.old/usr.bin/lto-dump/Makefile: revision 1.3
external/gpl3/gcc.old/lib/Makefile.sanitizer: revision 1.7
external/gpl3/binutils.old/lib/libbfd/Makefile: revision 1.10
distrib/utils/x_ping/Makefile: revision 1.9
games/phantasia/Makefile: revision 1.38
external/apache2/argon2/lib/libargon2/Makefile.inc: revision 1.2
external/gpl3/gcc.old/lib/libubsan/Makefile: revision 1.8
external/bsd/mdocml/lib/libmandoc/Makefile: revision 1.13
sbin/ping/Makefile: revision 1.18
sbin/newfs_ext2fs/Makefile: revision 1.7
sys/lib/libz/Makefile: revision 1.24
sys/lib/libsa/Makefile: revision 1.97
external/gpl3/gcc.old/usr.bin/cc1objplus/Makefile: revision 1.3
external/gpl3/gdb/lib/libgdb/Makefile: revision 1.36
sys/modules/lfs/Makefile: revision 1.11
external/mit/xorg/lib/gallium/Makefile: revision 1.51
external/gpl3/gdb.old/lib/libdecnumber/Makefile: revision 1.10
external/mit/xorg/lib/libX11/Makefile.libx11: revision 1.26
libexec/ld.elf_so/Makefile: revision 1.148
external/bsd/jemalloc/lib/Makefile.inc: revision 1.16
external/gpl3/gcc.old/usr.bin/libdecnumber/Makefile: revision 1.14
crypto/external/bsd/openssh/lib/Makefile: revision 1.38
external/gpl3/gcc.old/usr.bin/backend/Makefile: revision 1.21
external/gpl3/gcc.old/usr.bin/cc1/Makefile: revision 1.12
external/gpl3/gcc.old/lib/libasan/Makefile: revision 1.11
external/gpl3/gcc.old/usr.bin/cc1plus/Makefile: revision 1.13
lib/libcrypt/Makefile: revision 1.36
external/gpl3/gdb/lib/libdecnumber/Makefile: revision 1.5
lib/libc/gdtoa/Makefile.inc: revision 1.13
games/gomoku/Makefile: revision 1.13
sbin/fsdb/Makefile: revision 1.43
external/gpl3/gcc.old/usr.bin/lto1/Makefile: revision 1.9
external/mit/xorg/lib/gallium.old/Makefile: revision 1.8
lib/libbz2/Makefile: revision 1.22
external/gpl3/gcc.old/usr.bin/cc1obj/Makefile: revision 1.12
usr.sbin/mtrace/Makefile: revision 1.14
external/gpl3/gcc.old/usr.bin/cc1obj/Makefile: revision 1.13
sys/arch/vax/conf/Makefile.vax: revision 1.86
sys/rump/fs/lib/liblfs/Makefile: revision 1.18
sbin/fsck_ffs/Makefile.common: revision 1.3
external/gpl3/binutils/lib/libbfd/Makefile: revision 1.27
lib/i18n_module/UTF7/Makefile: revision 1.5
external/gpl3/gcc.old/lib/liblsan/Makefile: revision 1.7
doc/CHANGES (apply patch)
(all external/gpl3/gcc.old/ changes applied to external/gpl3/gcc/)

PR 57646: Import major vax toolchain fix.
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 11-Jul-2011  jmcneill branches: 1.1.54;
add module glue for lg3303, xc3028, emdtv
 1.1.54.1 10-Jun-2019  christos Sync with HEAD
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 17-Jan-2012  jakllsch branches: 1.1.4; 1.1.50;
Modularize lm_isa and lm_wbsio, splitting the common part out
into a 3rd module. Add wbsio module too.
 1.1.50.1 10-Jun-2019  christos Sync with HEAD
 1.1.4.2 17-Apr-2012  yamt sync with head
 1.1.4.1 17-Jan-2012  yamt file Makefile was added on branch yamt-pagecache on 2012-04-17 00:08:36 +0000
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 17-Jan-2012  jakllsch branches: 1.1.4; 1.1.50;
Modularize lm_isa and lm_wbsio, splitting the common part out
into a 3rd module. Add wbsio module too.
 1.1.50.1 10-Jun-2019  christos Sync with HEAD
 1.1.4.2 17-Apr-2012  yamt sync with head
 1.1.4.1 17-Jan-2012  yamt file Makefile was added on branch yamt-pagecache on 2012-04-17 00:08:37 +0000
 1.1 17-Jan-2012  jakllsch branches: 1.1.4;
Modularize lm_isa and lm_wbsio, splitting the common part out
into a 3rd module. Add wbsio module too.
 1.1.4.2 17-Apr-2012  yamt sync with head
 1.1.4.1 17-Jan-2012  yamt file lm_isa.ioconf was added on branch yamt-pagecache on 2012-04-17 00:08:37 +0000
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 17-Jan-2012  jakllsch branches: 1.1.4; 1.1.50;
Modularize lm_isa and lm_wbsio, splitting the common part out
into a 3rd module. Add wbsio module too.
 1.1.50.1 10-Jun-2019  christos Sync with HEAD
 1.1.4.2 17-Apr-2012  yamt sync with head
 1.1.4.1 17-Jan-2012  yamt file Makefile was added on branch yamt-pagecache on 2012-04-17 00:08:37 +0000
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 17-Jan-2012  jakllsch branches: 1.1.4; 1.1.50;
Modularize lm_isa and lm_wbsio, splitting the common part out
into a 3rd module. Add wbsio module too.
 1.1.50.1 10-Jun-2019  christos Sync with HEAD
 1.1.4.2 17-Apr-2012  yamt sync with head
 1.1.4.1 17-Jan-2012  yamt file Makefile was added on branch yamt-pagecache on 2012-04-17 00:08:37 +0000
 1.1 17-Jan-2012  jakllsch branches: 1.1.4;
Modularize lm_isa and lm_wbsio, splitting the common part out
into a 3rd module. Add wbsio module too.
 1.1.4.2 17-Apr-2012  yamt sync with head
 1.1.4.1 17-Jan-2012  yamt file lm_wbsio.ioconf was added on branch yamt-pagecache on 2012-04-17 00:08:37 +0000
 1.14 03-Jun-2023  lukem bsd.own.mk: rename GCC_NO_* to CC_WNO_*

Rename compiler-warning-disable variables from
GCC_NO_warning
to
CC_WNO_warning
where warning is the full warning name as used by the compiler.

GCC_NO_IMPLICIT_FALLTHRU is CC_WNO_IMPLICIT_FALLTHROUGH

Using the convention CC_compilerflag, where compilerflag
is based on the full compiler flag name.
 1.13 16-Apr-2023  nikita Resolve conflicts for lua 5.4.4 import.
Adjust various files for lua 5.4.4.
 1.12 12-Apr-2021  mrg branches: 1.12.16;
add some new uses of existing GCC_NO_* variables for warning issues.
remove an no longer relevant for gcc7 workaround (works fine in both
gcc9 and gcc 10.)
 1.11 11-Nov-2019  joerg branches: 1.11.10;
Update LLVM to 10.0.0git (01f3a59fb3e2542fce74c768718f594d0debd0da)
 1.10 19-Jul-2014  christos branches: 1.10.4; 1.10.30;
undo previous
 1.9 19-Jul-2014  christos XXX: remove file that includes userland headers.
 1.8 19-Jul-2014  lneto lua: updated from 5.1 to 5.3 work3

* lua(1):
- changed lua_Integer to intmax_t
- updated distrib/sets/lists and etc/mtree
- updated bsd.lua.mk
- fixed bozohttpd (lua-bozo.c)
- compatibilized bindings: gpio, sqlite
* lua(4):
- removed floating-point and libc dependencies using '#ifndef _KERNEL'
- fixed division by zero and exponentiation
- libkern: added isalnum(), iscntrl(), isgraph(), isprint() and ispunct()
- acpica: removed isprint() from acnetbsd.h
- libc: moved strcspn.c, strpbrk.c and strspn.c to common
- removed stub headers
- compatibilized bindings: luapmf, luasystm
* reorganized luaconf.h
* updated doc/CHANGES and doc/RESPONSIBLE
 1.7 19-Jul-2014  lneto lua(4): added debug library
 1.6 27-Dec-2013  christos branches: 1.6.2; 1.6.4; 1.6.6;
Remove strncat now that it is part of the kernel anyway.
 1.5 02-Dec-2013  lneto merged luaconf.h of kernel and userspace Lua
 1.4 02-Dec-2013  lneto put Lua auxlib and some stdlibs in lua(4)
 1.3 02-Dec-2013  lneto changed lua_Number to int64_t
 1.2 31-Oct-2013  mbalmer fix build on arm
 1.1 16-Oct-2013  mbalmer welcome lua(4), a devide driver that can create and control Lua states inside the kernel
 1.6.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.6.6.1 27-Dec-2013  yamt file Makefile was added on branch yamt-pagecache on 2014-05-22 11:41:07 +0000
 1.6.4.2 18-May-2014  rmind sync with head
 1.6.4.1 27-Dec-2013  rmind file Makefile was added on branch rmind-smpnet on 2014-05-18 17:46:11 +0000
 1.6.2.1 10-Aug-2014  tls Rebase.
 1.10.30.1 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.10.4.2 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.10.4.1 19-Jul-2014  tls file Makefile was added on branch tls-maxphys on 2014-08-20 00:04:33 +0000
 1.11.10.1 17-Apr-2021  thorpej Sync with HEAD.
 1.12.16.1 11-Aug-2023  martin Pull up following revision(s) (requested by nikita in ticket #313):

external/mit/lua/dist/src/ljumptab.h up to 1.2
external/mit/lua/dist/src/lopnames.h up to 1.1.1.1
external/mit/lua/dist/src/lbitlib.c delete
external/mit/lua/dist/Makefile up to 1.9
external/mit/lua/dist/README up to 1.10
external/mit/lua/dist/README.import up to 1.5
external/mit/lua/dist/doc/contents.html up to 1.9
external/mit/lua/dist/doc/lua.1 up to 1.9
external/mit/lua/dist/doc/manual.html up to 1.10
external/mit/lua/dist/doc/readme.html up to 1.9
external/mit/lua/dist/src/Makefile up to 1.7
external/mit/lua/dist/src/lapi.c up to 1.15
external/mit/lua/dist/src/lapi.h up to 1.11
external/mit/lua/dist/src/lauxlib.c up to 1.13
external/mit/lua/dist/src/lauxlib.h up to 1.9
external/mit/lua/dist/src/lbaselib.c up to 1.11
external/mit/lua/dist/src/lcode.c up to 1.14
external/mit/lua/dist/src/lcode.h up to 1.9
external/mit/lua/dist/src/lcorolib.c up to 1.10
external/mit/lua/dist/src/lctype.c up to 1.8
external/mit/lua/dist/src/lctype.h up to 1.8
external/mit/lua/dist/src/ldblib.c up to 1.12
external/mit/lua/dist/src/ldebug.c up to 1.14
external/mit/lua/dist/src/ldebug.h up to 1.11
external/mit/lua/dist/src/ldo.c up to 1.12
external/mit/lua/dist/src/ldo.h up to 1.12
external/mit/lua/dist/src/ldump.c up to 1.12
external/mit/lua/dist/src/lfunc.c up to 1.11
external/mit/lua/dist/src/lfunc.h up to 1.11
external/mit/lua/dist/src/lgc.c up to 1.13
external/mit/lua/dist/src/lgc.h up to 1.10
external/mit/lua/dist/src/linit.c up to 1.10
external/mit/lua/dist/src/liolib.c up to 1.10
external/mit/lua/dist/src/llex.c up to 1.14
external/mit/lua/dist/src/llex.h up to 1.9
external/mit/lua/dist/src/llimits.h up to 1.12
external/mit/lua/dist/src/lmathlib.c up to 1.11
external/mit/lua/dist/src/lmem.c up to 1.11
external/mit/lua/dist/src/lmem.h up to 1.9
external/mit/lua/dist/src/loadlib.c up to 1.11
external/mit/lua/dist/src/lobject.c up to 1.14
external/mit/lua/dist/src/lobject.h up to 1.12
external/mit/lua/dist/src/lopcodes.c up to 1.9
external/mit/lua/dist/src/lopcodes.h up to 1.10
external/mit/lua/dist/src/loslib.c up to 1.13
external/mit/lua/dist/src/lparser.c up to 1.15
external/mit/lua/dist/src/lparser.h up to 1.9
external/mit/lua/dist/src/lprefix.h up to 1.8
external/mit/lua/dist/src/lstate.c up to 1.12
external/mit/lua/dist/src/lstate.h up to 1.11
external/mit/lua/dist/src/lstring.c up to 1.10
external/mit/lua/dist/src/lstring.h up to 1.10
external/mit/lua/dist/src/lstrlib.c up to 1.21
external/mit/lua/dist/src/ltable.c up to 1.13
external/mit/lua/dist/src/ltable.h up to 1.10
external/mit/lua/dist/src/ltablib.c up to 1.11
external/mit/lua/dist/src/ltm.c up to 1.11
external/mit/lua/dist/src/ltm.h up to 1.10
external/mit/lua/dist/src/lua.c up to 1.12
external/mit/lua/dist/src/lua.h up to 1.14
external/mit/lua/dist/src/luac.c up to 1.12
external/mit/lua/dist/src/luaconf.h up to 1.25
external/mit/lua/dist/src/lualib.h up to 1.8
external/mit/lua/dist/src/lundump.c up to 1.11
external/mit/lua/dist/src/lundump.h up to 1.8
external/mit/lua/dist/src/lutf8lib.c up to 1.11
external/mit/lua/dist/src/lvm.c up to 1.20
external/mit/lua/dist/src/lvm.h up to 1.12
external/mit/lua/dist/src/lzio.c up to 1.9
external/mit/lua/dist/src/lzio.h up to 1.9
external/mit/lua/lib/liblua/Makefile up to 1.13
external/mit/lua/lib/liblua/shlib_version up to 1.4
distrib/sets/lists/base/ad.aarch64 1.37
distrib/sets/lists/base/mi 1.1315
distrib/sets/lists/base/shl.mi 1.947,1.949
distrib/sets/lists/debug/shl.mi 1.304,1.312
etc/mtree/NetBSD.dist.base 1.247
etc/mtree/NetBSD.dist.compat.in 1.2
share/mk/bsd.lua.mk 1.9
sys/modules/examples/luahello/luahello.lua 1.3
sys/modules/lua/Makefile 1.13
doc/CHANGES (manually edited)
doc/3RDPARTY (manually edited)

Import lua 5.4.6
 1.2 19-Jul-2014  lneto lua: updated from 5.1 to 5.3 work3

* lua(1):
- changed lua_Integer to intmax_t
- updated distrib/sets/lists and etc/mtree
- updated bsd.lua.mk
- fixed bozohttpd (lua-bozo.c)
- compatibilized bindings: gpio, sqlite
* lua(4):
- removed floating-point and libc dependencies using '#ifndef _KERNEL'
- fixed division by zero and exponentiation
- libkern: added isalnum(), iscntrl(), isgraph(), isprint() and ispunct()
- acpica: removed isprint() from acnetbsd.h
- libc: moved strcspn.c, strpbrk.c and strspn.c to common
- removed stub headers
- compatibilized bindings: luapmf, luasystm
* reorganized luaconf.h
* updated doc/CHANGES and doc/RESPONSIBLE
 1.1 16-Oct-2013  mbalmer branches: 1.1.2; 1.1.4; 1.1.6;
welcome lua(4), a devide driver that can create and control Lua states inside the kernel
 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-Oct-2013  yamt file assert.h was added on branch yamt-pagecache on 2014-05-22 11:41:07 +0000
 1.1.4.2 18-May-2014  rmind sync with head
 1.1.4.1 16-Oct-2013  rmind file assert.h was added on branch rmind-smpnet on 2014-05-18 17:46:11 +0000
 1.1.2.1 10-Aug-2014  tls Rebase.
 1.2 19-Jul-2014  lneto lua: updated from 5.1 to 5.3 work3

* lua(1):
- changed lua_Integer to intmax_t
- updated distrib/sets/lists and etc/mtree
- updated bsd.lua.mk
- fixed bozohttpd (lua-bozo.c)
- compatibilized bindings: gpio, sqlite
* lua(4):
- removed floating-point and libc dependencies using '#ifndef _KERNEL'
- fixed division by zero and exponentiation
- libkern: added isalnum(), iscntrl(), isgraph(), isprint() and ispunct()
- acpica: removed isprint() from acnetbsd.h
- libc: moved strcspn.c, strpbrk.c and strspn.c to common
- removed stub headers
- compatibilized bindings: luapmf, luasystm
* reorganized luaconf.h
* updated doc/CHANGES and doc/RESPONSIBLE
 1.1 16-Oct-2013  mbalmer branches: 1.1.2; 1.1.4; 1.1.6;
welcome lua(4), a devide driver that can create and control Lua states inside the kernel
 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-Oct-2013  yamt file ctype.h was added on branch yamt-pagecache on 2014-05-22 11:41:07 +0000
 1.1.4.2 18-May-2014  rmind sync with head
 1.1.4.1 16-Oct-2013  rmind file ctype.h was added on branch rmind-smpnet on 2014-05-18 17:46:11 +0000
 1.1.2.1 10-Aug-2014  tls Rebase.
 1.3 19-Jul-2014  lneto lua: updated from 5.1 to 5.3 work3

* lua(1):
- changed lua_Integer to intmax_t
- updated distrib/sets/lists and etc/mtree
- updated bsd.lua.mk
- fixed bozohttpd (lua-bozo.c)
- compatibilized bindings: gpio, sqlite
* lua(4):
- removed floating-point and libc dependencies using '#ifndef _KERNEL'
- fixed division by zero and exponentiation
- libkern: added isalnum(), iscntrl(), isgraph(), isprint() and ispunct()
- acpica: removed isprint() from acnetbsd.h
- libc: moved strcspn.c, strpbrk.c and strspn.c to common
- removed stub headers
- compatibilized bindings: luapmf, luasystm
* reorganized luaconf.h
* updated doc/CHANGES and doc/RESPONSIBLE
 1.2 19-Jul-2014  lneto lua(4): cleaned stubs
 1.1 16-Oct-2013  mbalmer branches: 1.1.2; 1.1.4; 1.1.6;
welcome lua(4), a devide driver that can create and control Lua states inside the kernel
 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-Oct-2013  yamt file errno.h was added on branch yamt-pagecache on 2014-05-22 11:41:08 +0000
 1.1.4.2 18-May-2014  rmind sync with head
 1.1.4.1 16-Oct-2013  rmind file errno.h was added on branch rmind-smpnet on 2014-05-18 17:46:11 +0000
 1.1.2.1 10-Aug-2014  tls Rebase.
 1.1 16-Oct-2013  mbalmer branches: 1.1.4; 1.1.6; 1.1.10;
welcome lua(4), a devide driver that can create and control Lua states inside the kernel
 1.1.10.2 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.1.10.1 16-Oct-2013  tls file infinite.lua was added on branch tls-maxphys on 2014-08-20 00:04:33 +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-Oct-2013  yamt file infinite.lua was added on branch yamt-pagecache on 2014-05-22 11:41:08 +0000
 1.1.4.2 18-May-2014  rmind sync with head
 1.1.4.1 16-Oct-2013  rmind file infinite.lua was added on branch rmind-smpnet on 2014-05-18 17:46:11 +0000
 1.3 19-Jul-2014  lneto lua: updated from 5.1 to 5.3 work3

* lua(1):
- changed lua_Integer to intmax_t
- updated distrib/sets/lists and etc/mtree
- updated bsd.lua.mk
- fixed bozohttpd (lua-bozo.c)
- compatibilized bindings: gpio, sqlite
* lua(4):
- removed floating-point and libc dependencies using '#ifndef _KERNEL'
- fixed division by zero and exponentiation
- libkern: added isalnum(), iscntrl(), isgraph(), isprint() and ispunct()
- acpica: removed isprint() from acnetbsd.h
- libc: moved strcspn.c, strpbrk.c and strspn.c to common
- removed stub headers
- compatibilized bindings: luapmf, luasystm
* reorganized luaconf.h
* updated doc/CHANGES and doc/RESPONSIBLE
 1.2 19-Jul-2014  lneto lua(4): cleaned stubs
 1.1 16-Oct-2013  mbalmer branches: 1.1.2; 1.1.4; 1.1.6;
welcome lua(4), a devide driver that can create and control Lua states inside the kernel
 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-Oct-2013  yamt file inttypes.h was added on branch yamt-pagecache on 2014-05-22 11:41:08 +0000
 1.1.4.2 18-May-2014  rmind sync with head
 1.1.4.1 16-Oct-2013  rmind file inttypes.h was added on branch rmind-smpnet on 2014-05-18 17:46:11 +0000
 1.1.2.1 10-Aug-2014  tls Rebase.
 1.2 19-Jul-2014  lneto lua: updated from 5.1 to 5.3 work3

* lua(1):
- changed lua_Integer to intmax_t
- updated distrib/sets/lists and etc/mtree
- updated bsd.lua.mk
- fixed bozohttpd (lua-bozo.c)
- compatibilized bindings: gpio, sqlite
* lua(4):
- removed floating-point and libc dependencies using '#ifndef _KERNEL'
- fixed division by zero and exponentiation
- libkern: added isalnum(), iscntrl(), isgraph(), isprint() and ispunct()
- acpica: removed isprint() from acnetbsd.h
- libc: moved strcspn.c, strpbrk.c and strspn.c to common
- removed stub headers
- compatibilized bindings: luapmf, luasystm
* reorganized luaconf.h
* updated doc/CHANGES and doc/RESPONSIBLE
 1.1 16-Oct-2013  mbalmer branches: 1.1.2; 1.1.4; 1.1.6;
welcome lua(4), a devide driver that can create and control Lua states inside the kernel
 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-Oct-2013  yamt file limits.h was added on branch yamt-pagecache on 2014-05-22 11:41:08 +0000
 1.1.4.2 18-May-2014  rmind sync with head
 1.1.4.1 16-Oct-2013  rmind file limits.h was added on branch rmind-smpnet on 2014-05-18 17:46:11 +0000
 1.1.2.1 10-Aug-2014  tls Rebase.
 1.2 19-Jul-2014  lneto lua: updated from 5.1 to 5.3 work3

* lua(1):
- changed lua_Integer to intmax_t
- updated distrib/sets/lists and etc/mtree
- updated bsd.lua.mk
- fixed bozohttpd (lua-bozo.c)
- compatibilized bindings: gpio, sqlite
* lua(4):
- removed floating-point and libc dependencies using '#ifndef _KERNEL'
- fixed division by zero and exponentiation
- libkern: added isalnum(), iscntrl(), isgraph(), isprint() and ispunct()
- acpica: removed isprint() from acnetbsd.h
- libc: moved strcspn.c, strpbrk.c and strspn.c to common
- removed stub headers
- compatibilized bindings: luapmf, luasystm
* reorganized luaconf.h
* updated doc/CHANGES and doc/RESPONSIBLE
 1.1 16-Oct-2013  mbalmer branches: 1.1.2; 1.1.4; 1.1.6;
welcome lua(4), a devide driver that can create and control Lua states inside the kernel
 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-Oct-2013  yamt file locale.h was added on branch yamt-pagecache on 2014-05-22 11:41:08 +0000
 1.1.4.2 18-May-2014  rmind sync with head
 1.1.4.1 16-Oct-2013  rmind file locale.h was added on branch rmind-smpnet on 2014-05-18 17:46:11 +0000
 1.1.2.1 10-Aug-2014  tls Rebase.
 1.28 31-Mar-2022  pgoyette For device modules that provide both auto-config and /dev/xxx
interfaces, make sure that initialization and destruction
follow the proper sequence. This is triggered by the recent
changes to the devsw stuff; per riastradh@ the required call
sequence is:

devsw_attach()
config_init_component() or config_cf*_attach()
...
config_fini_component() or config_cf*_detach()
devsw_detach()

While here, add a few missing calls to some of the detach
routines.

Testing of these changes has been limited to:
1. compile without build break
2. no related test failures from atf
3. modload/modunload work as well as
before.

No functional device testing done, since I don't have any
of these devices. Let me know of any damage I might cause
here!

XXX Some of the modules affected by this commit are already
XXX broken; see kern/56772. This commit does not break
any additional modules (as far as I know).
 1.27 08-Aug-2021  rin Fix LIST operations, found by strictly-aligned CPUs, i.e., ARMv5 and IBM403:
- Initialize LIST_HEAD.
- Use LIST_FOREACH_SAFE() where necessary.
 1.26 07-Aug-2021  rin Make sure that buffers allocated by lua_alloc() are aligned to 8-byte
boundaries as done by kmem_alloc(9).

Fix alignment faults on armv5te; GCC emits ldrd/strd instructions for
memory operands that are guaranteed to be aligned properly.

Drop unnecessary __packed attribute from alloc_header_t at the same time.
 1.25 29-Jun-2021  dholland Add containment for the cloning devices hack in vn_open.

Cloning devices (and also things like /dev/stderr) work by allocating
a struct file, stuffing it in the file table (which is a layer
violation), stuffing the file descriptor number for it in a magic
field of struct lwp (which is gross), and then "failing" with one of
two magic errnos, EDUPFD or EMOVEFD.

Before this commit, all callers of vn_open in the kernel (there are
quite a few) were expected to check for these errors and handle the
situation. Needless to say, none of them except for open() itself did,
resulting in internal negative errnos being returned to userspace.

This hack is fairly deeply rooted and cannot be eliminated all at
once. This commit adds logic to handle the magic errnos inside
vn_open; now on success vn_open returns either a vnode or an integer
file descriptor, along with a flag that says whether the underlying
code requested EDUPFD or EMOVEFD. Callers not prepared to cope with
file descriptors can pass NULL for the extra return values, in which
case if a file descriptor would be produced vn_open fails with
EOPNOTSUPP.

Since I'm rearranging vn_open's signature anyway, stop exposing struct
nameidata. Instead, take three arguments: an optional vnode to use as
the starting point (like openat()), the path, and additional namei
flags to use, restricted to NOCHROOT and TRYEMULROOT. (Other namei
behavior, e.g. NOFOLLOW, can be requested via the open flags.)

This change requires a kernel bump. Ride the one an hour ago.
(That was supposed to be coordinated; did not intend to let an hour
slip by. My fault.)
 1.24 26-Dec-2017  martin branches: 1.24.20;
Fix cargo cult ioctl implementation for LUAINFO: the name and desc fields
are arrays, not pointers, so don't use copyoutstr on them, but instead
copyin/copyout the whole array of structures.
Fixes PR 52864 for me (on sparc64).
 1.23 20-May-2017  mbalmer branches: 1.23.2;
always put the module on the stack
 1.22 20-May-2017  mbalmer Only load a module if it is not already loaded in a state (much like userland
Lua handles require).
Fixes PR kern/52226.
 1.21 11-May-2017  mbalmer Avoid possible null pointer dereferencing.
Fixes PR kern/52225.
 1.20 16-Apr-2017  riastradh branches: 1.20.2;
Can't destroy pb until we're done using it.
 1.19 20-Jan-2017  maya Check pmf_device_register return value. NFC
Appeases static analyzers.
 1.18 14-Jul-2016  msaitoh branches: 1.18.2; 1.18.4;
- Use aprint*() instead of printf() in xxx_attach().
- Add missing aprint_naive("\n");
- KNF
 1.17 21-May-2016  salazar fix double require bug
 1.16 07-Feb-2015  christos plug leak on error. Reported by:
http://www.m00nbsd.net/ae123a9bae03f7dde5c6d654412daf5a.html#Report-4
 1.15 30-Nov-2014  lneto lua(4): fixed require
 1.14 24-Sep-2014  mbalmer branches: 1.14.2;
whitespace, knf, comments, but no functional change
 1.13 25-Jul-2014  dholland branches: 1.13.2; 1.13.4;
Add d_discard to all struct cdevsw instances I could find.

All have been set to "nodiscard"; some should get a real implementation.
 1.12 19-Jul-2014  lneto lua: updated from 5.1 to 5.3 work3

* lua(1):
- changed lua_Integer to intmax_t
- updated distrib/sets/lists and etc/mtree
- updated bsd.lua.mk
- fixed bozohttpd (lua-bozo.c)
- compatibilized bindings: gpio, sqlite
* lua(4):
- removed floating-point and libc dependencies using '#ifndef _KERNEL'
- fixed division by zero and exponentiation
- libkern: added isalnum(), iscntrl(), isgraph(), isprint() and ispunct()
- acpica: removed isprint() from acnetbsd.h
- libc: moved strcspn.c, strpbrk.c and strspn.c to common
- removed stub headers
- compatibilized bindings: luapmf, luasystm
* reorganized luaconf.h
* updated doc/CHANGES and doc/RESPONSIBLE
 1.11 19-Jul-2014  lneto lua(4): uniformed the KPI name space using 'klua_' prefix
 1.10 19-Jul-2014  lneto lua(4): using lua_CFunction
 1.9 19-Jul-2014  lneto lua(4): added support for running Lua scripts in intr context

* using kmem_intr on lua_alloc
* using mutex directly on klua_lock
* added ipl arg on klua_newstate()
* added kluaL_newstate function
* fixed synchronization: locking the Lua state on luaioctl
 1.8 16-Mar-2014  dholland branches: 1.8.2; 1.8.4; 1.8.6;
Change (mostly mechanically) every cdevsw/bdevsw I can find to use
designated initializers.

I have not built every extant kernel so I have probably broken at
least one build; however I've also found and fixed some wrong
cdevsw/bdevsw entries so even if so I think we come out ahead.
 1.7 25-Feb-2014  pooka Ensure that the top level sysctl nodes (kern, vfs, net, ...) exist before
the sysctl link sets are processed, and remove redundancy.

Shaves >13kB off of an amd64 GENERIC, not to mention >1k duplicate
lines of code.
 1.6 04-Dec-2013  lneto fixed lua(4) alloc (nsize can be lesser than osize)
 1.5 23-Nov-2013  mbalmer switch from malloc(9) to kmem(9)
 1.4 29-Oct-2013  mbalmer initialize variables
 1.3 23-Oct-2013  mbalmer use MODULE_CLASS_MISC for Lua modules
 1.2 18-Oct-2013  mbalmer fix CVS marker and copyright year
 1.1 16-Oct-2013  mbalmer welcome lua(4), a devide driver that can create and control Lua states inside the kernel
 1.8.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.8.6.1 16-Mar-2014  yamt file lua.c was added on branch yamt-pagecache on 2014-05-22 11:41:08 +0000
 1.8.4.2 18-May-2014  rmind sync with head
 1.8.4.1 16-Mar-2014  rmind file lua.c was added on branch rmind-smpnet on 2014-05-18 17:46:11 +0000
 1.8.2.1 10-Aug-2014  tls Rebase.
 1.13.4.3 03-Dec-2017  jdolecek update from HEAD
 1.13.4.2 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.13.4.1 25-Jul-2014  tls file lua.c was added on branch tls-maxphys on 2014-08-20 00:04:33 +0000
 1.13.2.7 25-Feb-2018  snj Pull up following revision(s) (requested by sevan in ticket #1545):
sys/modules/lua/lua.c: up to 1.24
whitespace, knf, comments, but no functional change
--
lua(4): fixed require
--
plug leak on error. Reported by:
http://www.m00nbsd.net/ae123a9bae03f7dde5c6d654412daf5a.html#Report-4
--
fix double require bug
--
Use aprint*() instead of printf() in xxx_attach().
--
Check pmf_device_register return value. NFC
Appeases static analyzers.
Can't destroy pb until we're done using it.
--
Fix cargo cult ioctl implementation for LUAINFO: the name and desc fields
are arrays, not pointers, so don't use copyoutstr on them, but instead
copyin/copyout the whole array of structures.
Fixes PR 52864 for me (on sparc64).
 1.13.2.6 23-Jul-2017  snj Pull up following revision(s) (requested by mbalmer in ticket #1423):
sys/modules/lua/lua.c: revision 1.23
always put the module on the stack
 1.13.2.5 23-Jul-2017  snj Pull up following revision(s) (requested by mbalmer in ticket #1422):
sys/modules/lua/lua.c: revision 1.22 via patch
Only load a module if it is not already loaded in a state (much like
userland Lua handles require).
Fixes PR kern/52226.
 1.13.2.4 23-Jul-2017  snj Pull up following revision(s) (requested by mbalmer in ticket #1418):
sys/modules/lua/lua.c: revision 1.21
Avoid possible null pointer dereferencing.
Fixes PR kern/52225.
 1.13.2.3 22-May-2016  martin branches: 1.13.2.3.4;
Pull up following revision(s) (requested by salazar in ticket #1171):
sys/modules/lua/lua.c: revision 1.17
fix double require bug
 1.13.2.2 16-Feb-2015  martin Pull up following revision(s) (requested by maxv in ticket #520):
sys/ufs/chfs/ebh.c: revision 1.6
sys/dev/sdmmc/sdmmc_mem.c: revision 1.33
sys/dev/ic/aic7xxx.c: revision 1.132
sys/fs/nfs/common/krpc_subr.c: revision 1.2
sys/modules/lua/lua.c: revision 1.16
sys/fs/udf/udf_subr.c: revision 1.128
sys/ufs/chfs/chfs_scan.c: revision 1.6
sys/dev/ic/an.c: revision 1.62

Fix six memory leaks and two inconsistencies.
 1.13.2.1 01-Dec-2014  martin Pull up following revision(s) (requested by lneto in ticket #283):
sys/modules/lua/lua.c: revision 1.15
lua(4): fixed require
 1.13.2.3.4.1 23-Jul-2017  snj Pull up following revision(s) (requested by mbalmer in ticket #1418):
sys/modules/lua/lua.c: revision 1.21
Avoid possible null pointer dereferencing.
Fixes PR kern/52225.
 1.14.2.5 28-Aug-2017  skrll Sync with HEAD
 1.14.2.4 05-Feb-2017  skrll Sync with HEAD
 1.14.2.3 05-Oct-2016  skrll Sync with HEAD
 1.14.2.2 29-May-2016  skrll Sync with HEAD
 1.14.2.1 06-Apr-2015  skrll Sync with HEAD
 1.18.4.1 21-Apr-2017  bouyer Sync with HEAD
 1.18.2.2 26-Apr-2017  pgoyette Sync with HEAD
 1.18.2.1 20-Mar-2017  pgoyette Sync with HEAD
 1.20.2.4 19-May-2017  pgoyette Resolve conflicts from previous merge (all resulting from $NetBSD
keywork expansion)
 1.20.2.3 17-May-2017  pgoyette At suggestion of chuq@, modify config_attach_pseudo() to return with a
reference held on the device.

Adapt callers to expect the reference to exist, and to ensure that the
reference is released.
 1.20.2.2 29-Apr-2017  pgoyette Revise previous. Rather than explicitly including <sys/localcount.h>
in all the places where {b,c}devsw is initialized, just include it
from <sys/conf.h>. This avoids an include-sequence dependancy.
 1.20.2.1 29-Apr-2017  pgoyette Add DEVSW_MODULE_INIT to existing device-driver modules, so that they
willl have a localcount defined and thus be permitted to load. Without
a localcount, loading the module will return EINVAL.

XXX the dtrace and drm stuff might need to be fed back upstream?
 1.23.2.1 07-Jan-2018  snj Pull up following revision(s) (requested by sevan in ticket #469):
sys/modules/lua/lua.c: revision 1.24
Fix cargo cult ioctl implementation for LUAINFO: the name and desc fields
are arrays, not pointers, so don't use copyoutstr on them, but instead
copyin/copyout the whole array of structures.
Fixes PR 52864 for me (on sparc64).
 1.24.20.1 01-Aug-2021  thorpej Sync with HEAD.
 1.3 02-Dec-2013  lneto merged luaconf.h of kernel and userspace Lua
 1.2 02-Dec-2013  lneto changed lua_Number to int64_t
 1.1 16-Oct-2013  mbalmer welcome lua(4), a devide driver that can create and control Lua states inside the kernel
 1.2 19-Jul-2014  lneto branches: 1.2.4;
lua(4): using lua_CFunction
 1.1 16-Oct-2013  mbalmer branches: 1.1.2; 1.1.4; 1.1.6;
welcome lua(4), a devide driver that can create and control Lua states inside the kernel
 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-Oct-2013  yamt file luavar.h was added on branch yamt-pagecache on 2014-05-22 11:41:08 +0000
 1.1.4.2 18-May-2014  rmind sync with head
 1.1.4.1 16-Oct-2013  rmind file luavar.h was added on branch rmind-smpnet on 2014-05-18 17:46:11 +0000
 1.1.2.1 10-Aug-2014  tls Rebase.
 1.2.4.2 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.2.4.1 19-Jul-2014  tls file luavar.h was added on branch tls-maxphys on 2014-08-20 00:04:33 +0000
 1.2 19-Jul-2014  lneto lua: updated from 5.1 to 5.3 work3

* lua(1):
- changed lua_Integer to intmax_t
- updated distrib/sets/lists and etc/mtree
- updated bsd.lua.mk
- fixed bozohttpd (lua-bozo.c)
- compatibilized bindings: gpio, sqlite
* lua(4):
- removed floating-point and libc dependencies using '#ifndef _KERNEL'
- fixed division by zero and exponentiation
- libkern: added isalnum(), iscntrl(), isgraph(), isprint() and ispunct()
- acpica: removed isprint() from acnetbsd.h
- libc: moved strcspn.c, strpbrk.c and strspn.c to common
- removed stub headers
- compatibilized bindings: luapmf, luasystm
* reorganized luaconf.h
* updated doc/CHANGES and doc/RESPONSIBLE
 1.1 16-Oct-2013  mbalmer branches: 1.1.2; 1.1.4; 1.1.6;
welcome lua(4), a devide driver that can create and control Lua states inside the kernel
 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-Oct-2013  yamt file math.h was added on branch yamt-pagecache on 2014-05-22 11:41:08 +0000
 1.1.4.2 18-May-2014  rmind sync with head
 1.1.4.1 16-Oct-2013  rmind file math.h was added on branch rmind-smpnet on 2014-05-18 17:46:11 +0000
 1.1.2.1 10-Aug-2014  tls Rebase.
 1.2 19-Jul-2014  lneto lua: updated from 5.1 to 5.3 work3

* lua(1):
- changed lua_Integer to intmax_t
- updated distrib/sets/lists and etc/mtree
- updated bsd.lua.mk
- fixed bozohttpd (lua-bozo.c)
- compatibilized bindings: gpio, sqlite
* lua(4):
- removed floating-point and libc dependencies using '#ifndef _KERNEL'
- fixed division by zero and exponentiation
- libkern: added isalnum(), iscntrl(), isgraph(), isprint() and ispunct()
- acpica: removed isprint() from acnetbsd.h
- libc: moved strcspn.c, strpbrk.c and strspn.c to common
- removed stub headers
- compatibilized bindings: luapmf, luasystm
* reorganized luaconf.h
* updated doc/CHANGES and doc/RESPONSIBLE
 1.1 16-Oct-2013  mbalmer branches: 1.1.2; 1.1.4; 1.1.6;
welcome lua(4), a devide driver that can create and control Lua states inside the kernel
 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-Oct-2013  yamt file setjmp.h was added on branch yamt-pagecache on 2014-05-22 11:41:08 +0000
 1.1.4.2 18-May-2014  rmind sync with head
 1.1.4.1 16-Oct-2013  rmind file setjmp.h was added on branch rmind-smpnet on 2014-05-18 17:46:11 +0000
 1.1.2.1 10-Aug-2014  tls Rebase.
 1.2 19-Jul-2014  lneto lua: updated from 5.1 to 5.3 work3

* lua(1):
- changed lua_Integer to intmax_t
- updated distrib/sets/lists and etc/mtree
- updated bsd.lua.mk
- fixed bozohttpd (lua-bozo.c)
- compatibilized bindings: gpio, sqlite
* lua(4):
- removed floating-point and libc dependencies using '#ifndef _KERNEL'
- fixed division by zero and exponentiation
- libkern: added isalnum(), iscntrl(), isgraph(), isprint() and ispunct()
- acpica: removed isprint() from acnetbsd.h
- libc: moved strcspn.c, strpbrk.c and strspn.c to common
- removed stub headers
- compatibilized bindings: luapmf, luasystm
* reorganized luaconf.h
* updated doc/CHANGES and doc/RESPONSIBLE
 1.1 16-Oct-2013  mbalmer branches: 1.1.2; 1.1.4; 1.1.6;
welcome lua(4), a devide driver that can create and control Lua states inside the kernel
 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-Oct-2013  yamt file signal.h was added on branch yamt-pagecache on 2014-05-22 11:41:08 +0000
 1.1.4.2 18-May-2014  rmind sync with head
 1.1.4.1 16-Oct-2013  rmind file signal.h was added on branch rmind-smpnet on 2014-05-18 17:46:11 +0000
 1.1.2.1 10-Aug-2014  tls Rebase.
 1.3 19-Jul-2014  lneto lua: updated from 5.1 to 5.3 work3

* lua(1):
- changed lua_Integer to intmax_t
- updated distrib/sets/lists and etc/mtree
- updated bsd.lua.mk
- fixed bozohttpd (lua-bozo.c)
- compatibilized bindings: gpio, sqlite
* lua(4):
- removed floating-point and libc dependencies using '#ifndef _KERNEL'
- fixed division by zero and exponentiation
- libkern: added isalnum(), iscntrl(), isgraph(), isprint() and ispunct()
- acpica: removed isprint() from acnetbsd.h
- libc: moved strcspn.c, strpbrk.c and strspn.c to common
- removed stub headers
- compatibilized bindings: luapmf, luasystm
* reorganized luaconf.h
* updated doc/CHANGES and doc/RESPONSIBLE
 1.2 19-Jul-2014  lneto lua(4): cleaned stubs
 1.1 16-Oct-2013  mbalmer branches: 1.1.2; 1.1.4; 1.1.6;
welcome lua(4), a devide driver that can create and control Lua states inside the kernel
 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-Oct-2013  yamt file stdarg.h was added on branch yamt-pagecache on 2014-05-22 11:41:08 +0000
 1.1.4.2 18-May-2014  rmind sync with head
 1.1.4.1 16-Oct-2013  rmind file stdarg.h was added on branch rmind-smpnet on 2014-05-18 17:46:11 +0000
 1.1.2.1 10-Aug-2014  tls Rebase.
 1.3 19-Jul-2014  lneto lua: updated from 5.1 to 5.3 work3

* lua(1):
- changed lua_Integer to intmax_t
- updated distrib/sets/lists and etc/mtree
- updated bsd.lua.mk
- fixed bozohttpd (lua-bozo.c)
- compatibilized bindings: gpio, sqlite
* lua(4):
- removed floating-point and libc dependencies using '#ifndef _KERNEL'
- fixed division by zero and exponentiation
- libkern: added isalnum(), iscntrl(), isgraph(), isprint() and ispunct()
- acpica: removed isprint() from acnetbsd.h
- libc: moved strcspn.c, strpbrk.c and strspn.c to common
- removed stub headers
- compatibilized bindings: luapmf, luasystm
* reorganized luaconf.h
* updated doc/CHANGES and doc/RESPONSIBLE
 1.2 19-Jul-2014  lneto lua(4): cleaned stubs
 1.1 16-Oct-2013  mbalmer branches: 1.1.2; 1.1.4; 1.1.6;
welcome lua(4), a devide driver that can create and control Lua states inside the kernel
 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-Oct-2013  yamt file stddef.h was added on branch yamt-pagecache on 2014-05-22 11:41:08 +0000
 1.1.4.2 18-May-2014  rmind sync with head
 1.1.4.1 16-Oct-2013  rmind file stddef.h was added on branch rmind-smpnet on 2014-05-18 17:46:11 +0000
 1.1.2.1 10-Aug-2014  tls Rebase.
 1.3 19-Jul-2014  lneto lua: updated from 5.1 to 5.3 work3

* lua(1):
- changed lua_Integer to intmax_t
- updated distrib/sets/lists and etc/mtree
- updated bsd.lua.mk
- fixed bozohttpd (lua-bozo.c)
- compatibilized bindings: gpio, sqlite
* lua(4):
- removed floating-point and libc dependencies using '#ifndef _KERNEL'
- fixed division by zero and exponentiation
- libkern: added isalnum(), iscntrl(), isgraph(), isprint() and ispunct()
- acpica: removed isprint() from acnetbsd.h
- libc: moved strcspn.c, strpbrk.c and strspn.c to common
- removed stub headers
- compatibilized bindings: luapmf, luasystm
* reorganized luaconf.h
* updated doc/CHANGES and doc/RESPONSIBLE
 1.2 02-Dec-2013  joerg branches: 1.2.2; 1.2.4; 1.2.6;
Let's use a format string, shall we?
 1.1 16-Oct-2013  mbalmer welcome lua(4), a devide driver that can create and control Lua states inside the kernel
 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 02-Dec-2013  yamt file stdio.h was added on branch yamt-pagecache on 2014-05-22 11:41:08 +0000
 1.2.4.2 18-May-2014  rmind sync with head
 1.2.4.1 02-Dec-2013  rmind file stdio.h was added on branch rmind-smpnet on 2014-05-18 17:46:11 +0000
 1.2.2.1 10-Aug-2014  tls Rebase.
 1.3 19-Jul-2014  lneto lua: updated from 5.1 to 5.3 work3

* lua(1):
- changed lua_Integer to intmax_t
- updated distrib/sets/lists and etc/mtree
- updated bsd.lua.mk
- fixed bozohttpd (lua-bozo.c)
- compatibilized bindings: gpio, sqlite
* lua(4):
- removed floating-point and libc dependencies using '#ifndef _KERNEL'
- fixed division by zero and exponentiation
- libkern: added isalnum(), iscntrl(), isgraph(), isprint() and ispunct()
- acpica: removed isprint() from acnetbsd.h
- libc: moved strcspn.c, strpbrk.c and strspn.c to common
- removed stub headers
- compatibilized bindings: luapmf, luasystm
* reorganized luaconf.h
* updated doc/CHANGES and doc/RESPONSIBLE
 1.2 19-Jul-2014  lneto lua(4): cleaned stubs
 1.1 16-Oct-2013  mbalmer branches: 1.1.2; 1.1.4; 1.1.6;
welcome lua(4), a devide driver that can create and control Lua states inside the kernel
 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-Oct-2013  yamt file stdlib.h was added on branch yamt-pagecache on 2014-05-22 11:41:08 +0000
 1.1.4.2 18-May-2014  rmind sync with head
 1.1.4.1 16-Oct-2013  rmind file stdlib.h was added on branch rmind-smpnet on 2014-05-18 17:46:11 +0000
 1.1.2.1 10-Aug-2014  tls Rebase.
 1.2 19-Jul-2014  lneto lua: updated from 5.1 to 5.3 work3

* lua(1):
- changed lua_Integer to intmax_t
- updated distrib/sets/lists and etc/mtree
- updated bsd.lua.mk
- fixed bozohttpd (lua-bozo.c)
- compatibilized bindings: gpio, sqlite
* lua(4):
- removed floating-point and libc dependencies using '#ifndef _KERNEL'
- fixed division by zero and exponentiation
- libkern: added isalnum(), iscntrl(), isgraph(), isprint() and ispunct()
- acpica: removed isprint() from acnetbsd.h
- libc: moved strcspn.c, strpbrk.c and strspn.c to common
- removed stub headers
- compatibilized bindings: luapmf, luasystm
* reorganized luaconf.h
* updated doc/CHANGES and doc/RESPONSIBLE
 1.1 16-Oct-2013  mbalmer branches: 1.1.2; 1.1.4; 1.1.6;
welcome lua(4), a devide driver that can create and control Lua states inside the kernel
 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-Oct-2013  yamt file string.h was added on branch yamt-pagecache on 2014-05-22 11:41:08 +0000
 1.1.4.2 18-May-2014  rmind sync with head
 1.1.4.1 16-Oct-2013  rmind file string.h was added on branch rmind-smpnet on 2014-05-18 17:46:11 +0000
 1.1.2.1 10-Aug-2014  tls Rebase.
 1.2 19-Jul-2014  lneto branches: 1.2.4;
lua: updated from 5.1 to 5.3 work3

* lua(1):
- changed lua_Integer to intmax_t
- updated distrib/sets/lists and etc/mtree
- updated bsd.lua.mk
- fixed bozohttpd (lua-bozo.c)
- compatibilized bindings: gpio, sqlite
* lua(4):
- removed floating-point and libc dependencies using '#ifndef _KERNEL'
- fixed division by zero and exponentiation
- libkern: added isalnum(), iscntrl(), isgraph(), isprint() and ispunct()
- acpica: removed isprint() from acnetbsd.h
- libc: moved strcspn.c, strpbrk.c and strspn.c to common
- removed stub headers
- compatibilized bindings: luapmf, luasystm
* reorganized luaconf.h
* updated doc/CHANGES and doc/RESPONSIBLE
 1.1 16-Oct-2013  mbalmer branches: 1.1.2; 1.1.4; 1.1.6;
welcome lua(4), a devide driver that can create and control Lua states inside the kernel
 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-Oct-2013  yamt file test.lua was added on branch yamt-pagecache on 2014-05-22 11:41:08 +0000
 1.1.4.2 18-May-2014  rmind sync with head
 1.1.4.1 16-Oct-2013  rmind file test.lua was added on branch rmind-smpnet on 2014-05-18 17:46:11 +0000
 1.1.2.1 10-Aug-2014  tls Rebase.
 1.2.4.2 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.2.4.1 19-Jul-2014  tls file test.lua was added on branch tls-maxphys on 2014-08-20 00:04:33 +0000
 1.4 02-Feb-2015  lneto lua: updated from 5.3 work3 to 5.3.0

* improved the overall kernel Lua patch; fixed coercion
* updated lua/syslog
* updated luapmf and luasystm Makefiles
 1.3 19-Jul-2014  lneto branches: 1.3.2; 1.3.4; 1.3.6;
lua: updated from 5.1 to 5.3 work3

* lua(1):
- changed lua_Integer to intmax_t
- updated distrib/sets/lists and etc/mtree
- updated bsd.lua.mk
- fixed bozohttpd (lua-bozo.c)
- compatibilized bindings: gpio, sqlite
* lua(4):
- removed floating-point and libc dependencies using '#ifndef _KERNEL'
- fixed division by zero and exponentiation
- libkern: added isalnum(), iscntrl(), isgraph(), isprint() and ispunct()
- acpica: removed isprint() from acnetbsd.h
- libc: moved strcspn.c, strpbrk.c and strspn.c to common
- removed stub headers
- compatibilized bindings: luapmf, luasystm
* reorganized luaconf.h
* updated doc/CHANGES and doc/RESPONSIBLE
 1.2 16-Dec-2013  lneto branches: 1.2.2; 1.2.4; 1.2.6;
using luaL_register() in luapmf
 1.1 28-Oct-2013  mbalmer Initial Lua binding for pmf(9)
 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 16-Dec-2013  yamt file Makefile was added on branch yamt-pagecache on 2014-05-22 11:41:08 +0000
 1.2.4.2 18-May-2014  rmind sync with head
 1.2.4.1 16-Dec-2013  rmind file Makefile was added on branch rmind-smpnet on 2014-05-18 17:46:11 +0000
 1.2.2.1 10-Aug-2014  tls Rebase.
 1.3.6.1 06-Apr-2015  skrll Sync with HEAD
 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 19-Jul-2014  tls file Makefile was added on branch tls-maxphys on 2014-08-20 00:04:34 +0000
 1.3.2.1 04-Feb-2015  martin Pull up the following, requested by lneto in ticket #477:

external/mit/lua/dist/src/lprefix.h up to 1.2
external/mit/lua/dist/doc/alert.png delete
external/mit/lua/dist/Makefile up to 1.3
external/mit/lua/dist/README up to 1.3
external/mit/lua/dist/doc/contents.html up to 1.3
external/mit/lua/dist/doc/lua.1 up to 1.3
external/mit/lua/dist/doc/lua.css up to 1.3
external/mit/lua/dist/doc/manual.html up to 1.3
external/mit/lua/dist/doc/readme.html up to 1.3
external/mit/lua/dist/src/Makefile up to 1.3
external/mit/lua/dist/src/lapi.c up to 1.3
external/mit/lua/dist/src/lapi.h up to 1.3
external/mit/lua/dist/src/lauxlib.c up to 1.4
external/mit/lua/dist/src/lauxlib.h up to 1.3
external/mit/lua/dist/src/lbaselib.c up to 1.4
external/mit/lua/dist/src/lbitlib.c up to 1.2
external/mit/lua/dist/src/lcode.c up to 1.3
external/mit/lua/dist/src/lcode.h up to 1.3
external/mit/lua/dist/src/lcorolib.c up to 1.2
external/mit/lua/dist/src/lctype.c up to 1.2
external/mit/lua/dist/src/lctype.h up to 1.2
external/mit/lua/dist/src/ldblib.c up to 1.5
external/mit/lua/dist/src/ldebug.c up to 1.3
external/mit/lua/dist/src/ldebug.h up to 1.3
external/mit/lua/dist/src/ldo.c up to 1.3
external/mit/lua/dist/src/ldo.h up to 1.3
external/mit/lua/dist/src/ldump.c up to 1.3
external/mit/lua/dist/src/lfunc.c up to 1.3
external/mit/lua/dist/src/lgc.c up to 1.3
external/mit/lua/dist/src/lgc.h up to 1.3
external/mit/lua/dist/src/linit.c up to 1.4
external/mit/lua/dist/src/liolib.c up to 1.3
external/mit/lua/dist/src/llex.c up to 1.3
external/mit/lua/dist/src/llex.h up to 1.3
external/mit/lua/dist/src/llimits.h up to 1.3
external/mit/lua/dist/src/lmathlib.c up to 1.3
external/mit/lua/dist/src/lmem.c up to 1.3
external/mit/lua/dist/src/lmem.h up to 1.3
external/mit/lua/dist/src/loadlib.c up to 1.3
external/mit/lua/dist/src/lobject.c up to 1.4
external/mit/lua/dist/src/lobject.h up to 1.3
external/mit/lua/dist/src/lopcodes.c up to 1.3
external/mit/lua/dist/src/lopcodes.h up to 1.3
external/mit/lua/dist/src/loslib.c up to 1.3
external/mit/lua/dist/src/lparser.c up to 1.3
external/mit/lua/dist/src/lparser.h up to 1.3
external/mit/lua/dist/src/lstate.c up to 1.3
external/mit/lua/dist/src/lstate.h up to 1.3
external/mit/lua/dist/src/lstring.c up to 1.3
external/mit/lua/dist/src/lstring.h up to 1.3
external/mit/lua/dist/src/lstrlib.c up to 1.6
external/mit/lua/dist/src/ltable.c up to 1.3
external/mit/lua/dist/src/ltable.h up to 1.3
external/mit/lua/dist/src/ltablib.c up to 1.3
external/mit/lua/dist/src/ltm.c up to 1.3
external/mit/lua/dist/src/ltm.h up to 1.3
external/mit/lua/dist/src/lua.c up to 1.3
external/mit/lua/dist/src/lua.h up to 1.3
external/mit/lua/dist/src/luac.c up to 1.3
external/mit/lua/dist/src/luaconf.h up to 1.12
external/mit/lua/dist/src/lundump.c up to 1.3
external/mit/lua/dist/src/lutf8lib.c up to 1.2
external/mit/lua/dist/src/lvm.c up to 1.4
external/mit/lua/dist/src/lvm.h up to 1.3
external/mit/lua/dist/src/lzio.c up to 1.3
external/mit/lua/dist/src/lzio.h up to 1.3
lib/lua/syslog/syslog.c 1.2
sys/modules/luapmf/Makefile 1.4
sys/modules/luasystm/Makefile 1.3

Update Lua from 5.3 work3 to 5.3.0
* improved the overall kernel Lua patch; fixed coercion
* updated lua/syslog
* updated luapmf and luasystm Makefiles
 1.6 19-Jul-2014  lneto branches: 1.6.4;
lua: updated from 5.1 to 5.3 work3

* lua(1):
- changed lua_Integer to intmax_t
- updated distrib/sets/lists and etc/mtree
- updated bsd.lua.mk
- fixed bozohttpd (lua-bozo.c)
- compatibilized bindings: gpio, sqlite
* lua(4):
- removed floating-point and libc dependencies using '#ifndef _KERNEL'
- fixed division by zero and exponentiation
- libkern: added isalnum(), iscntrl(), isgraph(), isprint() and ispunct()
- acpica: removed isprint() from acnetbsd.h
- libc: moved strcspn.c, strpbrk.c and strspn.c to common
- removed stub headers
- compatibilized bindings: luapmf, luasystm
* reorganized luaconf.h
* updated doc/CHANGES and doc/RESPONSIBLE
 1.5 19-Jul-2014  lneto lua(4): uniformed the KPI name space using 'klua_' prefix
 1.4 19-Jul-2014  lneto lua(4): using lua_CFunction
 1.3 16-Dec-2013  lneto branches: 1.3.2; 1.3.4; 1.3.6;
using luaL_register() in luapmf
 1.2 29-Oct-2013  mbalmer check parameters
 1.1 28-Oct-2013  mbalmer Initial Lua binding for pmf(9)
 1.3.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.3.6.1 16-Dec-2013  yamt file luapmf.c was added on branch yamt-pagecache on 2014-05-22 11:41:08 +0000
 1.3.4.2 18-May-2014  rmind sync with head
 1.3.4.1 16-Dec-2013  rmind file luapmf.c was added on branch rmind-smpnet on 2014-05-18 17:46:11 +0000
 1.3.2.1 10-Aug-2014  tls Rebase.
 1.6.4.2 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.6.4.1 19-Jul-2014  tls file luapmf.c was added on branch tls-maxphys on 2014-08-20 00:04:34 +0000
 1.3 02-Feb-2015  lneto lua: updated from 5.3 work3 to 5.3.0

* improved the overall kernel Lua patch; fixed coercion
* updated lua/syslog
* updated luapmf and luasystm Makefiles
 1.2 19-Jul-2014  lneto branches: 1.2.2; 1.2.4; 1.2.6;
lua: updated from 5.1 to 5.3 work3

* lua(1):
- changed lua_Integer to intmax_t
- updated distrib/sets/lists and etc/mtree
- updated bsd.lua.mk
- fixed bozohttpd (lua-bozo.c)
- compatibilized bindings: gpio, sqlite
* lua(4):
- removed floating-point and libc dependencies using '#ifndef _KERNEL'
- fixed division by zero and exponentiation
- libkern: added isalnum(), iscntrl(), isgraph(), isprint() and ispunct()
- acpica: removed isprint() from acnetbsd.h
- libc: moved strcspn.c, strpbrk.c and strspn.c to common
- removed stub headers
- compatibilized bindings: luapmf, luasystm
* reorganized luaconf.h
* updated doc/CHANGES and doc/RESPONSIBLE
 1.1 17-Dec-2013  lneto branches: 1.1.2; 1.1.4; 1.1.6;
added luasystm files (for some reason it wasn't done in the last commit)
 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 17-Dec-2013  yamt file Makefile was added on branch yamt-pagecache on 2014-05-22 11:41:08 +0000
 1.1.4.2 18-May-2014  rmind sync with head
 1.1.4.1 17-Dec-2013  rmind file Makefile was added on branch rmind-smpnet on 2014-05-18 17:46:12 +0000
 1.1.2.1 10-Aug-2014  tls Rebase.
 1.2.6.1 06-Apr-2015  skrll Sync with HEAD
 1.2.4.3 03-Dec-2017  jdolecek update from HEAD
 1.2.4.2 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.2.4.1 19-Jul-2014  tls file Makefile was added on branch tls-maxphys on 2014-08-20 00:04:34 +0000
 1.2.2.1 04-Feb-2015  martin Pull up the following, requested by lneto in ticket #477:

external/mit/lua/dist/src/lprefix.h up to 1.2
external/mit/lua/dist/doc/alert.png delete
external/mit/lua/dist/Makefile up to 1.3
external/mit/lua/dist/README up to 1.3
external/mit/lua/dist/doc/contents.html up to 1.3
external/mit/lua/dist/doc/lua.1 up to 1.3
external/mit/lua/dist/doc/lua.css up to 1.3
external/mit/lua/dist/doc/manual.html up to 1.3
external/mit/lua/dist/doc/readme.html up to 1.3
external/mit/lua/dist/src/Makefile up to 1.3
external/mit/lua/dist/src/lapi.c up to 1.3
external/mit/lua/dist/src/lapi.h up to 1.3
external/mit/lua/dist/src/lauxlib.c up to 1.4
external/mit/lua/dist/src/lauxlib.h up to 1.3
external/mit/lua/dist/src/lbaselib.c up to 1.4
external/mit/lua/dist/src/lbitlib.c up to 1.2
external/mit/lua/dist/src/lcode.c up to 1.3
external/mit/lua/dist/src/lcode.h up to 1.3
external/mit/lua/dist/src/lcorolib.c up to 1.2
external/mit/lua/dist/src/lctype.c up to 1.2
external/mit/lua/dist/src/lctype.h up to 1.2
external/mit/lua/dist/src/ldblib.c up to 1.5
external/mit/lua/dist/src/ldebug.c up to 1.3
external/mit/lua/dist/src/ldebug.h up to 1.3
external/mit/lua/dist/src/ldo.c up to 1.3
external/mit/lua/dist/src/ldo.h up to 1.3
external/mit/lua/dist/src/ldump.c up to 1.3
external/mit/lua/dist/src/lfunc.c up to 1.3
external/mit/lua/dist/src/lgc.c up to 1.3
external/mit/lua/dist/src/lgc.h up to 1.3
external/mit/lua/dist/src/linit.c up to 1.4
external/mit/lua/dist/src/liolib.c up to 1.3
external/mit/lua/dist/src/llex.c up to 1.3
external/mit/lua/dist/src/llex.h up to 1.3
external/mit/lua/dist/src/llimits.h up to 1.3
external/mit/lua/dist/src/lmathlib.c up to 1.3
external/mit/lua/dist/src/lmem.c up to 1.3
external/mit/lua/dist/src/lmem.h up to 1.3
external/mit/lua/dist/src/loadlib.c up to 1.3
external/mit/lua/dist/src/lobject.c up to 1.4
external/mit/lua/dist/src/lobject.h up to 1.3
external/mit/lua/dist/src/lopcodes.c up to 1.3
external/mit/lua/dist/src/lopcodes.h up to 1.3
external/mit/lua/dist/src/loslib.c up to 1.3
external/mit/lua/dist/src/lparser.c up to 1.3
external/mit/lua/dist/src/lparser.h up to 1.3
external/mit/lua/dist/src/lstate.c up to 1.3
external/mit/lua/dist/src/lstate.h up to 1.3
external/mit/lua/dist/src/lstring.c up to 1.3
external/mit/lua/dist/src/lstring.h up to 1.3
external/mit/lua/dist/src/lstrlib.c up to 1.6
external/mit/lua/dist/src/ltable.c up to 1.3
external/mit/lua/dist/src/ltable.h up to 1.3
external/mit/lua/dist/src/ltablib.c up to 1.3
external/mit/lua/dist/src/ltm.c up to 1.3
external/mit/lua/dist/src/ltm.h up to 1.3
external/mit/lua/dist/src/lua.c up to 1.3
external/mit/lua/dist/src/lua.h up to 1.3
external/mit/lua/dist/src/luac.c up to 1.3
external/mit/lua/dist/src/luaconf.h up to 1.12
external/mit/lua/dist/src/lundump.c up to 1.3
external/mit/lua/dist/src/lutf8lib.c up to 1.2
external/mit/lua/dist/src/lvm.c up to 1.4
external/mit/lua/dist/src/lvm.h up to 1.3
external/mit/lua/dist/src/lzio.c up to 1.3
external/mit/lua/dist/src/lzio.h up to 1.3
lib/lua/syslog/syslog.c 1.2
sys/modules/luapmf/Makefile 1.4
sys/modules/luasystm/Makefile 1.3

Update Lua from 5.3 work3 to 5.3.0
* improved the overall kernel Lua patch; fixed coercion
* updated lua/syslog
* updated luapmf and luasystm Makefiles
 1.6 11-Aug-2022  gutteridge subr_prf.c & luasystm.c: s/panicing/panicking/ in comments
 1.5 19-Jul-2014  lneto branches: 1.5.4;
lua: updated from 5.1 to 5.3 work3

* lua(1):
- changed lua_Integer to intmax_t
- updated distrib/sets/lists and etc/mtree
- updated bsd.lua.mk
- fixed bozohttpd (lua-bozo.c)
- compatibilized bindings: gpio, sqlite
* lua(4):
- removed floating-point and libc dependencies using '#ifndef _KERNEL'
- fixed division by zero and exponentiation
- libkern: added isalnum(), iscntrl(), isgraph(), isprint() and ispunct()
- acpica: removed isprint() from acnetbsd.h
- libc: moved strcspn.c, strpbrk.c and strspn.c to common
- removed stub headers
- compatibilized bindings: luapmf, luasystm
* reorganized luaconf.h
* updated doc/CHANGES and doc/RESPONSIBLE
 1.4 19-Jul-2014  lneto lua(4): uniformed the KPI name space using 'klua_' prefix
 1.3 19-Jul-2014  lneto lua(4): using lua_CFunction
 1.2 24-Mar-2014  christos branches: 1.2.2; 1.2.4; 1.2.6;
use cpu_getmodel()
 1.1 17-Dec-2013  lneto added luasystm files (for some reason it wasn't done in the last commit)
 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 24-Mar-2014  yamt file luasystm.c was added on branch yamt-pagecache on 2014-05-22 11:41:08 +0000
 1.2.4.2 18-May-2014  rmind sync with head
 1.2.4.1 24-Mar-2014  rmind file luasystm.c was added on branch rmind-smpnet on 2014-05-18 17:46:12 +0000
 1.2.2.1 10-Aug-2014  tls Rebase.
 1.5.4.2 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.5.4.1 19-Jul-2014  tls file luasystm.c was added on branch tls-maxphys on 2014-08-20 00:04:34 +0000
 1.2 19-Jul-2014  lneto branches: 1.2.4;
lua: updated from 5.1 to 5.3 work3

* lua(1):
- changed lua_Integer to intmax_t
- updated distrib/sets/lists and etc/mtree
- updated bsd.lua.mk
- fixed bozohttpd (lua-bozo.c)
- compatibilized bindings: gpio, sqlite
* lua(4):
- removed floating-point and libc dependencies using '#ifndef _KERNEL'
- fixed division by zero and exponentiation
- libkern: added isalnum(), iscntrl(), isgraph(), isprint() and ispunct()
- acpica: removed isprint() from acnetbsd.h
- libc: moved strcspn.c, strpbrk.c and strspn.c to common
- removed stub headers
- compatibilized bindings: luapmf, luasystm
* reorganized luaconf.h
* updated doc/CHANGES and doc/RESPONSIBLE
 1.1 17-Dec-2013  lneto branches: 1.1.2; 1.1.4; 1.1.6;
added luasystm files (for some reason it wasn't done in the last commit)
 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 17-Dec-2013  yamt file test.lua was added on branch yamt-pagecache on 2014-05-22 11:41:08 +0000
 1.1.4.2 18-May-2014  rmind sync with head
 1.1.4.1 17-Dec-2013  rmind file test.lua was added on branch rmind-smpnet on 2014-05-18 17:46:12 +0000
 1.1.2.1 10-Aug-2014  tls Rebase.
 1.2.4.2 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.2.4.1 19-Jul-2014  tls file test.lua was added on branch tls-maxphys on 2014-08-20 00:04:34 +0000
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 28-Aug-2011  jmcneill branches: 1.1.54;
add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules
 1.1.54.1 10-Jun-2019  christos Sync with HEAD
 1.1 28-Aug-2011  jmcneill add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules
 1.1 28-Jun-2008  rumble branches: 1.1.2; 1.1.4; 1.1.8; 1.1.20;
Add of bunch of file system modules.
 1.1.20.2 04-May-2009  yamt sync with head.
 1.1.20.1 28-Jun-2008  yamt file Makefile was added on branch yamt-nfs-mp on 2009-05-04 08:14:11 +0000
 1.1.8.2 18-Sep-2008  wrstuden Sync with wrstuden-revivesa-base-2.
 1.1.8.1 28-Jun-2008  wrstuden file Makefile was added on branch wrstuden-revivesa on 2008-09-18 04:36:59 +0000
 1.1.4.2 03-Jul-2008  simonb Sync with head.
 1.1.4.1 28-Jun-2008  simonb file Makefile was added on branch simonb-wapbl on 2008-07-03 18:38:19 +0000
 1.1.2.2 29-Jun-2008  mjf Sync with HEAD.
 1.1.2.1 28-Jun-2008  mjf file Makefile was added on branch mjf-devfs2 on 2008-06-29 09:33:17 +0000
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 28-Aug-2011  jmcneill branches: 1.1.54;
add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules
 1.1.54.1 10-Jun-2019  christos Sync with HEAD
 1.1 28-Aug-2011  jmcneill add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules
 1.3 04-Jun-2022  pgoyette Combine the midi and sequencer modules into a single midi_seq module
to avoid a circular dependency as noted in kern/56772. Retain minimal
modules of the original names to accomodate auto-loading upon access
to the /dev/xxx nodes.
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 01-Jun-2017  pgoyette branches: 1.1.6; 1.1.10; 1.1.14;
Add the modules for audio, midi, and sequencer
 1.1.14.1 10-Jun-2019  christos Sync with HEAD
 1.1.10.2 03-Dec-2017  jdolecek update from HEAD
 1.1.10.1 01-Jun-2017  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:58 +0000
 1.1.6.2 28-Aug-2017  skrll Sync with HEAD
 1.1.6.1 01-Jun-2017  skrll file Makefile was added on branch nick-nhusb on 2017-08-28 17:53:10 +0000
 1.2 04-Jun-2022  pgoyette Combine the midi and sequencer modules into a single midi_seq module
to avoid a circular dependency as noted in kern/56772. Retain minimal
modules of the original names to accomodate auto-loading upon access
to the /dev/xxx nodes.
 1.1 01-Jun-2017  pgoyette branches: 1.1.6; 1.1.10;
Add the modules for audio, midi, and sequencer
 1.1.10.2 03-Dec-2017  jdolecek update from HEAD
 1.1.10.1 01-Jun-2017  jdolecek file midi.ioconf was added on branch tls-maxphys on 2017-12-03 11:38:58 +0000
 1.1.6.2 28-Aug-2017  skrll Sync with HEAD
 1.1.6.1 01-Jun-2017  skrll file midi.ioconf was added on branch nick-nhusb on 2017-08-28 17:53:10 +0000
 1.1 04-Jun-2022  pgoyette Combine the midi and sequencer modules into a single midi_seq module
to avoid a circular dependency as noted in kern/56772. Retain minimal
modules of the original names to accomodate auto-loading upon access
to the /dev/xxx nodes.
 1.1 04-Jun-2022  pgoyette Combine the midi and sequencer modules into a single midi_seq module
to avoid a circular dependency as noted in kern/56772. Retain minimal
modules of the original names to accomodate auto-loading upon access
to the /dev/xxx nodes.
 1.1 30-May-2010  pgoyette branches: 1.1.2; 1.1.4; 1.1.6;
Extract MIIVERBOSE into a kernel module. The module can be builtin
by defining 'options MIIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.
 1.1.6.2 17-Aug-2010  uebayasi Sync with HEAD.
 1.1.6.1 30-May-2010  uebayasi file Makefile was added on branch uebayasi-xip on 2010-08-17 06:47:41 +0000
 1.1.4.2 11-Aug-2010  yamt sync with head.
 1.1.4.1 30-May-2010  yamt file Makefile was added on branch yamt-nfs-mp on 2010-08-11 22:54:51 +0000
 1.1.2.2 03-Jul-2010  rmind sync with head
 1.1.2.1 30-May-2010  rmind file Makefile was added on branch rmind-uvmplock on 2010-07-03 01:19:59 +0000
 1.2 02-May-2008  ad branches: 1.2.4; 1.2.6; 1.2.8;
- Add a bsd.kmodule.mk to build new style modules.
- Set the file suffix to .kmod
 1.1 02-May-2008  ad Add a module that looks up a "miniroot" section within its ELF object,
and passes that to md_root_setconf(). The file system image can be added
with objcopy after the module is built.
 1.2.8.2 02-Jun-2008  mjf Sync with HEAD.
 1.2.8.1 02-May-2008  mjf file Makefile was added on branch mjf-devfs2 on 2008-06-02 13:24:21 +0000
 1.2.6.2 18-May-2008  yamt sync with head.
 1.2.6.1 02-May-2008  yamt file Makefile was added on branch yamt-pf42 on 2008-05-18 12:35:26 +0000
 1.2.4.2 16-May-2008  yamt sync with head.
 1.2.4.1 02-May-2008  yamt file Makefile was added on branch yamt-nfs-mp on 2008-05-16 02:25:40 +0000
 1.3 16-Nov-2008  ad Fail to load if there is no embedded file system image.
 1.2 16-Nov-2008  ad Return EOPNOTSUPP for unload.
 1.1 02-May-2008  ad branches: 1.1.4; 1.1.6; 1.1.8; 1.1.12; 1.1.14;
Add a module that looks up a "miniroot" section within its ELF object,
and passes that to md_root_setconf(). The file system image can be added
with objcopy after the module is built.
 1.1.14.1 19-Jan-2009  skrll Sync with HEAD.
 1.1.12.1 13-Dec-2008  haad Update haad-dm branch to haad-dm-base2.
 1.1.8.3 17-Jan-2009  mjf Sync with HEAD.
 1.1.8.2 02-Jun-2008  mjf Sync with HEAD.
 1.1.8.1 02-May-2008  mjf file miniroot.c was added on branch mjf-devfs2 on 2008-06-02 13:24:21 +0000
 1.1.6.2 18-May-2008  yamt sync with head.
 1.1.6.1 02-May-2008  yamt file miniroot.c was added on branch yamt-pf42 on 2008-05-18 12:35:26 +0000
 1.1.4.3 04-May-2009  yamt sync with head.
 1.1.4.2 16-May-2008  yamt sync with head.
 1.1.4.1 02-May-2008  yamt file miniroot.c was added on branch yamt-nfs-mp on 2008-05-16 02:25:40 +0000
 1.2 21-Oct-2025  pgoyette Add WARNS=3 as needed for -Wsign-compare issues
 1.1 27-Sep-2016  pgoyette branches: 1.1.2; 1.1.4; 1.1.18;
Add module build infrastructure for ld and its attachments
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 27-Sep-2016  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:58 +0000
 1.1.4.2 04-Nov-2016  pgoyette Sync with HEAD
 1.1.4.1 27-Sep-2016  pgoyette file Makefile was added on branch pgoyette-localcount on 2016-11-04 14:49:19 +0000
 1.1.2.2 05-Oct-2016  skrll Sync with HEAD
 1.1.2.1 27-Sep-2016  skrll file Makefile was added on branch nick-nhusb on 2016-10-05 20:56:07 +0000
 1.1 27-Sep-2016  pgoyette branches: 1.1.2; 1.1.4; 1.1.18;
Add module build infrastructure for ld and its attachments
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 27-Sep-2016  jdolecek file mlx.ioconf was added on branch tls-maxphys on 2017-12-03 11:38:58 +0000
 1.1.4.2 04-Nov-2016  pgoyette Sync with HEAD
 1.1.4.1 27-Sep-2016  pgoyette file mlx.ioconf was added on branch pgoyette-localcount on 2016-11-04 14:49:19 +0000
 1.1.2.2 05-Oct-2016  skrll Sync with HEAD
 1.1.2.1 27-Sep-2016  skrll file mlx.ioconf was added on branch nick-nhusb on 2016-10-05 20:56:07 +0000
 1.1 27-Sep-2016  pgoyette branches: 1.1.2; 1.1.4; 1.1.18;
Add module build infrastructure for ld and its attachments
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 27-Sep-2016  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:58 +0000
 1.1.4.2 04-Nov-2016  pgoyette Sync with HEAD
 1.1.4.1 27-Sep-2016  pgoyette file Makefile was added on branch pgoyette-localcount on 2016-11-04 14:49:19 +0000
 1.1.2.2 05-Oct-2016  skrll Sync with HEAD
 1.1.2.1 27-Sep-2016  skrll file Makefile was added on branch nick-nhusb on 2016-10-05 20:56:07 +0000
 1.1 27-Sep-2016  pgoyette branches: 1.1.2; 1.1.4; 1.1.18;
Add module build infrastructure for ld and its attachments
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 27-Sep-2016  jdolecek file mlx_eisa.ioconf was added on branch tls-maxphys on 2017-12-03 11:38:58 +0000
 1.1.4.2 04-Nov-2016  pgoyette Sync with HEAD
 1.1.4.1 27-Sep-2016  pgoyette file mlx_eisa.ioconf was added on branch pgoyette-localcount on 2016-11-04 14:49:19 +0000
 1.1.2.2 05-Oct-2016  skrll Sync with HEAD
 1.1.2.1 27-Sep-2016  skrll file mlx_eisa.ioconf was added on branch nick-nhusb on 2016-10-05 20:56:07 +0000
 1.1 27-Sep-2016  pgoyette branches: 1.1.2; 1.1.4; 1.1.18;
Add module build infrastructure for ld and its attachments
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 27-Sep-2016  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:58 +0000
 1.1.4.2 04-Nov-2016  pgoyette Sync with HEAD
 1.1.4.1 27-Sep-2016  pgoyette file Makefile was added on branch pgoyette-localcount on 2016-11-04 14:49:20 +0000
 1.1.2.2 05-Oct-2016  skrll Sync with HEAD
 1.1.2.1 27-Sep-2016  skrll file Makefile was added on branch nick-nhusb on 2016-10-05 20:56:07 +0000
 1.1 27-Sep-2016  pgoyette branches: 1.1.2; 1.1.4; 1.1.18;
Add module build infrastructure for ld and its attachments
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 27-Sep-2016  jdolecek file mlx_pci.ioconf was added on branch tls-maxphys on 2017-12-03 11:38:58 +0000
 1.1.4.2 04-Nov-2016  pgoyette Sync with HEAD
 1.1.4.1 27-Sep-2016  pgoyette file mlx_pci.ioconf was added on branch pgoyette-localcount on 2016-11-04 14:49:20 +0000
 1.1.2.2 05-Oct-2016  skrll Sync with HEAD
 1.1.2.1 27-Sep-2016  skrll file mlx_pci.ioconf was added on branch nick-nhusb on 2016-10-05 20:56:07 +0000
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 19-Jul-2009  rmind branches: 1.1.2; 1.1.4; 1.1.68;
Make POSIX message queues a kernel module.
 1.1.68.1 10-Jun-2019  christos Sync with HEAD
 1.1.4.2 19-Aug-2009  yamt sync with head.
 1.1.4.1 19-Jul-2009  yamt file Makefile was added on branch yamt-nfs-mp on 2009-08-19 18:48:22 +0000
 1.1.2.2 23-Jul-2009  jym Sync with HEAD.
 1.1.2.1 19-Jul-2009  jym file Makefile was added on branch jym-xensuspend on 2009-07-23 23:32:47 +0000
 1.4 23-Oct-2021  hannken Move msdosfs_rename() and doscheckpath() to new file msdosfs_rename.c.

No functional change.
 1.3 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.2 06-Feb-2016  mlelstv branches: 1.2.18;
Split case folding table into separate source file and add full
copyright and permission notice from http://www.unicode.org/copyright.html
 1.1 24-Nov-2008  ad branches: 1.1.4; 1.1.6; 1.1.10; 1.1.32; 1.1.50;
Rename some modules to match their vfs name.
 1.1.50.1 19-Mar-2016  skrll Sync with HEAD
 1.1.32.1 03-Dec-2017  jdolecek update from HEAD
 1.1.10.2 04-May-2009  yamt sync with head.
 1.1.10.1 24-Nov-2008  yamt file Makefile was added on branch yamt-nfs-mp on 2009-05-04 08:14:11 +0000
 1.1.6.2 19-Jan-2009  skrll Sync with HEAD.
 1.1.6.1 24-Nov-2008  skrll file Makefile was added on branch nick-hppapmap on 2009-01-19 13:20:09 +0000
 1.1.4.2 17-Jan-2009  mjf Sync with HEAD.
 1.1.4.1 24-Nov-2008  mjf file Makefile was added on branch mjf-devfs2 on 2009-01-17 13:29:30 +0000
 1.2.18.1 10-Jun-2019  christos Sync with HEAD
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 04-Aug-2011  jmcneill branches: 1.1.54;
add mt2131, cx24227, and coram module glue
 1.1.54.1 10-Jun-2019  christos Sync with HEAD
 1.7 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.6 09-Dec-2017  pgoyette branches: 1.6.4;
Include the flash_mtd_parts in the nand module. Without this, the module
fails to load because of undefined linker symbol flash_attach_mtdparts

XXX pullup to netbsd-8
 1.5 15-Nov-2017  jmcneill Build nand_toshiba.c
 1.4 03-Nov-2012  ahoka branches: 1.4.30;
Add nand_samsung.c to the module build too!
 1.3 28-Jun-2011  ahoka branches: 1.3.2; 1.3.12;
Refactor flash and nand driver, so we can reuse the io thread code
in the future nor driver (and any other future driver).

Also simplify some of the code in the process, eg. saner flash attachment.
 1.2 09-Mar-2011  ahoka branches: 1.2.4;
+ nand_micron.c
 1.1 26-Feb-2011  ahoka branches: 1.1.2; 1.1.4;
Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards
 1.1.4.3 21-Apr-2011  rmind sync with head
 1.1.4.2 05-Mar-2011  rmind sync with head
 1.1.4.1 26-Feb-2011  rmind file Makefile was added on branch rmind-uvmplock on 2011-03-05 20:55:45 +0000
 1.1.2.2 05-Mar-2011  bouyer Sync with HEAD
 1.1.2.1 26-Feb-2011  bouyer file Makefile was added on branch bouyer-quota2 on 2011-03-05 15:10:45 +0000
 1.2.4.2 06-Jun-2011  jruoho Sync with HEAD.
 1.2.4.1 09-Mar-2011  jruoho file Makefile was added on branch jruoho-x86intr on 2011-06-06 09:09:49 +0000
 1.3.12.2 03-Dec-2017  jdolecek update from HEAD
 1.3.12.1 20-Nov-2012  tls Resync to 2012-11-19 00:00:00 UTC
 1.3.2.1 16-Jan-2013  yamt sync with (a bit old) head
 1.4.30.2 22-Dec-2017  snj revert ticket 438
 1.4.30.1 21-Dec-2017  snj Pull up following revision(s) (requested by pgoyette in ticket #438):
sys/modules/nand/Makefile: revision 1.6
Include the flash_mtd_parts in the nand module. Without this, the module
fails to load because of undefined linker symbol flash_attach_mtdparts
 1.6.4.1 10-Jun-2019  christos Sync with HEAD
 1.1 26-Feb-2011  ahoka branches: 1.1.2; 1.1.4; 1.1.8;
Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards
 1.1.8.2 06-Jun-2011  jruoho Sync with HEAD.
 1.1.8.1 26-Feb-2011  jruoho file nand.ioconf was added on branch jruoho-x86intr on 2011-06-06 09:09:49 +0000
 1.1.4.2 05-Mar-2011  rmind sync with head
 1.1.4.1 26-Feb-2011  rmind file nand.ioconf was added on branch rmind-uvmplock on 2011-03-05 20:55:45 +0000
 1.1.2.2 05-Mar-2011  bouyer Sync with HEAD
 1.1.2.1 26-Feb-2011  bouyer file nand.ioconf was added on branch bouyer-quota2 on 2011-03-05 15:10:45 +0000
 1.1 26-Feb-2011  ahoka branches: 1.1.2; 1.1.4; 1.1.8;
Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards
 1.1.8.2 06-Jun-2011  jruoho Sync with HEAD.
 1.1.8.1 26-Feb-2011  jruoho file opt_nand.h was added on branch jruoho-x86intr on 2011-06-06 09:09:49 +0000
 1.1.4.2 05-Mar-2011  rmind sync with head
 1.1.4.1 26-Feb-2011  rmind file opt_nand.h was added on branch rmind-uvmplock on 2011-03-05 20:55:45 +0000
 1.1.2.2 05-Mar-2011  bouyer Sync with HEAD
 1.1.2.1 26-Feb-2011  bouyer file opt_nand.h was added on branch bouyer-quota2 on 2011-03-05 15:10:45 +0000
 1.3 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.2 20-Aug-2015  christos branches: 1.2.18;
Add ioconf entries to the pseudo-devices.
 1.1 26-Feb-2011  ahoka branches: 1.1.2; 1.1.4; 1.1.8; 1.1.20; 1.1.38;
Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards
 1.1.38.1 22-Sep-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 26-Feb-2011  jruoho file Makefile was added on branch jruoho-x86intr on 2011-06-06 09:09:49 +0000
 1.1.4.2 05-Mar-2011  rmind sync with head
 1.1.4.1 26-Feb-2011  rmind file Makefile was added on branch rmind-uvmplock on 2011-03-05 20:55:45 +0000
 1.1.2.2 05-Mar-2011  bouyer Sync with HEAD
 1.1.2.1 26-Feb-2011  bouyer file Makefile was added on branch bouyer-quota2 on 2011-03-05 15:10:45 +0000
 1.2.18.1 10-Jun-2019  christos Sync with HEAD
 1.1 20-Aug-2015  christos branches: 1.1.2; 1.1.18;
Add ioconf entries to the pseudo-devices.
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 20-Aug-2015  jdolecek file nandemulator.ioconf was added on branch tls-maxphys on 2017-12-03 11:38:58 +0000
 1.1.2.2 22-Sep-2015  skrll Sync with HEAD
 1.1.2.1 20-Aug-2015  skrll file nandemulator.ioconf was added on branch nick-nhusb on 2015-09-22 12:06:09 +0000
 1.3 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.2 02-Mar-2010  pooka branches: 1.2.62;
Reflect removal of fs_nfs.h and -DNFS
 1.1 19-Nov-2008  ad branches: 1.1.4; 1.1.6; 1.1.10; 1.1.12;
Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime
 1.1.12.1 30-Apr-2010  uebayasi Sync with HEAD.
 1.1.10.3 11-Mar-2010  yamt sync with head
 1.1.10.2 04-May-2009  yamt sync with head.
 1.1.10.1 19-Nov-2008  yamt file Makefile was added on branch yamt-nfs-mp on 2009-05-04 08:14:11 +0000
 1.1.6.2 19-Jan-2009  skrll Sync with HEAD.
 1.1.6.1 19-Nov-2008  skrll file Makefile was added on branch nick-hppapmap on 2009-01-19 13:20:09 +0000
 1.1.4.2 17-Jan-2009  mjf Sync with HEAD.
 1.1.4.1 19-Nov-2008  mjf file Makefile was added on branch mjf-devfs2 on 2009-01-17 13:29:30 +0000
 1.2.62.1 10-Jun-2019  christos Sync with HEAD
 1.3 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.2 02-Mar-2010  pooka branches: 1.2.62;
Reflect removal of fs_nfs.h and -DNFS
 1.1 19-Nov-2008  ad branches: 1.1.4; 1.1.6; 1.1.10; 1.1.12;
Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime
 1.1.12.1 30-Apr-2010  uebayasi Sync with HEAD.
 1.1.10.3 11-Mar-2010  yamt sync with head
 1.1.10.2 04-May-2009  yamt sync with head.
 1.1.10.1 19-Nov-2008  yamt file Makefile was added on branch yamt-nfs-mp on 2009-05-04 08:14:11 +0000
 1.1.6.2 19-Jan-2009  skrll Sync with HEAD.
 1.1.6.1 19-Nov-2008  skrll file Makefile was added on branch nick-hppapmap on 2009-01-19 13:20:10 +0000
 1.1.4.2 17-Jan-2009  mjf Sync with HEAD.
 1.1.4.1 19-Nov-2008  mjf file Makefile was added on branch mjf-devfs2 on 2009-01-17 13:29:30 +0000
 1.2.62.1 10-Jun-2019  christos Sync with HEAD
 1.3 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.2 26-May-2011  joerg branches: 1.2.56;
Default to -Wno-sign-compare -Wno-pointer-sign for clang.
Push -Wno-array-bounds down to the cases that depend on it.
Selectively disable warnings for 3rd party software or non-trivial
issues to be reviewed later to get clang -Werror to build most of the
tree.
 1.1 18-Jul-2009  reinoud branches: 1.1.2; 1.1.4; 1.1.8; 1.1.10;
Import read-only part of the NiLFS (v2) implementation for NetBSD. It has been
tested with a DEBUG+DIAGNOSTIC+LOCKDEBUG kernel. To summerise NiLFS, i'll
repeat my posting to tech-kern here:

NiLFS stands for New implementation of Logging File System; LFS done
right they claim :) It is at version 2 now and is being developed by NTT, the
Japanese telecom company and recently put into the linux source tree. See
http://www.nilfs.org. The on-disc format is not completely frozen and i expect
at least one minor revision to come in time.

The benefits of NiLFS are build-in fine-grained checkpointing, persistent
snapshots, multiple mounts and very large file and media support. Every
checkpoint can be transformed into a snapshot and v.v. It is said to perform
very well on flash media since it is not overwriting pieces apart from a
incidental update of the superblock, but that might change. It is accompanied
by a cleaner to clean up the segments and recover lost space.

My work is not a port of the linux code; its a new implementation. Porting the
code would be more work since its very linux oriented and never written to be
ported outside linux. The goal is to be fully interchangable. The code is non
intrusive to other parts of the kernel. It is also very light-weight.

The current state of the code is read-only access to both clean and dirty
NiLFS partitions. On mounting a dirty partition it rolls forward the log to
the last checkpoint. Full read-write support is however planned!

Just as the linux code, mount_nilfs allows for the `head' to be mounted
read/write and allows multiple read-only snapshots/checkpoint mounts next to
it.

By allowing the RW mount at a different snapshot for read-write it should be
possible eventually to revert back to a previous state; i.e. try to upgrade a
system and being able to revert to the exact state prior to the upgrade.

Compared to other FS's its pretty light-weight, suitable for embedded use and
on flash media. The read-only code is currently 17kb object code on
NetBSD/i386. I doubt the read-write code will surpass the 50 or 60. Compared
this to FFS being 156kb, UDF being 84 kb and NFS being 130kb. Run-time memory
usage is most likely not very different from other uses though maybe a bit
higher than FFS.
 1.1.10.1 06-Jun-2011  jruoho Sync with HEAD.
 1.1.8.1 31-May-2011  rmind sync with head
 1.1.4.2 19-Aug-2009  yamt sync with head.
 1.1.4.1 18-Jul-2009  yamt file Makefile was added on branch yamt-nfs-mp on 2009-08-19 18:48:22 +0000
 1.1.2.2 23-Jul-2009  jym Sync with HEAD.
 1.1.2.1 18-Jul-2009  jym file Makefile was added on branch jym-xensuspend on 2009-07-23 23:32:47 +0000
 1.2.56.1 10-Jun-2019  christos Sync with HEAD
 1.31 01-Jun-2025  joe kernel: extract rules, lookup socket, process filtering, reviews by christos@
 1.30 03-Jun-2023  lukem branches: 1.30.6;
bsd.own.mk: rename to CC_WNO_ADDRESS_OF_PACKED_MEMBER

Provide a single variable
CC_WNO_ADDRESS_OF_PACKED_MEMBER
with options for both clang and gcc, to replace
CLANG_NO_ADDR_OF_PACKED_MEMBER
CC_NO_ADDR_OF_PACKED_MEMBER
GCC_NO_ADDR_OF_PACKED_MEMBER

Using the convention CC_compilerflag, where compilerflag
is based on the full compiler flag name.
 1.29 29-May-2023  lukem bsd.own.mk: rename NO_ADDR_OF_PACKED_MEMBER to CC_NO_ADDR_OF_PACKED_MEMBER

Add "CC_" prefix to NO_ADDR_OF_PACKED_MEMBER.

We now have the following convention:
GCC_NO_*: Disable specific warnings from GCC.
CLANG_NO_*: Disable specific warnings from Clang.
CC_NO_*: Disable specific warnings from both Clang and GCC.

This reserves "NO_*" Makefile variables to disable other features.

Some space->tab fixes.
 1.28 18-Oct-2020  christos Provide a global no-packed-address for both gcc and clang
 1.27 18-Oct-2020  christos use the GCC_ warning variable
 1.26 18-Oct-2020  christos Avoid alignment of packed member
 1.25 26-Sep-2019  christos kill WARNS = 3
 1.24 24-Jul-2019  rmind Update the NPF kernel module Makefile. Missed in the previous commit.
 1.23 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.22 29-Sep-2018  rmind NPF: Major rework -- migrate NPF to the libnv library.
- This conversion significantly simplifies the code and moves NPF to
a binary serialisation format (replacing the XML-like format).
- Fix some memory/reference leaks and possibly use-after-free bugs.
- Bump NPF_VERSION as this change makes libnpf incompatible with the
previous versions. Also, different serialisation format means NPF
connection/config saving and loading is not compatible with the
previous versions either.

Thanks to christos@ for extra testing.
 1.21 02-Jan-2017  rmind branches: 1.21.14; 1.21.16;
NPF: implement dynamic handling of interface addresses (the kernel part).
 1.20 28-Dec-2016  christos oops forgot to commit this one.
 1.19 09-Dec-2016  christos ditch ptree and use lpm
 1.18 20-Aug-2015  christos branches: 1.18.2;
Add ioconf entries to the pseudo-devices.
 1.17 19-Jul-2014  rmind branches: 1.17.2; 1.17.4; 1.17.8;
NPF: partially rewrite the connection tracking mechanism:
- Separate the tracking interface from the storage (state table)
and thus prepare to use a new data structure for the storage.
- Fix some race conditions in NAT association logic.
 1.16 08-Nov-2013  rmind branches: 1.16.2;
NPF: add support for specifying the interfaces before they are attached.
If an interface is or gets detached, all associated rules and connections
will be deactivated (it might be useful to have an option to invalidate
the associated connections). Once the interface is reattached they will
become active.

Bump NPF_VERSION.
 1.15 19-Sep-2013  rmind NPF: G/C n-code in favour of BPF byte-code. Delete lots of code, mmm!
 1.14 19-Sep-2013  rmind - Convert NPF to use BPF byte-code by default. Compile BPF byte-code in
npfctl(8) and generate separate marks to describe the filter criteria.
- Rewrite 'npfctl show' functionality and fix some of the bugs.
- npftest: add a test for BPF COP.
- Bump NPF_VERSION.
 1.13 02-Jun-2013  rmind branches: 1.13.2;
- NPF connection tracking: rework synchronisation on tracking disable/enable
points and document it. Split the worker thread into a separate module
with an interface, so it could be re-used for other tasks.
- Replace ALG list with arrays and thus hit fewer cache lines.
- Misc bug fixes.
 1.12 09-Feb-2013  rmind NPF:
- Implement dynamic NPF rules. Controlled through npf(3) library of via
npfctl rule command. A rule can be removed using a unique identifier,
returned on addition, or using a key which is SHA1 hash of the rule.
Adjust npftest and add a regression test.
- Improvements to rule inspection mechanism.
- Initial BPF support as an alternative to n-code.
- Minor fixes; bump the version.
 1.11 16-Sep-2012  rmind Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.
 1.10 12-Aug-2012  rmind branches: 1.10.2;
- Extend npftest: add ruleset inspection testing from the config generated
by npfctl debug functionality. Auto-create npftest interfaces for this.
- NPF sessions: combine protocol and interface into a separate substructure,
share between the entries and thus fix the handling of them. Constify.
- npftest: add regression tests for NAT policies.
- npf_build_nat: simplify and fix bi-NAT regression.
- Bump yacc stack size for npfctl.
 1.9 06-Feb-2012  rmind branches: 1.9.2;
- Split NPF rule procedure code into a separate module (no functional changes).
- Simplify some code, add more comments, some asserts.
- G/C unused rule hook code.
 1.8 29-Nov-2011  rmind branches: 1.8.2;
- Rework and improve TCP state tracking.
- Fix regressions after IPv6 patch merge.

Note: npfctl(8) rework will come soon.
 1.7 06-Nov-2011  tron Fix breakage caused by last commit. "npf_alg_icmp.c" is supposed to be
its own kernel module.
 1.6 06-Nov-2011  tron Define "INET6" to get IPv6 support.
 1.5 06-Nov-2011  tron Update list of source files.
 1.4 18-Dec-2010  rmind branches: 1.4.6; 1.4.10;
NPF checkpoint:
- Add support for session saving/restoring.
- Add packet logging support (can tcpdump a pseudo-interface).
- Support reload without flushing of sessions; rework some locking.
- Revisit session mangement, replace linking with npf_sentry_t entries.
- Add some counters for statistics, using percpu(9).
- Add IP_DF flag cleansing.
- Fix various bugs; misc clean-up.
 1.3 11-Nov-2010  rmind NPF checkpoint:
- Add proper TCP state tracking as described in Guido van Rooij paper,
plus handle TCP Window Scaling option.
- Completely rework npf_cache_t, reduce granularity, simplify code.
- Add npf_addr_t as an abstraction, amend session handling code, as well
as NAT code et al, to use it. Now design is prepared for IPv6 support.
- Handle IPv4 fragments i.e. perform packet reassembly.
- Add support for IPv4 ID randomization and minimum TTL enforcement.
- Add support for TCP MSS "clamping".
- Random bits for IPv6. Various fixes and clean-up.
 1.2 16-Sep-2010  rmind branches: 1.2.2; 1.2.4;
NPF checkpoint:
- Add support for bi-directional NAT and redirection / port forwarding.
- Finish filtering on ICMP type/code and add filtering on TCP flags.
- Add support for TCP reset (RST) or ICMP destination unreachable on block.
- Fix a bunch of bugs; misc cleanup.
 1.1 22-Aug-2010  rmind Import NPF - a packet filter. Some features:

- Designed to be fully MP-safe and highly efficient.

- Tables/IP sets (hash or red-black tree) for high performance lookups.

- Stateful filtering and Network Address Port Translation (NAPT).
Framework for application level gateways (ALGs).

- Packet inspection engine called n-code processor - inspired by BPF -
supporting generic RISC-like and specific CISC-like instructions for
common patterns (e.g. IPv4 address matching). See npf_ncode(9) manual.

- Convenient userland utility npfctl(8) with npf.conf(8).

NOTE: This is not yet a fully capable alternative to PF or IPFilter.
Further work (support for binat/rdr, return-rst/return-icmp, common ALGs,
state saving/restoring, logging, etc) is in progress.

Thanks a lot to Matt Thomas for various useful comments and code review.
Aye by: board@
 1.2.4.2 22-Oct-2010  uebayasi Sync with HEAD (-D20101022).
 1.2.4.1 16-Sep-2010  uebayasi file Makefile was added on branch uebayasi-xip on 2010-10-22 09:23:13 +0000
 1.2.2.2 09-Oct-2010  yamt sync with head
 1.2.2.1 16-Sep-2010  yamt file Makefile was added on branch yamt-nfs-mp on 2010-10-09 03:32:36 +0000
 1.4.10.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.4.10.3 30-Oct-2012  yamt sync with head
 1.4.10.2 17-Apr-2012  yamt sync with head
 1.4.10.1 10-Nov-2011  yamt sync with head
 1.4.6.2 05-Mar-2011  rmind sync with head
 1.4.6.1 18-Dec-2010  rmind file Makefile was added on branch rmind-uvmplock on 2011-03-05 20:55:46 +0000
 1.8.2.1 18-Feb-2012  mrg merge to -current.
 1.9.2.3 11-Feb-2013  riz Pull up following revision(s) (requested by rmind in ticket #817):
usr.sbin/npf/npfctl/npfctl.8: revision 1.12
usr.sbin/npf/npfctl/npf.conf.5: revision 1.27
usr.sbin/npf/npfctl/npf_parse.y: revision 1.18
usr.sbin/npf/npfctl/npf_build.c: revision 1.20
usr.sbin/npf/npfctl/npfctl.c: revision 1.28
lib/libnpf/npf.c: revision 1.16
usr.sbin/npf/npfctl/npfctl.c: revision 1.29
lib/libnpf/npf.c: revision 1.17
sys/modules/npf/Makefile: revision 1.12
sys/net/npf/npf_rproc.c: revision 1.6
usr.sbin/npf/npftest/README: revision 1.4
sys/net/npf/npf_tableset.c: revision 1.17
sys/net/npf/npf_ctl.c: revision 1.21
sys/net/npf/npf_ctl.c: revision 1.22
usr.sbin/npf/npfctl/npfctl.h: revision 1.25
lib/libnpf/npf.h: revision 1.13
usr.sbin/npf/npftest/npftest.conf: revision 1.2
usr.sbin/npf/npfctl/npfctl.h: revision 1.26
sys/net/npf/npf_ruleset.c: revision 1.17
lib/libnpf/npf.h: revision 1.14
sys/net/npf/npf_ruleset.c: revision 1.18
sys/net/npf/npf_conf.c: revision 1.1
usr.sbin/npf/npfctl/npf_scan.l: revision 1.10
sys/net/npf/npf_conf.c: revision 1.2
sys/net/npf/npf_instr.c: revision 1.16
sys/net/npf/npf_handler.c: revision 1.26
sys/net/npf/npf_impl.h: revision 1.26
usr.sbin/npf/npfctl/npf_disassemble.c: revision 1.14
sys/net/npf/npf_processor.c: revision 1.15
sys/net/npf/npf_impl.h: revision 1.27
sys/net/npf/npf_alg_icmp.c: revision 1.15
usr.sbin/npf/npfctl/npf_disassemble.c: revision 1.15
usr.sbin/npf/npfctl/npf_disassemble.c: revision 1.16
sys/net/npf/npf_ncode.h: revision 1.11
sys/net/npf/files.npf: revision 1.10
usr.sbin/npf/npftest/Makefile: revision 1.4
usr.sbin/npf/npfctl/npfctl.c: revision 1.30
lib/libnpf/npf.3: revision 1.8
usr.sbin/npf/npftest/libnpftest/npf_rule_test.c: revision 1.4
sys/net/npf/npf_session.c: revision 1.21
usr.sbin/npf/npftest/libnpftest/npf_rule_test.c: revision 1.5
usr.sbin/npf/npfctl/npf_build.c: revision 1.18
usr.sbin/npf/npfctl/npf_build.c: revision 1.19
sys/net/npf/npf_alg.c: revision 1.7
usr.sbin/npf/npfctl/Makefile: revision 1.10
sys/net/npf/npf_inet.c: revision 1.21
sys/net/npf/npf.h: revision 1.26
sys/net/npf/npf.h: revision 1.27
usr.sbin/pf/ftp-proxy/Makefile: revision 1.8
sys/net/npf/npf_nat.c: revision 1.19
sys/net/npf/npf.c: revision 1.15
sys/net/npf/npf_state.c: revision 1.14
sys/net/npf/npf_sendpkt.c: revision 1.14
sys/rump/net/lib/libnpf/Makefile: revision 1.4
IPv6 linklocal address printing cosmetics
NPF:
- Implement dynamic NPF rules. Controlled through npf(3) library of via
npfctl rule command. A rule can be removed using a unique identifier,
returned on addition, or using a key which is SHA1 hash of the rule.
Adjust npftest and add a regression test.
- Improvements to rule inspection mechanism.
- Initial BPF support as an alternative to n-code.
- Minor fixes; bump the version.
Disable -DWITH_NPF for now; will be converted to BPF mechanism.
- Fix NPF config reload with dynamic rules present.
- Implement list and flush commands on a dynamic ruleset.
Allow filtering on IP addresses even if the L4 protocol is unknown.
Patch from spz@.
npftest: adjust for recent change.
 1.9.2.2 18-Nov-2012  riz Pull up following revision(s) (requested by rmind in ticket #693):
lib/npf/ext_normalise/shlib_version: revision 1.1
lib/libnpf/npf.c: revision 1.13
distrib/sets/lists/modules/mi: revision 1.48
sys/net/npf/npf_rproc.c: revision 1.3
sys/net/npf/npf_rproc.c: revision 1.4
sys/modules/npf/Makefile: revision 1.11
usr.sbin/npf/npfctl/npfctl.h: revision 1.20
lib/npf/ext_log/npfext_log.c: revision 1.1
lib/libnpf/npf.h: revision 1.11
sys/net/npf/npf_inet.c: revision 1.17
sys/net/npf/npf_log.c: file removal
sys/net/npf/npf_handler.c: revision 1.22
distrib/sets/lists/base/shl.mi: revision 1.636
sys/net/npf/npf_impl.h: revision 1.23
usr.sbin/npf/npfctl/Makefile: revision 1.8
lib/npf/Makefile: revision 1.1
lib/npf/ext_log/shlib_version: revision 1.1
lib/Makefile: revision 1.189
distrib/sets/lists/comp/shl.mi: revision 1.236
usr.sbin/npf/npfctl/npf_build.c: revision 1.14
distrib/sets/lists/base/mi: revision 1.1007
usr.sbin/npf/npfctl/npf_scan.l: revision 1.6
distrib/sets/lists/base/mi: revision 1.1009
sys/net/npf/npf.h: revision 1.21
lib/npf/ext_normalise/npfext_normalise.c: revision 1.1
etc/mtree/NetBSD.dist.base: revision 1.105
lib/libnpf/Makefile: revision 1.3
etc/mtree/NetBSD.dist.base: revision 1.106
usr.sbin/npf/npfctl/npf_extmod.c: revision 1.1
sys/net/npf/npf_ctl.c: revision 1.18
lib/npf/ext_log/Makefile: revision 1.1
distrib/sets/lists/comp/mi: revision 1.1781
usr.sbin/npf/npfctl/npf_var.h: revision 1.4
sys/net/npf/npf.c: revision 1.13
sys/modules/Makefile: revision 1.111
sys/net/npf/npf_ext_log.c: revision 1.1
lib/npf/Makefile.inc: revision 1.1
sys/net/npf/npf_ext_normalise.c: revision 1.1
sys/net/npf/files.npf: revision 1.8
sys/rump/net/lib/libnpf/Makefile: revision 1.2
sys/modules/npf_ext_log/Makefile: revision 1.1
lib/npf/ext_normalise/Makefile: revision 1.1
usr.sbin/npf/npfctl/npfctl.c: revision 1.20
usr.sbin/npf/npfctl/npf_parse.y: revision 1.13
sys/modules/npf_ext_normalise/Makefile: revision 1.1
Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.
Add /usr/lib/npf.
Add ./usr/libdata/debug/usr/lib/npf for rmind
Fix MKDEBUG set lists
ext_ops does not change during the life cycle and can be fetched without
the mutex held. This avoids confusion in the compiler about an uninitialized
variable ext_ops.
ok rmind@
 1.9.2.1 13-Aug-2012  riz Pull up following revision(s) (requested by rmind in ticket #485):
lib/libnpf/npf.c: revision 1.11
sys/net/npf/npf_session.c: revision 1.17
sys/modules/npf/Makefile: revision 1.10
usr.sbin/npf/npftest/npftest.c: revision 1.4
usr.sbin/npf/npftest/README: revision 1.1
sys/net/npf/npf_tableset.c: revision 1.14
usr.sbin/npf/npftest/npftest.h: revision 1.4
lib/libnpf/npf.h: revision 1.10
sys/net/npf/npf_ruleset.c: revision 1.14
usr.sbin/npf/npfctl/npf_data.c: revision 1.18
usr.sbin/npf/npftest/npftest.conf: revision 1.1
sys/net/npf/npf_handler.c: revision 1.21
sys/net/npf/npf_impl.h: revision 1.21
usr.sbin/npf/npfctl/npfctl.c: revision 1.18
usr.sbin/npf/npftest/libnpftest/npf_nat_test.c: revision 1.1
usr.sbin/npf/npfctl/npf_build.c: revision 1.13
usr.sbin/npf/npftest/libnpftest/npf_rule_test.c: revision 1.1
usr.sbin/npf/npftest/npfstream.c: revision 1.3
usr.sbin/npf/npftest/libnpftest/Makefile: revision 1.4
usr.sbin/npf/npfctl/npfctl.h: revision 1.19
sys/net/npf/npf_nat.c: revision 1.16
sys/net/npf/npf_state.c: revision 1.11
usr.sbin/npf/npftest/libnpftest/npf_test_subr.c: revision 1.3
usr.sbin/npf/npftest/libnpftest/npf_test.h: revision 1.5
usr.sbin/npf/npfctl/npf_parse.y: revision 1.12
- Extend npftest: add ruleset inspection testing from the config generated
by npfctl debug functionality. Auto-create npftest interfaces for this.
- NPF sessions: combine protocol and interface into a separate substructure,
share between the entries and thus fix the handling of them. Constify.
- npftest: add regression tests for NAT policies.
- npf_build_nat: simplify and fix bi-NAT regression.
- Bump yacc stack size for npfctl.
 1.10.2.5 03-Dec-2017  jdolecek update from HEAD
 1.10.2.4 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.10.2.3 23-Jun-2013  tls resync from head
 1.10.2.2 25-Feb-2013  tls resync with head
 1.10.2.1 20-Nov-2012  tls Resync to 2012-11-19 00:00:00 UTC
 1.13.2.1 18-May-2014  rmind sync with head
 1.16.2.1 10-Aug-2014  tls Rebase.
 1.17.8.1 18-Jan-2017  skrll Sync with netbsd-5
 1.17.4.2 05-Feb-2017  skrll Sync with HEAD
 1.17.4.1 22-Sep-2015  skrll Sync with HEAD
 1.17.2.1 18-Dec-2016  snj Pull up following revision(s) (requested by rmind in ticket #1319):
sys/modules/npf/Makefile: revision 1.19
sys/net/npf/files.npf: revision 1.18
sys/net/npf/lpm.c: revision 1.1
sys/net/npf/lpm.h: revision 1.1
sys/net/npf/npf_impl.h: revision 1.62
sys/net/npf/npf_tableset.c: revision 1.24
sys/net/npf/npf_tableset_ptree.c: file removal
sys/rump/net/lib/libnpf/Makefile: revision 1.18
This patches ditches the ptree(3) library, because it is broken (you
can get missing entries!). Instead, as a temporary solution, we switch
to a simple linear scan of the hash tables for the longest-prefix-match
(lpm.c lpm.h) algorithm. In fact, with few unique prefixes in the set,
on modern hardware this simple algorithm is pretty fast anyway!
--
ditch ptree and use lpm
--
remove ptree add lpm
 1.18.2.1 07-Jan-2017  pgoyette Sync with HEAD. (Note that most of these changes are simply $NetBSD$
tag issues.)
 1.21.16.2 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.21.16.1 10-Jun-2019  christos Sync with HEAD
 1.21.14.1 30-Sep-2018  pgoyette Ssync with HEAD
 1.30.6.1 02-Aug-2025  perseant Sync with HEAD
 1.1 20-Aug-2015  christos branches: 1.1.2; 1.1.18;
Add ioconf entries to the pseudo-devices.
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 20-Aug-2015  jdolecek file npf.ioconf was added on branch tls-maxphys on 2017-12-03 11:38:58 +0000
 1.1.2.2 22-Sep-2015  skrll Sync with HEAD
 1.1.2.1 20-Aug-2015  skrll file npf.ioconf was added on branch nick-nhusb on 2015-09-22 12:06:10 +0000
 1.2 29-Sep-2018  rmind NPF: Major rework -- migrate NPF to the libnv library.
- This conversion significantly simplifies the code and moves NPF to
a binary serialisation format (replacing the XML-like format).
- Fix some memory/reference leaks and possibly use-after-free bugs.
- Bump NPF_VERSION as this change makes libnpf incompatible with the
previous versions. Also, different serialisation format means NPF
connection/config saving and loading is not compatible with the
previous versions either.

Thanks to christos@ for extra testing.
 1.1 06-Nov-2011  tron branches: 1.1.2; 1.1.52; 1.1.54;
Add "npf_alg_icmp" kernel module.
 1.1.54.1 10-Jun-2019  christos Sync with HEAD
 1.1.52.1 30-Sep-2018  pgoyette Ssync with HEAD
 1.1.2.2 10-Nov-2011  yamt sync with head
 1.1.2.1 06-Nov-2011  yamt file Makefile was added on branch yamt-pagecache on 2011-11-10 14:31:50 +0000
 1.2 29-Sep-2018  rmind NPF: Major rework -- migrate NPF to the libnv library.
- This conversion significantly simplifies the code and moves NPF to
a binary serialisation format (replacing the XML-like format).
- Fix some memory/reference leaks and possibly use-after-free bugs.
- Bump NPF_VERSION as this change makes libnpf incompatible with the
previous versions. Also, different serialisation format means NPF
connection/config saving and loading is not compatible with the
previous versions either.

Thanks to christos@ for extra testing.
 1.1 16-Sep-2012  rmind branches: 1.1.2; 1.1.4; 1.1.6; 1.1.42; 1.1.44;
Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.
 1.1.44.1 10-Jun-2019  christos Sync with HEAD
 1.1.42.1 30-Sep-2018  pgoyette Ssync with HEAD
 1.1.6.2 16-Sep-2012  rmind Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.
 1.1.6.1 16-Sep-2012  rmind file Makefile was added on branch tls-maxphys on 2012-09-16 13:47:43 +0000
 1.1.4.2 18-Nov-2012  riz Pull up following revision(s) (requested by rmind in ticket #693):
lib/npf/ext_normalise/shlib_version: revision 1.1
lib/libnpf/npf.c: revision 1.13
distrib/sets/lists/modules/mi: revision 1.48
sys/net/npf/npf_rproc.c: revision 1.3
sys/net/npf/npf_rproc.c: revision 1.4
sys/modules/npf/Makefile: revision 1.11
usr.sbin/npf/npfctl/npfctl.h: revision 1.20
lib/npf/ext_log/npfext_log.c: revision 1.1
lib/libnpf/npf.h: revision 1.11
sys/net/npf/npf_inet.c: revision 1.17
sys/net/npf/npf_log.c: file removal
sys/net/npf/npf_handler.c: revision 1.22
distrib/sets/lists/base/shl.mi: revision 1.636
sys/net/npf/npf_impl.h: revision 1.23
usr.sbin/npf/npfctl/Makefile: revision 1.8
lib/npf/Makefile: revision 1.1
lib/npf/ext_log/shlib_version: revision 1.1
lib/Makefile: revision 1.189
distrib/sets/lists/comp/shl.mi: revision 1.236
usr.sbin/npf/npfctl/npf_build.c: revision 1.14
distrib/sets/lists/base/mi: revision 1.1007
usr.sbin/npf/npfctl/npf_scan.l: revision 1.6
distrib/sets/lists/base/mi: revision 1.1009
sys/net/npf/npf.h: revision 1.21
lib/npf/ext_normalise/npfext_normalise.c: revision 1.1
etc/mtree/NetBSD.dist.base: revision 1.105
lib/libnpf/Makefile: revision 1.3
etc/mtree/NetBSD.dist.base: revision 1.106
usr.sbin/npf/npfctl/npf_extmod.c: revision 1.1
sys/net/npf/npf_ctl.c: revision 1.18
lib/npf/ext_log/Makefile: revision 1.1
distrib/sets/lists/comp/mi: revision 1.1781
usr.sbin/npf/npfctl/npf_var.h: revision 1.4
sys/net/npf/npf.c: revision 1.13
sys/modules/Makefile: revision 1.111
sys/net/npf/npf_ext_log.c: revision 1.1
lib/npf/Makefile.inc: revision 1.1
sys/net/npf/npf_ext_normalise.c: revision 1.1
sys/net/npf/files.npf: revision 1.8
sys/rump/net/lib/libnpf/Makefile: revision 1.2
sys/modules/npf_ext_log/Makefile: revision 1.1
lib/npf/ext_normalise/Makefile: revision 1.1
usr.sbin/npf/npfctl/npfctl.c: revision 1.20
usr.sbin/npf/npfctl/npf_parse.y: revision 1.13
sys/modules/npf_ext_normalise/Makefile: revision 1.1
Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.
Add /usr/lib/npf.
Add ./usr/libdata/debug/usr/lib/npf for rmind
Fix MKDEBUG set lists
ext_ops does not change during the life cycle and can be fetched without
the mutex held. This avoids confusion in the compiler about an uninitialized
variable ext_ops.
ok rmind@
 1.1.4.1 16-Sep-2012  riz file Makefile was added on branch netbsd-6 on 2012-11-18 22:38:38 +0000
 1.1.2.2 30-Oct-2012  yamt sync with head
 1.1.2.1 16-Sep-2012  yamt file Makefile was added on branch yamt-pagecache on 2012-10-30 17:22:41 +0000
 1.2 29-Sep-2018  rmind NPF: Major rework -- migrate NPF to the libnv library.
- This conversion significantly simplifies the code and moves NPF to
a binary serialisation format (replacing the XML-like format).
- Fix some memory/reference leaks and possibly use-after-free bugs.
- Bump NPF_VERSION as this change makes libnpf incompatible with the
previous versions. Also, different serialisation format means NPF
connection/config saving and loading is not compatible with the
previous versions either.

Thanks to christos@ for extra testing.
 1.1 12-Mar-2013  christos branches: 1.1.6; 1.1.14; 1.1.40; 1.1.42;
normali{s,z}e
 1.1.42.1 10-Jun-2019  christos Sync with HEAD
 1.1.40.1 30-Sep-2018  pgoyette Ssync with HEAD
 1.1.14.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.14.1 12-Mar-2013  yamt file Makefile was added on branch yamt-pagecache on 2014-05-22 11:41:08 +0000
 1.1.6.2 23-Jun-2013  tls resync from head
 1.1.6.1 12-Mar-2013  tls file Makefile was added on branch tls-maxphys on 2013-06-23 06:20:25 +0000
 1.2 29-Sep-2018  rmind NPF: Major rework -- migrate NPF to the libnv library.
- This conversion significantly simplifies the code and moves NPF to
a binary serialisation format (replacing the XML-like format).
- Fix some memory/reference leaks and possibly use-after-free bugs.
- Bump NPF_VERSION as this change makes libnpf incompatible with the
previous versions. Also, different serialisation format means NPF
connection/config saving and loading is not compatible with the
previous versions either.

Thanks to christos@ for extra testing.
 1.1 10-Dec-2012  rmind branches: 1.1.2; 1.1.4; 1.1.8; 1.1.42; 1.1.44;
Add NPF "rndblock" extension to randomly drop packets (using a random function
with a percentage or modulo operation). This is a demo module, although it can
be used for packet loss simulation. Example of a procedure in npf.conf:

procedure "somedrop" {
# Drop 1.9% of the traffic
rndblock: percentage 1.9
}
 1.1.44.1 10-Jun-2019  christos Sync with HEAD
 1.1.42.1 30-Sep-2018  pgoyette Ssync with HEAD
 1.1.8.2 25-Feb-2013  tls resync with head
 1.1.8.1 10-Dec-2012  tls file Makefile was added on branch tls-maxphys on 2013-02-25 00:30:01 +0000
 1.1.4.2 16-Jan-2013  yamt sync with (a bit old) head
 1.1.4.1 10-Dec-2012  yamt file Makefile was added on branch yamt-pagecache on 2013-01-16 05:33:48 +0000
 1.1.2.2 15-Dec-2012  riz Pull up following revision(s) (requested by rmind in ticket #745):
distrib/sets/lists/comp/shl.mi: revision 1.241
distrib/sets/lists/modules/mi: revision 1.49
distrib/sets/lists/base/md.sparc64: revision 1.171
lib/npf/ext_rndblock/npfext_rndblock.c: revision 1.1
distrib/sets/lists/base/ad.mips64eb: revision 1.106
distrib/sets/lists/modules/md.evbppc: revision 1.29
sys/net/npf/npf_ext_rndblock.c: revision 1.1
lib/npf/Makefile: revision 1.2
sys/modules/npf_ext_rndblock/Makefile: revision 1.1
lib/npf/ext_rndblock/Makefile: revision 1.1
distrib/sets/lists/base/ad.mips64el: revision 1.106
lib/npf/ext_rndblock/shlib_version: revision 1.1
distrib/sets/lists/base/md.amd64: revision 1.182
distrib/sets/lists/base/shl.mi: revision 1.643
sys/net/npf/files.npf: revision 1.9
sys/modules/Makefile: revision 1.117
Add NPF &quot;rndblock&quot; extension to randomly drop packets (using a random function
with a percentage or modulo operation). This is a demo module, although it can
be used for packet loss simulation. Example of a procedure in npf.conf:
procedure &quot;somedrop&quot; {
# Drop 1.9% of the traffic
rndblock: percentage 1.9
}
 1.1.2.1 10-Dec-2012  riz file Makefile was added on branch netbsd-6 on 2012-12-15 23:45:58 +0000
 1.3 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.2 28-Aug-2011  jmcneill branches: 1.2.54;
WARNS=3 is the default
 1.1 15-Jul-2011  jmcneill add nsclpcsio module glue
 1.2.54.1 10-Jun-2019  christos Sync with HEAD
 1.1 15-Jul-2011  jmcneill add nsclpcsio module glue
 1.1 10-Dec-2010  ahoka branches: 1.1.6;
nsmb module makefile
 1.1.6.2 05-Mar-2011  rmind sync with head
 1.1.6.1 10-Dec-2010  rmind file Makefile was added on branch rmind-uvmplock on 2011-03-05 20:55:46 +0000
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 28-Jun-2008  rumble branches: 1.1.2; 1.1.4; 1.1.8; 1.1.20; 1.1.92;
Add of bunch of file system modules.
 1.1.92.1 10-Jun-2019  christos Sync with HEAD
 1.1.20.2 04-May-2009  yamt sync with head.
 1.1.20.1 28-Jun-2008  yamt file Makefile was added on branch yamt-nfs-mp on 2009-05-04 08:14:11 +0000
 1.1.8.2 18-Sep-2008  wrstuden Sync with wrstuden-revivesa-base-2.
 1.1.8.1 28-Jun-2008  wrstuden file Makefile was added on branch wrstuden-revivesa on 2008-09-18 04:36:59 +0000
 1.1.4.2 03-Jul-2008  simonb Sync with head.
 1.1.4.1 28-Jun-2008  simonb file Makefile was added on branch simonb-wapbl on 2008-07-03 18:38:20 +0000
 1.1.2.2 29-Jun-2008  mjf Sync with HEAD.
 1.1.2.1 28-Jun-2008  mjf file Makefile was added on branch mjf-devfs2 on 2008-06-29 09:33:17 +0000
 1.2 26-May-2011  joerg Default to -Wno-sign-compare -Wno-pointer-sign for clang.
Push -Wno-array-bounds down to the cases that depend on it.
Selectively disable warnings for 3rd party software or non-trivial
issues to be reviewed later to get clang -Werror to build most of the
tree.
 1.1 24-Nov-2008  ad branches: 1.1.4; 1.1.6; 1.1.10; 1.1.14; 1.1.16;
Rename some modules to match their vfs name.
 1.1.16.1 06-Jun-2011  jruoho Sync with HEAD.
 1.1.14.1 31-May-2011  rmind sync with head
 1.1.10.2 04-May-2009  yamt sync with head.
 1.1.10.1 24-Nov-2008  yamt file Makefile was added on branch yamt-nfs-mp on 2009-05-04 08:14:11 +0000
 1.1.6.2 19-Jan-2009  skrll Sync with HEAD.
 1.1.6.1 24-Nov-2008  skrll file Makefile was added on branch nick-hppapmap on 2009-01-19 13:20:10 +0000
 1.1.4.2 17-Jan-2009  mjf Sync with HEAD.
 1.1.4.1 24-Nov-2008  mjf file Makefile was added on branch mjf-devfs2 on 2009-01-17 13:29:30 +0000
 1.5 20-Feb-2019  pgoyette Another WARNS=3 module
 1.4 03-Dec-2017  jdolecek branches: 1.4.2; 1.4.6;
again remove mistakely committed debug flags
 1.3 03-Dec-2017  jdolecek update from HEAD
 1.2 27-Sep-2016  pgoyette branches: 1.2.2; 1.2.4;
Add module build infrastructure for ld and its attachments
 1.1 16-Sep-2016  jdolecek make it possible to load nvme(4) as module to ease testing; currently somewhat
non-optimal, since it includes the ld(4) code also and hence requires the
kernel config to have 'no ld'
 1.2.4.2 04-Nov-2016  pgoyette Sync with HEAD
 1.2.4.1 27-Sep-2016  pgoyette file Makefile was added on branch pgoyette-localcount on 2016-11-04 14:49:20 +0000
 1.2.2.2 05-Oct-2016  skrll Sync with HEAD
 1.2.2.1 27-Sep-2016  skrll file Makefile was added on branch nick-nhusb on 2016-10-05 20:56:07 +0000
 1.4.6.1 10-Jun-2019  christos Sync with HEAD
 1.4.2.2 03-Dec-2017  jdolecek sync with HEAD
 1.4.2.1 03-Dec-2017  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:52:57 +0000
 1.2 27-Sep-2016  pgoyette branches: 1.2.2; 1.2.4; 1.2.18;
Add module build infrastructure for ld and its attachments
 1.1 16-Sep-2016  jdolecek make it possible to load nvme(4) as module to ease testing; currently somewhat
non-optimal, since it includes the ld(4) code also and hence requires the
kernel config to have 'no ld'
 1.2.18.2 03-Dec-2017  jdolecek update from HEAD
 1.2.18.1 27-Sep-2016  jdolecek file nvme.ioconf was added on branch tls-maxphys on 2017-12-03 11:38:58 +0000
 1.2.4.2 04-Nov-2016  pgoyette Sync with HEAD
 1.2.4.1 27-Sep-2016  pgoyette file nvme.ioconf was added on branch pgoyette-localcount on 2016-11-04 14:49:20 +0000
 1.2.2.2 05-Oct-2016  skrll Sync with HEAD
 1.2.2.1 27-Sep-2016  skrll file nvme.ioconf was added on branch nick-nhusb on 2016-10-05 20:56:07 +0000
 1.5 05-Aug-2020  maxv Upgrade NVMM to WARNS=5.
 1.4 23-Feb-2019  maxv branches: 1.4.4;
Install the x86 RESET state at VCPU creation time, for convenience, so
that the libnvmm users can expect a functional VCPU right away.
 1.3 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.2 13-Feb-2019  maxv Add Intel-VMX support in NVMM. This allows us to run hardware-accelerated
VMs on Intel CPUs. Overall this implementation is fast and reliable, I am
able to run NetBSD VMs with many VCPUs on a quad-core Intel i5.

NVMM-Intel applies several optimizations already present in NVMM-AMD, and
has a code structure similar to it. No change was needed in the NVMM MI
frontend, or in libnvmm.

Some differences exist against AMD:

- On Intel the ASID space is big, so we don't fall back to a shared ASID
when there are more VCPUs executing than available ASIDs in the host,
contrary to AMD. There are enough ASIDs for the maximum number of VCPUs
supported by NVMM.

- On Intel there are two TLBs we need to take care of, one for the host
(EPT) and one for the guest (VPID). Changes in EPT paging flush the
host TLB, changes to the guest mode flush the guest TLB.

- On Intel there is no easy way to set/fetch the VTPR, so we intercept
reads/writes to CR8 and maintain a software TPR, that we give to the
virtualizer as if it was the effective TPR in the guest.

- On Intel, because of SVS, the host CR4 and LSTAR are not static, so
we're forced to save them on each VMENTRY.

- There is extra Intel weirdness we need to take care of, for example the
reserved bits in CR0 and CR4 when accesses trap.

While this implementation is functional and can already run many OSes, we
likely have a problem on 32bit-PAE guests, because they require special
care on Intel CPUs, and currently we don't handle that correctly; such
guests may misbehave for now (without altering the host stability). I
expect to fix that soon.
 1.1 07-Nov-2018  maxv branches: 1.1.2;
Add NVMM - for NetBSD Virtual Machine Monitor -, a kernel driver that
provides support for hardware-accelerated virtualization on NetBSD.

It is made of an MI frontend, to which MD backends can be plugged. One
MD backend is implemented, x86-SVM, for x86 AMD CPUs.

We install

/usr/include/dev/nvmm/nvmm.h
/usr/include/dev/nvmm/nvmm_ioctl.h
/usr/include/dev/nvmm/{arch}/nvmm_{arch}.h

And the kernel module. For now, the only architecture where we do that
is amd64 (arch=x86).

NVMM is not enabled by default in amd64-GENERIC, but is instead easily
modloadable.

Sent to tech-kern@ a month ago. Validated with kASan, and optimized
with tprof.
 1.1.2.2 26-Nov-2018  pgoyette Sync with HEAD, resolve a couple of conflicts
 1.1.2.1 07-Nov-2018  pgoyette file Makefile was added on branch pgoyette-compat on 2018-11-26 01:52:50 +0000
 1.4.4.2 10-Jun-2019  christos Sync with HEAD
 1.4.4.1 23-Feb-2019  christos file Makefile was added on branch phil-wifi on 2019-06-10 22:09:35 +0000
 1.2 25-Jun-2020  maxv Register NVMM as an actual pseudo-device. Without PMF handler, to
explicitly disallow ACPI suspend if NVMM is running.

Should fix PR/55406.
 1.1 07-Nov-2018  maxv branches: 1.1.2; 1.1.6; 1.1.8;
Add NVMM - for NetBSD Virtual Machine Monitor -, a kernel driver that
provides support for hardware-accelerated virtualization on NetBSD.

It is made of an MI frontend, to which MD backends can be plugged. One
MD backend is implemented, x86-SVM, for x86 AMD CPUs.

We install

/usr/include/dev/nvmm/nvmm.h
/usr/include/dev/nvmm/nvmm_ioctl.h
/usr/include/dev/nvmm/{arch}/nvmm_{arch}.h

And the kernel module. For now, the only architecture where we do that
is amd64 (arch=x86).

NVMM is not enabled by default in amd64-GENERIC, but is instead easily
modloadable.

Sent to tech-kern@ a month ago. Validated with kASan, and optimized
with tprof.
 1.1.8.1 02-Aug-2020  martin Pull up following revision(s) (requested by maxv in ticket #1032):

sys/dev/nvmm/x86/nvmm_x86_vmx.c: revision 1.60 (patch)
sys/dev/nvmm/x86/nvmm_x86_vmx.c: revision 1.61 (patch)
sys/dev/nvmm/nvmm.c: revision 1.30
sys/dev/nvmm/nvmm.c: revision 1.31
sys/dev/nvmm/nvmm.c: revision 1.32
sys/dev/nvmm/nvmm_internal.h: revision 1.15
sys/dev/nvmm/nvmm_internal.h: revision 1.16
sys/dev/nvmm/files.nvmm: revision 1.3
sys/dev/nvmm/x86/nvmm_x86_svm.c: revision 1.62 (patch)
sys/dev/nvmm/x86/nvmm_x86_svm.c: revision 1.63 (patch)
sys/dev/nvmm/x86/nvmm_x86_vmx.c: revision 1.59 (patch)
sys/modules/nvmm/nvmm.ioconf: revision 1.2

Gather the conditions to return from the VCPU loops in nvmm_return_needed(),
and use it in nvmm_do_vcpu_run() as well. This fixes two undesired behaviors:

- When a VM initializes, the many nested page faults that need processing
could cause the calling thread to occupy the CPU too much if we're unlucky
and are only getting repeated nested page faults thousands of times in a
row.

- When the emulator calls nvmm_vcpu_run() and immediately sends a signal to
stop the VCPU, it's better to check signals earlier and leave right away,
rather than doing a round of VCPU run that could increase the time spent
by the emulator waiting for the return.

style

Register NVMM as an actual pseudo-device. Without PMF handler, to
explicitly disallow ACPI suspend if NVMM is running.

Should fix PR/55406.

Print the backend name when attaching.
 1.1.6.2 10-Jun-2019  christos Sync with HEAD
 1.1.6.1 07-Nov-2018  christos file nvmm.ioconf was added on branch phil-wifi on 2019-06-10 22:09:35 +0000
 1.1.2.2 26-Nov-2018  pgoyette Sync with HEAD, resolve a couple of conflicts
 1.1.2.1 07-Nov-2018  pgoyette file nvmm.ioconf was added on branch pgoyette-compat on 2018-11-26 01:52:50 +0000
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 14-Jul-2011  jmcneill branches: 1.1.54;
module glue for nxt2k, tvpll, cxdtv
 1.1.54.1 10-Jun-2019  christos Sync with HEAD
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 04-Mar-2011  jruoho branches: 1.1.2; 1.1.4; 1.1.8; 1.1.62;
Add module build glue for odcm(4).
 1.1.62.1 10-Jun-2019  christos Sync with HEAD
 1.1.8.2 06-Jun-2011  jruoho Sync with HEAD.
 1.1.8.1 04-Mar-2011  jruoho file Makefile was added on branch jruoho-x86intr on 2011-06-06 09:09:49 +0000
 1.1.4.2 05-Mar-2011  rmind sync with head
 1.1.4.1 04-Mar-2011  rmind file Makefile was added on branch rmind-uvmplock on 2011-03-05 20:55:46 +0000
 1.1.2.2 05-Mar-2011  bouyer Sync with HEAD
 1.1.2.1 04-Mar-2011  bouyer file Makefile was added on branch bouyer-quota2 on 2011-03-05 15:10:45 +0000
 1.1 04-Mar-2011  jruoho branches: 1.1.2; 1.1.4; 1.1.8;
Add module build glue for odcm(4).
 1.1.8.2 06-Jun-2011  jruoho Sync with HEAD.
 1.1.8.1 04-Mar-2011  jruoho file odcm.ioconf was added on branch jruoho-x86intr on 2011-06-06 09:09:49 +0000
 1.1.4.2 05-Mar-2011  rmind sync with head
 1.1.4.1 04-Mar-2011  rmind file odcm.ioconf was added on branch rmind-uvmplock on 2011-03-05 20:55:46 +0000
 1.1.2.2 05-Mar-2011  bouyer Sync with HEAD
 1.1.2.1 04-Mar-2011  bouyer file odcm.ioconf was added on branch bouyer-quota2 on 2011-03-05 15:10:45 +0000
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 31-Aug-2011  mbalmer branches: 1.1.54;
gpioow(4) and onewire(4) can be build as modules. Not linked to the build.
 1.1.54.1 10-Jun-2019  christos Sync with HEAD
 1.1 31-Aug-2011  mbalmer gpioow(4) and onewire(4) can be build as modules. Not linked to the build.
 1.3 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.2 20-Aug-2015  christos branches: 1.2.18;
Add ioconf entries to the pseudo-devices.
 1.1 29-Dec-2013  pgoyette branches: 1.1.4; 1.1.6; 1.1.10; 1.1.12;
Start modularizing the opencrypto framework.
 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 29-Dec-2013  tls file Makefile was added on branch tls-maxphys on 2014-08-20 00:04:34 +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 29-Dec-2013  yamt file Makefile was added on branch yamt-pagecache on 2014-05-22 11:41:08 +0000
 1.1.4.2 18-May-2014  rmind sync with head
 1.1.4.1 29-Dec-2013  rmind file Makefile was added on branch rmind-smpnet on 2014-05-18 17:46:12 +0000
 1.2.18.1 10-Jun-2019  christos Sync with HEAD
 1.2 27-Jan-2020  pgoyette Use correct pseudo-device for opencrypto module
 1.1 20-Aug-2015  christos branches: 1.1.2; 1.1.18; 1.1.22; 1.1.28;
Add ioconf entries to the pseudo-devices.
 1.1.28.1 29-Feb-2020  ad Sync with head.
 1.1.22.1 08-Apr-2020  martin Merge changes from current as of 20200406
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 20-Aug-2015  jdolecek file opencrypto.ioconf was added on branch tls-maxphys on 2017-12-03 11:38:58 +0000
 1.1.2.2 22-Sep-2015  skrll Sync with HEAD
 1.1.2.1 20-Aug-2015  skrll file opencrypto.ioconf was added on branch nick-nhusb on 2015-09-22 12:06:10 +0000
 1.2 26-May-2011  joerg Default to -Wno-sign-compare -Wno-pointer-sign for clang.
Push -Wno-array-bounds down to the cases that depend on it.
Selectively disable warnings for 3rd party software or non-trivial
issues to be reviewed later to get clang -Werror to build most of the
tree.
 1.1 28-Jun-2008  rumble branches: 1.1.2; 1.1.4; 1.1.8; 1.1.20; 1.1.26; 1.1.32;
Add of bunch of file system modules.
 1.1.32.1 06-Jun-2011  jruoho Sync with HEAD.
 1.1.26.1 31-May-2011  rmind sync with head
 1.1.20.2 04-May-2009  yamt sync with head.
 1.1.20.1 28-Jun-2008  yamt file Makefile was added on branch yamt-nfs-mp on 2009-05-04 08:14:12 +0000
 1.1.8.2 18-Sep-2008  wrstuden Sync with wrstuden-revivesa-base-2.
 1.1.8.1 28-Jun-2008  wrstuden file Makefile was added on branch wrstuden-revivesa on 2008-09-18 04:36:59 +0000
 1.1.4.2 03-Jul-2008  simonb Sync with head.
 1.1.4.1 28-Jun-2008  simonb file Makefile was added on branch simonb-wapbl on 2008-07-03 18:38:20 +0000
 1.1.2.2 29-Jun-2008  mjf Sync with HEAD.
 1.1.2.1 28-Jun-2008  mjf file Makefile was added on branch mjf-devfs2 on 2008-06-29 09:33:17 +0000
 1.1 27-Aug-2023  kardel make owtemp a module
 1.1 27-Aug-2023  kardel make owtemp a module
 1.3 16-Dec-2017  pgoyette Use config(1) and IOCONF= to generate most of the auto-config data
structures. (Note that bin/52823 documents the reasons for still
requiring hand-crafted cfattach structures.)
 1.2 18-Nov-2014  jmcneill padvol.c is no more
 1.1 09-Apr-2010  ahoka branches: 1.1.2; 1.1.4; 1.1.6; 1.1.24; 1.1.40;
Makefile to build kernel module for pad.
 1.1.40.1 23-Nov-2014  martin Pull up following revision(s) (requested by jmcneill in ticket #249):
sys/modules/pad/Makefile: revision 1.2
sys/arch/arm/allwinner/awin_hdmiaudio.c: revision 1.5
sys/dev/pad/pad.c: revision 1.22
sys/dev/pad/padvol.c: file removal
sys/dev/pad/files.pad: revision 1.5
sys/dev/auvolconv.c: revision 1.1
sys/dev/pad/padvol.h: file removal
sys/dev/audio.c: revision 1.266
sys/dev/files.audio: revision 1.3 (via patch: sys/conf/files)
sys/dev/auvolconv.h: revision 1.1
sys/dev/pad/padvar.h: revision 1.5
sys/dev/audio_if.h: revision 1.70
sys/arch/arm/allwinner/files.awin: revision 1.26
Add common audio converters for software volume control. Only supports
slinear16_le and slinear16_be for now.
Convert pad(4) and awin_hdmiaudio to use the new converters.
 1.1.24.1 03-Dec-2017  jdolecek update from HEAD
 1.1.6.2 11-Aug-2010  yamt sync with head.
 1.1.6.1 09-Apr-2010  yamt file Makefile was added on branch yamt-nfs-mp on 2010-08-11 22:54:51 +0000
 1.1.4.2 30-May-2010  rmind sync with head
 1.1.4.1 09-Apr-2010  rmind file Makefile was added on branch rmind-uvmplock on 2010-05-30 05:18:00 +0000
 1.1.2.2 30-Apr-2010  uebayasi Sync with HEAD.
 1.1.2.1 09-Apr-2010  uebayasi file Makefile was added on branch uebayasi-xip on 2010-04-30 14:44:18 +0000
 1.1 16-Dec-2017  pgoyette Use config(1) and IOCONF= to generate most of the auto-config data
structures. (Note that bin/52823 documents the reasons for still
requiring hand-crafted cfattach structures.)
 1.4 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.3 04-Jul-2011  joerg branches: 1.3.54;
Use integrated assembler with clang for Via PadLock.
 1.2 10-Jun-2011  joerg Disable integrated assembler for clang until the RNG instructions are
supported
 1.1 19-Feb-2011  jmcneill branches: 1.1.2; 1.1.4; 1.1.6; 1.1.8;
add padlock module glue
 1.1.8.2 06-Jun-2011  jruoho Sync with HEAD.
 1.1.8.1 19-Feb-2011  jruoho file Makefile was added on branch jruoho-x86intr on 2011-06-06 09:09:49 +0000
 1.1.6.1 23-Jun-2011  cherry Catchup with rmind-uvmplock merge.
 1.1.4.3 12-Jun-2011  rmind sync with head
 1.1.4.2 05-Mar-2011  rmind sync with head
 1.1.4.1 19-Feb-2011  rmind file Makefile was added on branch rmind-uvmplock on 2011-03-05 20:55:46 +0000
 1.1.2.2 05-Mar-2011  bouyer Sync with HEAD
 1.1.2.1 19-Feb-2011  bouyer file Makefile was added on branch bouyer-quota2 on 2011-03-05 15:10:45 +0000
 1.3.54.1 10-Jun-2019  christos Sync with HEAD
 1.1 19-Feb-2011  jmcneill branches: 1.1.2; 1.1.4; 1.1.8;
add padlock module glue
 1.1.8.2 06-Jun-2011  jruoho Sync with HEAD.
 1.1.8.1 19-Feb-2011  jruoho file padlock.ioconf was added on branch jruoho-x86intr on 2011-06-06 09:09:49 +0000
 1.1.4.2 05-Mar-2011  rmind sync with head
 1.1.4.1 19-Feb-2011  rmind file padlock.ioconf was added on branch rmind-uvmplock on 2011-03-05 20:55:46 +0000
 1.1.2.2 05-Mar-2011  bouyer Sync with HEAD
 1.1.2.1 19-Feb-2011  bouyer file padlock.ioconf was added on branch bouyer-quota2 on 2011-03-05 15:10:46 +0000
 1.1 18-Feb-2011  jmcneill branches: 1.1.2; 1.1.4; 1.1.8;
add panic.kmod, an easy way to trigger a panic. takes a 'how' argument
to specify how to trigger the panic:
modload -s how=panic panic.kmod <-- just calls panic()
modload -s how=nullptr panic.kmod <-- null ptr deref
if how isn't specified, it defaults to 'panic'. feel free to add more.
 1.1.8.2 06-Jun-2011  jruoho Sync with HEAD.
 1.1.8.1 18-Feb-2011  jruoho file Makefile was added on branch jruoho-x86intr on 2011-06-06 09:09:50 +0000
 1.1.4.2 05-Mar-2011  rmind sync with head
 1.1.4.1 18-Feb-2011  rmind file Makefile was added on branch rmind-uvmplock on 2011-03-05 20:55:46 +0000
 1.1.2.2 05-Mar-2011  bouyer Sync with HEAD
 1.1.2.1 18-Feb-2011  bouyer file Makefile was added on branch bouyer-quota2 on 2011-03-05 15:10:46 +0000
 1.2 21-Jun-2021  christos fix proplib deprecation
 1.1 18-Feb-2011  jmcneill branches: 1.1.2; 1.1.4; 1.1.8; 1.1.78;
add panic.kmod, an easy way to trigger a panic. takes a 'how' argument
to specify how to trigger the panic:
modload -s how=panic panic.kmod <-- just calls panic()
modload -s how=nullptr panic.kmod <-- null ptr deref
if how isn't specified, it defaults to 'panic'. feel free to add more.
 1.1.78.1 01-Aug-2021  thorpej Sync with HEAD.
 1.1.8.2 06-Jun-2011  jruoho Sync with HEAD.
 1.1.8.1 18-Feb-2011  jruoho file panic.c was added on branch jruoho-x86intr on 2011-06-06 09:09:50 +0000
 1.1.4.2 05-Mar-2011  rmind sync with head
 1.1.4.1 18-Feb-2011  rmind file panic.c was added on branch rmind-uvmplock on 2011-03-05 20:55:46 +0000
 1.1.2.2 05-Mar-2011  bouyer Sync with HEAD
 1.1.2.1 18-Feb-2011  bouyer file panic.c was added on branch bouyer-quota2 on 2011-03-05 15:10:46 +0000
 1.1 24-May-2010  pgoyette branches: 1.1.2; 1.1.4; 1.1.6;
Extract the vendor/product tables and related access routines into a
separate kernel module. Update pci bus attach routine to load the
module (if available) when we're about to start scanning the bus, and
unload the module after the scan is finished.

On architectures which support loading of modules by the boot loader,
the 'pciverbose' module can be loaded and executed without needing to
rebuild the kernel. On all architectures, using 'options PCIVERBOSE'
in the kernel configuration file will create a 'builtin' module which
is functionally equivalent to previous behavior.

XXX Although not nearly as large as the vendor and product tables,
XXX the PCI class and subclass tables might also be offloaded into
XXX the module at a future time.

XXX Cardbus (and possibly other) drivers should also be modified to
XXX load the module before scanning/attaching devices.
 1.1.6.2 17-Aug-2010  uebayasi Sync with HEAD.
 1.1.6.1 24-May-2010  uebayasi file Makefile was added on branch uebayasi-xip on 2010-08-17 06:47:41 +0000
 1.1.4.2 11-Aug-2010  yamt sync with head.
 1.1.4.1 24-May-2010  yamt file Makefile was added on branch yamt-nfs-mp on 2010-08-11 22:54:51 +0000
 1.1.2.2 30-May-2010  rmind sync with head
 1.1.2.1 24-May-2010  rmind file Makefile was added on branch rmind-uvmplock on 2010-05-30 05:18:00 +0000
 1.18 03-Jun-2023  lukem adapt to ${CC_WNO_IMPLICIT_FALLTHROUGH}

Use ${CC_WNO_IMPLICIT_FALLTHROUGH} instead of
the older style more complex expressions.
 1.17 03-Jun-2023  lukem bsd.own.mk: rename to CC_WNO_ADDRESS_OF_PACKED_MEMBER

Provide a single variable
CC_WNO_ADDRESS_OF_PACKED_MEMBER
with options for both clang and gcc, to replace
CLANG_NO_ADDR_OF_PACKED_MEMBER
CC_NO_ADDR_OF_PACKED_MEMBER
GCC_NO_ADDR_OF_PACKED_MEMBER

Using the convention CC_compilerflag, where compilerflag
is based on the full compiler flag name.
 1.16 29-May-2023  lukem bsd.own.mk: rename NO_ADDR_OF_PACKED_MEMBER to CC_NO_ADDR_OF_PACKED_MEMBER

Add "CC_" prefix to NO_ADDR_OF_PACKED_MEMBER.

We now have the following convention:
GCC_NO_*: Disable specific warnings from GCC.
CLANG_NO_*: Disable specific warnings from Clang.
CC_NO_*: Disable specific warnings from both Clang and GCC.

This reserves "NO_*" Makefile variables to disable other features.

Some space->tab fixes.
 1.15 18-Oct-2020  christos Provide a global no-packed-address for both gcc and clang
 1.14 18-Oct-2020  christos use the GCC_ warning variable
 1.13 18-Oct-2020  christos Avoid alignment of packed member
 1.12 29-Sep-2019  mrg convert HAVE_GCC == 7 to HAVE_GCC >= 7.
 1.11 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.10 04-Feb-2019  mrg - use -Wno-error=implicit-fallthrough with GCC7.
 1.9 19-Feb-2018  maya branches: 1.9.4;
Code is fixed, so hiding the warning is not necessary any more.
 1.8 12-Feb-2018  joerg Simplify and make the GCC check more precise at the same time.
 1.7 12-Feb-2018  adam Fix building with MKGCC=no
 1.6 06-Feb-2018  martin Avoid gcc 6 specific options when compiling with gcc 5
 1.5 06-Feb-2018  mrg pf_table.c has many left-shift of negative value issues.
 1.4 20-Aug-2015  christos Add ioconf entries to the pseudo-devices.
 1.3 29-Aug-2011  jmcneill branches: 1.3.12; 1.3.30;
build pf module with WARNS=3, and remove the need for -Wno-shadow
 1.2 28-Aug-2011  jmcneill set default WARNS for modules to 3 -- the only one that needs < 3 now is pf
 1.1 12-Apr-2010  ahoka branches: 1.1.2; 1.1.4; 1.1.6;
Add new type kernel module for pf (includes pflog, but not pfsync).
 1.1.6.2 11-Aug-2010  yamt sync with head.
 1.1.6.1 12-Apr-2010  yamt file Makefile was added on branch yamt-nfs-mp on 2010-08-11 22:54:51 +0000
 1.1.4.2 30-May-2010  rmind sync with head
 1.1.4.1 12-Apr-2010  rmind file Makefile was added on branch rmind-uvmplock on 2010-05-30 05:18:00 +0000
 1.1.2.2 30-Apr-2010  uebayasi Sync with HEAD.
 1.1.2.1 12-Apr-2010  uebayasi file Makefile was added on branch uebayasi-xip on 2010-04-30 14:44:18 +0000
 1.3.30.1 22-Sep-2015  skrll Sync with HEAD
 1.3.12.1 03-Dec-2017  jdolecek update from HEAD
 1.9.4.2 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.9.4.1 10-Jun-2019  christos Sync with HEAD
 1.2 13-Apr-2010  ahoka Remove bpfilter.h as not needed.
 1.1 12-Apr-2010  ahoka Add new type kernel module for pf (includes pflog, but not pfsync).
 1.1 12-Apr-2010  ahoka branches: 1.1.2; 1.1.4; 1.1.6;
Add new type kernel module for pf (includes pflog, but not pfsync).
 1.1.6.2 11-Aug-2010  yamt sync with head.
 1.1.6.1 12-Apr-2010  yamt file pf.h was added on branch yamt-nfs-mp on 2010-08-11 22:54:51 +0000
 1.1.4.2 30-May-2010  rmind sync with head
 1.1.4.1 12-Apr-2010  rmind file pf.h was added on branch rmind-uvmplock on 2010-05-30 05:18:00 +0000
 1.1.2.2 30-Apr-2010  uebayasi Sync with HEAD.
 1.1.2.1 12-Apr-2010  uebayasi file pf.h was added on branch uebayasi-xip on 2010-04-30 14:44:18 +0000
 1.1 20-Aug-2015  christos branches: 1.1.2; 1.1.18;
Add ioconf entries to the pseudo-devices.
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 20-Aug-2015  jdolecek file pf.ioconf was added on branch tls-maxphys on 2017-12-03 11:38:59 +0000
 1.1.2.2 22-Sep-2015  skrll Sync with HEAD
 1.1.2.1 20-Aug-2015  skrll file pf.ioconf was added on branch nick-nhusb on 2015-09-22 12:06:10 +0000
 1.1 12-Apr-2010  ahoka branches: 1.1.2; 1.1.4; 1.1.6;
Add new type kernel module for pf (includes pflog, but not pfsync).
 1.1.6.2 11-Aug-2010  yamt sync with head.
 1.1.6.1 12-Apr-2010  yamt file pflog.h was added on branch yamt-nfs-mp on 2010-08-11 22:54:51 +0000
 1.1.4.2 30-May-2010  rmind sync with head
 1.1.4.1 12-Apr-2010  rmind file pflog.h was added on branch rmind-uvmplock on 2010-05-30 05:18:00 +0000
 1.1.2.2 30-Apr-2010  uebayasi Sync with HEAD.
 1.1.2.1 12-Apr-2010  uebayasi file pflog.h was added on branch uebayasi-xip on 2010-04-30 14:44:18 +0000
 1.1 12-Apr-2010  ahoka branches: 1.1.2; 1.1.4; 1.1.6;
Add new type kernel module for pf (includes pflog, but not pfsync).
 1.1.6.2 11-Aug-2010  yamt sync with head.
 1.1.6.1 12-Apr-2010  yamt file pfsync.h was added on branch yamt-nfs-mp on 2010-08-11 22:54:51 +0000
 1.1.4.2 30-May-2010  rmind sync with head
 1.1.4.1 12-Apr-2010  rmind file pfsync.h was added on branch rmind-uvmplock on 2010-05-30 05:18:00 +0000
 1.1.2.2 30-Apr-2010  uebayasi Sync with HEAD.
 1.1.2.1 12-Apr-2010  uebayasi file pfsync.h was added on branch uebayasi-xip on 2010-04-30 14:44:18 +0000
 1.3 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.2 28-Aug-2011  jmcneill branches: 1.2.54;
WARNS=3 is the default
 1.1 24-Feb-2011  jruoho branches: 1.1.2; 1.1.4; 1.1.8;
Add build glue for powernow(4).
 1.1.8.2 06-Jun-2011  jruoho Sync with HEAD.
 1.1.8.1 24-Feb-2011  jruoho file Makefile was added on branch jruoho-x86intr on 2011-06-06 09:09:50 +0000
 1.1.4.2 05-Mar-2011  rmind sync with head
 1.1.4.1 24-Feb-2011  rmind file Makefile was added on branch rmind-uvmplock on 2011-03-05 20:55:47 +0000
 1.1.2.2 05-Mar-2011  bouyer Sync with HEAD
 1.1.2.1 24-Feb-2011  bouyer file Makefile was added on branch bouyer-quota2 on 2011-03-05 15:10:46 +0000
 1.2.54.1 10-Jun-2019  christos Sync with HEAD
 1.1 24-Feb-2011  jruoho branches: 1.1.2; 1.1.4; 1.1.8;
Add build glue for powernow(4).
 1.1.8.2 06-Jun-2011  jruoho Sync with HEAD.
 1.1.8.1 24-Feb-2011  jruoho file powernow.ioconf was added on branch jruoho-x86intr on 2011-06-06 09:09:50 +0000
 1.1.4.2 05-Mar-2011  rmind sync with head
 1.1.4.1 24-Feb-2011  rmind file powernow.ioconf was added on branch rmind-uvmplock on 2011-03-05 20:55:47 +0000
 1.1.2.2 05-Mar-2011  bouyer Sync with HEAD
 1.1.2.1 24-Feb-2011  bouyer file powernow.ioconf was added on branch bouyer-quota2 on 2011-03-05 15:10:46 +0000
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 25-Nov-2008  cube branches: 1.1.4; 1.1.6; 1.1.10; 1.1.74;
Build and install the PPP compressors modules deflate and bsdcomp.
 1.1.74.1 10-Jun-2019  christos Sync with HEAD
 1.1.10.2 04-May-2009  yamt sync with head.
 1.1.10.1 25-Nov-2008  yamt file Makefile was added on branch yamt-nfs-mp on 2009-05-04 08:14:12 +0000
 1.1.6.2 19-Jan-2009  skrll Sync with HEAD.
 1.1.6.1 25-Nov-2008  skrll file Makefile was added on branch nick-hppapmap on 2009-01-19 13:20:10 +0000
 1.1.4.2 17-Jan-2009  mjf Sync with HEAD.
 1.1.4.1 25-Nov-2008  mjf file Makefile was added on branch mjf-devfs2 on 2009-01-17 13:29:30 +0000
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 25-Nov-2008  cube branches: 1.1.4; 1.1.6; 1.1.10; 1.1.74;
Build and install the PPP compressors modules deflate and bsdcomp.
 1.1.74.1 10-Jun-2019  christos Sync with HEAD
 1.1.10.2 04-May-2009  yamt sync with head.
 1.1.10.1 25-Nov-2008  yamt file Makefile was added on branch yamt-nfs-mp on 2009-05-04 08:14:12 +0000
 1.1.6.2 19-Jan-2009  skrll Sync with HEAD.
 1.1.6.1 25-Nov-2008  skrll file Makefile was added on branch nick-hppapmap on 2009-01-19 13:20:10 +0000
 1.1.4.2 17-Jan-2009  mjf Sync with HEAD.
 1.1.4.1 25-Nov-2008  mjf file Makefile was added on branch mjf-devfs2 on 2009-01-17 13:29:30 +0000
 1.9 14-Sep-2024  pgoyette Update module build options to match with GENERIC kernel options
 1.8 09-Sep-2024  pgoyette Include the SYSV_* entries for modular procfs
 1.7 26-Sep-2019  christos branches: 1.7.26; 1.7.32;
Kill WARNS = 3
 1.6 31-Mar-2019  christos Add the limit node
 1.5 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.4 28-Aug-2017  kamil branches: 1.4.4;
Remove the filesystem tracing feature

This is a legacy interface from 4.4BSD, and it was
introduced to overcome shortcomings of ptrace(2) at that time, which are
no longer relevant (performance). Today /proc/#/ctl offers a narrow
subset of ptrace(2) commands and is not applicable for modern
applications use beyond simplistic tracing scenarios.

This removal will simplify kernel internals. Users will still be able to
use all the other /proc files.

This change won't affect other procfs files neither Linux compat
features within mount_procfs(8). /proc/#/ctl isn't available on Linux.

Remove:
- /proc/#/ctl from mount_procfs(8)
- P_FSTRACE note from the documentation of ps(1)
- /proc/#/ctl and filesystem tracing documentation from mount_procfs(8)
- KAUTH_REQ_PROCESS_PROCFS_CTL documentation from kauth(9)
- source code file miscfs/procfs/procfs_ctl.c
- PFSctl and procfs_doctl() from sys/miscfs/procfs/procfs.h
- KAUTH_REQ_PROCESS_PROCFS_CTL from sys/sys/kauth.h
- PSL_FSTRACE (0x00010000) from sys/sys/proc.h
- P_FSTRACE (0x00010000) from sys/sys/sysctl.h

Reduce code complexity after removal of this functionality.

Update TODO.ptrace accordingly: remove two entries about /proc tracing.

Do not keep legacy notes as comments in the headers about removed
PSL_FSTRACE / P_FSTRACE, as this interface had little number of users
(close or equal to zero).

Proposed on tech-kern@.

All filesystem tracing utility users are encouraged to switch to ptrace(2).

Sponsored by <The NetBSD Foundation>
 1.3 30-Mar-2017  christos branches: 1.3.6;
Add auxv
 1.2 08-Jul-2010  rmind branches: 1.2.18; 1.2.36; 1.2.40; 1.2.44;
Sync procfs module with kernel change for x86 MD.
 1.1 28-Jun-2008  rumble branches: 1.1.2; 1.1.4; 1.1.8; 1.1.20; 1.1.24; 1.1.26;
Add of bunch of file system modules.
 1.1.26.1 05-Mar-2011  rmind sync with head
 1.1.24.1 17-Aug-2010  uebayasi Sync with HEAD.
 1.1.20.3 11-Aug-2010  yamt sync with head.
 1.1.20.2 04-May-2009  yamt sync with head.
 1.1.20.1 28-Jun-2008  yamt file Makefile was added on branch yamt-nfs-mp on 2009-05-04 08:14:12 +0000
 1.1.8.2 18-Sep-2008  wrstuden Sync with wrstuden-revivesa-base-2.
 1.1.8.1 28-Jun-2008  wrstuden file Makefile was added on branch wrstuden-revivesa on 2008-09-18 04:36:59 +0000
 1.1.4.2 03-Jul-2008  simonb Sync with head.
 1.1.4.1 28-Jun-2008  simonb file Makefile was added on branch simonb-wapbl on 2008-07-03 18:38:20 +0000
 1.1.2.2 29-Jun-2008  mjf Sync with HEAD.
 1.1.2.1 28-Jun-2008  mjf file Makefile was added on branch mjf-devfs2 on 2008-06-29 09:33:17 +0000
 1.2.44.1 21-Apr-2017  bouyer Sync with HEAD
 1.2.40.1 26-Apr-2017  pgoyette Sync with HEAD
 1.2.36.1 28-Aug-2017  skrll Sync with HEAD
 1.2.18.1 03-Dec-2017  jdolecek update from HEAD
 1.3.6.1 12-Apr-2018  martin Pull up following revision(s) (requested by kamil in ticket #713):

sys/modules/procfs/Makefile: revision 1.4
sys/miscfs/procfs/procfs_vfsops.c: revision 1.98
bin/ps/ps.1: revision 1.108
sys/compat/linux/arch/i386/linux_ptrace.c: revision 1.32
sys/miscfs/procfs/procfs_vnops.c: revision 1.198
sys/kern/sys_ptrace_common.c: revision 1.23
sys/kern/sys_ptrace_common.c: revision 1.24
sbin/mount_procfs/mount_procfs.8: revision 1.36
sys/kern/sys_ptrace_common.c: revision 1.25
sys/kern/sys_ptrace.c: revision 1.5
sys/compat/linux/arch/powerpc/linux_ptrace.c: revision 1.30
sys/sys/proc.h: revision 1.342
sys/kern/sys_ptrace_common.c: revision 1.26
sys/miscfs/procfs/procfs_ctl.c: file removal
sys/kern/sys_ptrace_common.c: revision 1.27
sys/miscfs/procfs/procfs_subr.c: revision 1.109
sys/kern/sys_ptrace_common.c: revision 1.28
sys/secmodel/extensions/secmodel_extensions.c: revision 1.8
sys/kern/sys_ptrace_common.c: revision 1.29
sys/sys/ptrace.h: revision 1.62
sys/compat/netbsd32/netbsd32_signal.c: revision 1.45
share/man/man9/kauth.9: revision 1.109
sys/miscfs/procfs/files.procfs: revision 1.12
sys/compat/netbsd32/netbsd32.h: revision 1.115
sys/miscfs/procfs/procfs.h: revision 1.72
sys/compat/netbsd32/netbsd32_ptrace.c: revision 1.5
sys/kern/kern_sig.c: revision 1.337
sys/sys/kauth.h: revision 1.75
sys/sys/sysctl.h: revision 1.224
sys/kern/sys_ptrace_common.c: revision 1.30
sys/kern/sys_ptrace_common.c: revision 1.31
sys/kern/sys_ptrace_common.c: revision 1.32
sys/kern/sys_ptrace_common.c: revision 1.33
sys/compat/linux/arch/arm/linux_ptrace.c: revision 1.20
sys/kern/sys_ptrace_common.c: revision 1.34
sys/kern/sys_ptrace_common.c: revision 1.36
sys/kern/kern_proc.c: revision 1.207
sys/kern/kern_exit.c: revision 1.269
doc/TODO.ptrace: revision 1.29

Make {s,g}et{db,fp,}regs work again for PK_32 processes
XXX: pullup-8

add disgusting magic to handle compat_netbsd32 as a module.

use process_*reg32 instead of struct *reg32.

Remove the filesystem tracing feature

This is a legacy interface from 4.4BSD, and it was
introduced to overcome shortcomings of ptrace(2) at that time, which are
no longer relevant (performance). Today /proc/#/ctl offers a narrow
subset of ptrace(2) commands and is not applicable for modern
applications use beyond simplistic tracing scenarios.

This removal will simplify kernel internals. Users will still be able to
use all the other /proc files.

This change won't affect other procfs files neither Linux compat
features within mount_procfs(8). /proc/#/ctl isn't available on Linux.

Remove:
- /proc/#/ctl from mount_procfs(8)
- P_FSTRACE note from the documentation of ps(1)
- /proc/#/ctl and filesystem tracing documentation from mount_procfs(8)
- KAUTH_REQ_PROCESS_PROCFS_CTL documentation from kauth(9)
- source code file miscfs/procfs/procfs_ctl.c
- PFSctl and procfs_doctl() from sys/miscfs/procfs/procfs.h
- KAUTH_REQ_PROCESS_PROCFS_CTL from sys/sys/kauth.h
- PSL_FSTRACE (0x00010000) from sys/sys/proc.h
- P_FSTRACE (0x00010000) from sys/sys/sysctl.h

Reduce code complexity after removal of this functionality.

Update TODO.ptrace accordingly: remove two entries about /proc tracing.

Do not keep legacy notes as comments in the headers about removed

PSL_FSTRACE / P_FSTRACE, as this interface had little number of users
(close or equal to zero).
Proposed on tech-kern@.

All filesystem tracing utility users are encouraged to switch to ptrace(2).

Sponsored by <The NetBSD Foundation>

untangle the mess:
- factor out common code
- break each ptrace subcall to its own sub-function
.. more to come ...
- reduce ifdef ugliness by moving it up top.
- factor out PT_IO and make PT_{READ,WRITE}_{I,D} use it
- factor out PT_DUMPCORE
- factor out sendsig code
.. more to come ...

handle siginfo requests for ptrace32

ptrace: Partially undo PT_{READ,WRITE}_{I,D} and unbreak these commands

The refactored code did not work and was generating EFAULT.

Sponsored by <The NetBSD Foundation>

Merge the code back; the problem was that since we are reading/writing
to a kernel address for PT_{READ,WRITE}_{I,D} we need the kernel vmspace.
provide separate read and write functions to accomodate register functions
that need a size argument.

don't ignore error from copyout_piod

Use the proper process (the tracee) to get information about lwps and
registers and the tracer for vmspace.

Add new sysctl(3) entry: security.models.extensions.user_set_dbregs

Model this new sysctl(3) entry after "user_set_cpu_affinity" in the same
level of sysctl(3) switches.

Allow to read unconditionally Debug Registers (no change here). This is
convenient as even if a user of a debugger does not use hardware assisted
watchpoints/breakpoints, a debugger can still prompt these values to store
in an internal cache with context of registers. Reading them should have
no security concerns.

Add a paranoid MI switch that prohibits by default setting these registers
by a regular user (non-superuser). Make this switch disabled by default.
There are enough reserved bits out there to allow using them
unconditionally on hardened hosts.

Features shipped with Debug Registers are optional features in debuggers.
There is no reduction in elementary functionality.

Reviewed by <christos>

Sponsored by <The NetBSD Foundation>
 1.4.4.2 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.4.4.1 10-Jun-2019  christos Sync with HEAD
 1.7.32.1 02-Aug-2025  perseant Sync with HEAD
 1.7.26.1 13-Sep-2024  martin Pull up following revision(s) (requested by pgoyette in ticket #857):

sys/modules/procfs/Makefile: revision 1.8
sys/miscfs/procfs/procfs_vfsops.c: revision 1.118
sys/miscfs/procfs/procfs_vfsops.c: revision 1.119

procfs grew a new dependency

Include the SYSV_* entries for modular procfs

Now we have another dependency for the SYSV_* stuff.
 1.2 28-Dec-2010  jmcneill use ioconf
 1.1 03-Feb-2009  jmcneill branches: 1.1.4; 1.1.6; 1.1.10;
kmod reachover glue
 1.1.10.1 05-Mar-2011  rmind sync with head
 1.1.6.2 04-May-2009  yamt sync with head.
 1.1.6.1 03-Feb-2009  yamt file Makefile was added on branch yamt-nfs-mp on 2009-05-04 08:14:12 +0000
 1.1.4.2 03-Mar-2009  skrll Sync with HEAD.
 1.1.4.1 03-Feb-2009  skrll file Makefile was added on branch nick-hppapmap on 2009-03-03 18:33:38 +0000
 1.1 28-Dec-2010  jmcneill branches: 1.1.6;
use ioconf
 1.1.6.2 05-Mar-2011  rmind sync with head
 1.1.6.1 28-Dec-2010  rmind file pseye.ioconf was added on branch rmind-uvmplock on 2011-03-05 20:55:47 +0000
 1.1 02-Nov-2016  pgoyette branches: 1.1.2; 1.1.4; 1.1.18;
* Split sys/kern/sys_process.c into three parts:
1 - ptrace(2) syscall for native emulation
2 - common ptrace(2) syscall code (shared with compat_netbsd32)
3 - support routines that are shared with PROCFS and/or KTRACE

* Add module glue for #1 and #2. Both modules will be built-in to the
kernel if "options PTRACE" is included in the config file (this is
the default, defined in sys/conf/std).

* Mark the ptrace(2) syscall as modular in syscalls.master (generated
files will be committed shortly).

* Conditionalize all remaining portions of PTRACE code on a new kernel
option PTRACE_HOOKS.

XXX Instead of PROCFS depending on 'options PTRACE', we should probably
just add a procfs attribute to the sys/kern/sys_process.c file's
entry in files.kern, and add PROCFS to the "#if defineds" for
process_domem(). It's really confusing to have two different ways
of requiring this file.
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 02-Nov-2016  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:59 +0000
 1.1.4.2 05-Dec-2016  skrll Sync with HEAD
 1.1.4.1 02-Nov-2016  skrll file Makefile was added on branch nick-nhusb on 2016-12-05 10:55:27 +0000
 1.1.2.2 04-Nov-2016  pgoyette Sync with HEAD
 1.1.2.1 02-Nov-2016  pgoyette file Makefile was added on branch pgoyette-localcount on 2016-11-04 14:49:20 +0000
 1.6 03-Jun-2023  lukem bsd.own.mk: rename GCC_NO_* to CC_WNO_*

Rename compiler-warning-disable variables from
GCC_NO_warning
to
CC_WNO_warning
where warning is the full warning name as used by the compiler.

GCC_NO_IMPLICIT_FALLTHRU is CC_WNO_IMPLICIT_FALLTHROUGH

Using the convention CC_compilerflag, where compilerflag
is based on the full compiler flag name.
 1.5 21-Oct-2020  christos process_machdep.c is mandatory now.
 1.4 19-Oct-2020  christos Arrange so that no options COREDUMP and no options PTRACE work together.
Thanks to Paul Goyette for testing.
 1.3 13-Oct-2019  mrg introduce some common variables for use in GCC warning disables:

GCC_NO_FORMAT_TRUNCATION -Wno-format-truncation (GCC 7/8)
GCC_NO_STRINGOP_TRUNCATION -Wno-stringop-truncation (GCC 8)
GCC_NO_STRINGOP_OVERFLOW -Wno-stringop-overflow (GCC 8)
GCC_NO_CAST_FUNCTION_TYPE -Wno-cast-function-type (GCC 8)

use these to turn off warnings for most GCC-8 complaints. many
of these are false positives, most of the real bugs are already
commited, or are yet to come.


we plan to introduce versions of (some?) of these that use the
"-Wno-error=" form, which still displays the warnings but does
not make it an error, and all of the above will be re-considered
as either being "fix me" (warning still displayed) or "warning
is wrong."
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 02-Nov-2016  pgoyette branches: 1.1.2; 1.1.4; 1.1.18; 1.1.22;
* Split sys/kern/sys_process.c into three parts:
1 - ptrace(2) syscall for native emulation
2 - common ptrace(2) syscall code (shared with compat_netbsd32)
3 - support routines that are shared with PROCFS and/or KTRACE

* Add module glue for #1 and #2. Both modules will be built-in to the
kernel if "options PTRACE" is included in the config file (this is
the default, defined in sys/conf/std).

* Mark the ptrace(2) syscall as modular in syscalls.master (generated
files will be committed shortly).

* Conditionalize all remaining portions of PTRACE code on a new kernel
option PTRACE_HOOKS.

XXX Instead of PROCFS depending on 'options PTRACE', we should probably
just add a procfs attribute to the sys/kern/sys_process.c file's
entry in files.kern, and add PROCFS to the "#if defineds" for
process_domem(). It's really confusing to have two different ways
of requiring this file.
 1.1.22.2 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.1.22.1 10-Jun-2019  christos Sync with HEAD
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 02-Nov-2016  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:59 +0000
 1.1.4.2 05-Dec-2016  skrll Sync with HEAD
 1.1.4.1 02-Nov-2016  skrll file Makefile was added on branch nick-nhusb on 2016-12-05 10:55:27 +0000
 1.1.2.2 04-Nov-2016  pgoyette Sync with HEAD
 1.1.2.1 02-Nov-2016  pgoyette file Makefile was added on branch pgoyette-localcount on 2016-11-04 14:49:20 +0000
 1.1 19-Oct-2020  christos Arrange so that no options COREDUMP and no options PTRACE work together.
Thanks to Paul Goyette for testing.
 1.3 26-Sep-2019  christos kill WARNS = 3
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 28-Jun-2008  rumble branches: 1.1.2; 1.1.4; 1.1.8; 1.1.20; 1.1.92;
Add of bunch of file system modules.
 1.1.92.2 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.1.92.1 10-Jun-2019  christos Sync with HEAD
 1.1.20.2 04-May-2009  yamt sync with head.
 1.1.20.1 28-Jun-2008  yamt file Makefile was added on branch yamt-nfs-mp on 2009-05-04 08:14:12 +0000
 1.1.8.2 18-Sep-2008  wrstuden Sync with wrstuden-revivesa-base-2.
 1.1.8.1 28-Jun-2008  wrstuden file Makefile was added on branch wrstuden-revivesa on 2008-09-18 04:36:59 +0000
 1.1.4.2 03-Jul-2008  simonb Sync with head.
 1.1.4.1 28-Jun-2008  simonb file Makefile was added on branch simonb-wapbl on 2008-07-03 18:38:20 +0000
 1.1.2.2 29-Jun-2008  mjf Sync with HEAD.
 1.1.2.1 28-Jun-2008  mjf file Makefile was added on branch mjf-devfs2 on 2008-06-29 09:33:17 +0000
 1.1 28-Jan-2011  haad branches: 1.1.2; 1.1.4; 1.1.8;
Add support for building pud as module. Do it in a same way how putter is
done.
 1.1.8.2 06-Jun-2011  jruoho Sync with HEAD.
 1.1.8.1 28-Jan-2011  jruoho file Makefile was added on branch jruoho-x86intr on 2011-06-06 09:09:50 +0000
 1.1.4.2 06-Mar-2011  bouyer Sync with HEAD
 1.1.4.1 28-Jan-2011  bouyer file Makefile was added on branch bouyer-quota2 on 2011-03-06 15:07:57 +0000
 1.1.2.2 05-Mar-2011  rmind sync with head
 1.1.2.1 28-Jan-2011  rmind file Makefile was added on branch rmind-uvmplock on 2011-03-05 20:55:47 +0000
 1.4 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.3 04-Feb-2019  pgoyette Don't include puffs_compat in a kernel unless the filesystem is
selected along with COMPAT_50. Also, don't include puffs_compat
in the main puffs filesystem module; it is part of the compat_50
module.

Should address PR kern/53943
 1.2 06-Jul-2010  pooka branches: 1.2.60;
remember to add the new file to the build
 1.1 19-May-2008  jmcneill branches: 1.1.2; 1.1.4; 1.1.10; 1.1.22; 1.1.26; 1.1.28;
Add Makefile for building puffs kmod.
 1.1.28.1 05-Mar-2011  rmind sync with head
 1.1.26.1 17-Aug-2010  uebayasi Sync with HEAD.
 1.1.22.3 11-Aug-2010  yamt sync with head.
 1.1.22.2 04-May-2009  yamt sync with head.
 1.1.22.1 19-May-2008  yamt file Makefile was added on branch yamt-nfs-mp on 2009-05-04 08:14:12 +0000
 1.1.10.2 24-Sep-2008  wrstuden Sync with wrstuden-revivesa-base-2
 1.1.10.1 19-May-2008  wrstuden file Makefile was added on branch wrstuden-revivesa on 2008-09-24 05:28:33 +0000
 1.1.4.2 04-Jun-2008  yamt sync with head
 1.1.4.1 19-May-2008  yamt file Makefile was added on branch yamt-pf42 on 2008-06-04 02:05:47 +0000
 1.1.2.2 02-Jun-2008  mjf Sync with HEAD.
 1.1.2.1 19-May-2008  mjf file Makefile was added on branch mjf-devfs2 on 2008-06-02 13:24:21 +0000
 1.2.60.1 10-Jun-2019  christos Sync with HEAD
 1.1 19-May-2008  jmcneill branches: 1.1.2; 1.1.4; 1.1.10; 1.1.22;
Makefile for building putter kmod
 1.1.22.2 04-May-2009  yamt sync with head.
 1.1.22.1 19-May-2008  yamt file Makefile was added on branch yamt-nfs-mp on 2009-05-04 08:14:12 +0000
 1.1.10.2 24-Sep-2008  wrstuden Sync with wrstuden-revivesa-base-2
 1.1.10.1 19-May-2008  wrstuden file Makefile was added on branch wrstuden-revivesa on 2008-09-24 05:28:33 +0000
 1.1.4.2 04-Jun-2008  yamt sync with head
 1.1.4.1 19-May-2008  yamt file Makefile was added on branch yamt-pf42 on 2008-06-04 02:05:47 +0000
 1.1.2.2 02-Jun-2008  mjf Sync with HEAD.
 1.1.2.1 19-May-2008  mjf file Makefile was added on branch mjf-devfs2 on 2008-06-02 13:24:21 +0000
 1.1 11-Aug-2011  mbalmer pwdog(4) is a device driver for QUANCOM Electronic PWDOG1 PCI
attached watchdog timers.
 1.1 11-Aug-2011  mbalmer pwdog(4) is a device driver for QUANCOM Electronic PWDOG1 PCI
attached watchdog timers.
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 28-Aug-2011  jmcneill branches: 1.1.54;
add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules
 1.1.54.1 10-Jun-2019  christos Sync with HEAD
 1.1 28-Aug-2011  jmcneill add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules
 1.16 03-Jun-2023  lukem adapt to ${CC_WNO_IMPLICIT_FALLTHROUGH}

Use ${CC_WNO_IMPLICIT_FALLTHROUGH} instead of
the older style more complex expressions.
 1.15 03-Jun-2021  nia build the drmkms modules with -fwrapv too
 1.14 11-Nov-2019  joerg branches: 1.14.12; 1.14.16;
Update LLVM to 10.0.0git (01f3a59fb3e2542fce74c768718f594d0debd0da)
 1.13 29-Sep-2019  mrg convert HAVE_GCC == 7 to HAVE_GCC >= 7.
 1.12 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.11 04-Feb-2019  mrg - use -Wno-error=implicit-fallthrough with GCC7.
 1.10 28-Aug-2011  jmcneill branches: 1.10.54;
Split out ati_pcigart into a separate module so it can be shared with r128drm
 1.9 28-Aug-2011  jmcneill set default WARNS for modules to 3 -- the only one that needs < 3 now is pf
 1.8 27-May-2010  mrg add r600_blit.c and radeon_cs.c.
 1.7 22-Jun-2009  mrg branches: 1.7.2; 1.7.4;
add a couple of missing files. pointed out by tron.
 1.6 22-Jun-2009  tron Fix modules build after update of drm(4).
 1.5 15-Oct-2008  pooka branches: 1.5.4; 1.5.8; 1.5.12; 1.5.14;
Revert revivesa merge botch to fix build.
 1.4 15-Oct-2008  wrstuden Merge wrstuden-revivesa into HEAD.
 1.3 08-Jul-2008  jmmv branches: 1.3.2;
Fix build of the i915drm and radeondrm modules after the #include changes
from <dev/drm/drm{,P}.h> to "drm{,P}.h" by mrg@.
 1.2 19-May-2008  tnn branches: 1.2.2; 1.2.4; 1.2.6; 1.2.8;
Fix build.
 1.1 18-May-2008  jmcneill Makefile for building radeondrm kmod
 1.2.8.1 19-Oct-2008  haad Sync with HEAD.
 1.2.6.1 18-Jul-2008  simonb Sync with head.
 1.2.4.2 04-Jun-2008  yamt sync with head
 1.2.4.1 19-May-2008  yamt file Makefile was added on branch yamt-pf42 on 2008-06-04 02:05:47 +0000
 1.2.2.3 28-Sep-2008  mjf Sync with HEAD.
 1.2.2.2 02-Jun-2008  mjf Sync with HEAD.
 1.2.2.1 19-May-2008  mjf file Makefile was added on branch mjf-devfs2 on 2008-06-02 13:24:21 +0000
 1.3.2.2 24-Sep-2008  wrstuden Sync with wrstuden-revivesa-base-2
 1.3.2.1 08-Jul-2008  wrstuden file Makefile was added on branch wrstuden-revivesa on 2008-09-24 05:28:33 +0000
 1.5.14.1 21-Apr-2010  matt sync to netbsd-5
 1.5.12.4 11-Aug-2010  yamt sync with head.
 1.5.12.3 18-Jul-2009  yamt sync with head.
 1.5.12.2 04-May-2009  yamt sync with head.
 1.5.12.1 15-Oct-2008  yamt file Makefile was added on branch yamt-nfs-mp on 2009-05-04 08:14:13 +0000
 1.5.8.1 23-Jul-2009  jym Sync with HEAD.
 1.5.4.2 23-Jun-2009  snj Pull up following revision(s) (requested by mrg in ticket #829):
sys/modules/i915drm/Makefile: revision 1.5
sys/modules/radeondrm/Makefile: revision 1.7
add a couple of missing files. pointed out by tron.
 1.5.4.1 23-Jun-2009  snj Pull up following revision(s) (requested by mrg in ticket #829):
sys/modules/drm/Makefile: revision 1.3
sys/modules/i915drm/Makefile: revision 1.4
sys/modules/radeondrm/Makefile: revision 1.6
Fix modules build after update of drm(4).
 1.7.4.1 06-Mar-2011  rmind sync with head (and fix few botches with this)
 1.7.2.1 17-Aug-2010  uebayasi Sync with HEAD.
 1.10.54.2 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.10.54.1 10-Jun-2019  christos Sync with HEAD
 1.14.16.1 06-Jun-2021  cjep sync with head
 1.14.12.1 17-Jun-2021  thorpej Sync w/ HEAD.
 1.1 28-Aug-2011  jmcneill set default WARNS for modules to 3 -- the only one that needs < 3 now is pf
 1.7 25-Sep-2023  oster We no longer need the deprecated copyback functionality now that
incorporating a used spare is automatic.

Copyback has always been an issue, as to do a copyback all IO to
the array had to be suspended, and so was very, very unlikely to
have been used in anything resembling a production system.
 1.6 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.5 04-Feb-2019  mrg don't assume _LP64 == supports COMPAT_NETBSD32.

this is not true for alpha, ia64 and arm32 ports, and the first two
were not building because of it, and the latter would be missing
the oabi support (likely not a big deal, but still wrong.)

add a makefile fragment that tells you if it is supported and include
it where needed to define COMPAT_NETBSD32 when building the normal
kernel (ie, modules & rump.)


fixes alpha build, probably fixes ia64 build.


XXX: still leaves some netbsd32 code in rf_netbsdkintf.c, that should
be moved into some hooks, but first the configuration setup
needs to be moved into a common function the netbsd32 code can
call into, vs living in the switch case itself.
 1.4 03-Feb-2019  pgoyette Remove some commented-out stuff accidentally left in the previous commit.

It's just comments, NFCI
 1.3 03-Feb-2019  pgoyette Don't include the raidframe compat code in the main raid module, the
compat code lives in their own compat_raid_xx modules, which will now
be autoloaded if needed.

While here, extract the compat_netbsd32_raid code into its own module,
too.

Welcome to 8.99.34
 1.2 18-Jan-2018  mrg branches: 1.2.4;
implement 32-bit compat support for raidframe.

convert several raidframe ioctls to be bitsize idempotent so that
they work the same in 32 and 64 bit worlds, allowing netbsd32 to
configure and query raid properly. remove useless 'row' in a few
places. add COMPAT_80 and put the old ioctls there.

raidframeio.h:
RAIDFRAME_TEST_ACC
- remove, unused
RAIDFRAME_GET_COMPONENT_LABEL
- convert to label not pointer to label
RAIDFRAME_CHECK_RECON_STATUS_EXT
RAIDFRAME_CHECK_PARITYREWRITE_STATUS_EXT
RAIDFRAME_CHECK_COPYBACK_STATUS_EXT
- convert to progress info not pointer to info
RAIDFRAME_GET_INFO
- version entirely.
raidframevar.h:
- rf_recon_req{} has row, flags and raidPtr removed (they're
not a useful part of this interface.)
- RF_Config_s{} and RF_DeviceConfig_s{} have numRow/rows removed.
- RF_RaidDisk_s{} is re-ordered slightly to fix alignment
padding - the actual data was already OK.
- InstallSpareTable() loses row argument

rf_compat32.c has code for RF_Config_s{} in 32 bit mode, used
by RAIDFRAME_CONFIGURE and RAIDFRAME_GET_INFO32.

rf_compat80.c has code for rf_recon_req{}, RF_RaidDisk_s{} and
RF_DeviceConfig_s{} to handle RAIDFRAME_FAIL_DISK,
RAIDFRAME_GET_COMPONENT_LABEL, RAIDFRAME_CHECK_RECON_STATUS_EXT,
RAIDFRAME_CHECK_PARITYREWRITE_STATUS_EXT,
RAIDFRAME_CHECK_COPYBACK_STATUS_EXT, RAIDFRAME_GET_INFO.

move several of the per-ioctl code blocks into separate functions.

add rf_recon_req_internal{} to replace old usage of global
rf_recon_req{} that had unused void * in the structure, ruining
it's 32/64 bit ABI.

add missing case for RAIDFRAME_GET_INFO50.

adjust raid tests to use the new .conf format, and add a case to
test the old method as well.

raidctl:
deal with lack of 'row' members in a couple of places.
fail request no longer takes row.
handle "START array" sections with just "numCol numSpare", ie
no "numRow" specified. for now, generate old-style configuration
but update raidctl.8 to specify the new style (keeping reference
to the old style.)

note that: RF_ComponentLabel_s::{row,num_rows} and
RF_SingleComponent_s::row are obsolete but not removed yet.
 1.1 23-Dec-2015  pgoyette branches: 1.1.2; 1.1.18;
New files, in preparation for modularized version of raidframe driver.

(Driver changes to be committed on the weekend.)
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 23-Dec-2015  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:59 +0000
 1.1.2.2 27-Dec-2015  skrll Sync with HEAD (as of 26th Dec)
 1.1.2.1 23-Dec-2015  skrll file Makefile was added on branch nick-nhusb on 2015-12-27 12:10:06 +0000
 1.2.4.1 10-Jun-2019  christos Sync with HEAD
 1.1 23-Dec-2015  pgoyette branches: 1.1.2; 1.1.18;
New files, in preparation for modularized version of raidframe driver.

(Driver changes to be committed on the weekend.)
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 23-Dec-2015  jdolecek file raid.ioconf was added on branch tls-maxphys on 2017-12-03 11:38:59 +0000
 1.1.2.2 27-Dec-2015  skrll Sync with HEAD (as of 26th Dec)
 1.1.2.1 23-Dec-2015  skrll file raid.ioconf was added on branch nick-nhusb on 2015-12-27 12:10:06 +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 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.2 04-Feb-2019  mrg add -Wno-error=int-in-bool-context or -Wno-error=implicit-fallthrough
for various drm files that would be best ignored or upstream fixed.
(could fix savagedrm, no one upstream is that any more.)
 1.1 28-Aug-2011  jmcneill branches: 1.1.54;
add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules
 1.1.54.2 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.1.54.1 10-Jun-2019  christos Sync with HEAD
 1.1 28-Aug-2011  jmcneill add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules
 1.1 07-Dec-2021  brad A driver and user land utility for the Sparkfun Serial Controlled Motor
Driver module as illustrated here:

https://www.sparkfun.com/products/13911

A SCMD module is a ARM SOC simular to a Arduino in front of a motor
driver chip. The single SCMD module can control two motors and up to
16 additional modules can be chained together using an internal I2C
bus. One can interface with the SCMD using tty uart commands, SPI or
I2C. The driver in this commit adds a kernel driver for the I2C and
SPI interfaces. The command line utility provides a set of
convenience commands that support most of the functions of the SCMD
and is able to use the tty uart mode, SPI user land or the included
kernel driver in a uniform manor.

The use of the SCMD module is mostly for small robots and the like,
but it can control anything that is controllable by voltage.
 1.1 07-Dec-2021  brad A driver and user land utility for the Sparkfun Serial Controlled Motor
Driver module as illustrated here:

https://www.sparkfun.com/products/13911

A SCMD module is a ARM SOC simular to a Arduino in front of a motor
driver chip. The single SCMD module can control two motors and up to
16 additional modules can be chained together using an internal I2C
bus. One can interface with the SCMD using tty uart commands, SPI or
I2C. The driver in this commit adds a kernel driver for the I2C and
SPI interfaces. The command line utility provides a set of
convenience commands that support most of the functions of the SCMD
and is able to use the tty uart mode, SPI user land or the included
kernel driver in a uniform manor.

The use of the SCMD module is mostly for small robots and the like,
but it can control anything that is controllable by voltage.
 1.1 07-Dec-2021  brad A driver and user land utility for the Sparkfun Serial Controlled Motor
Driver module as illustrated here:

https://www.sparkfun.com/products/13911

A SCMD module is a ARM SOC simular to a Arduino in front of a motor
driver chip. The single SCMD module can control two motors and up to
16 additional modules can be chained together using an internal I2C
bus. One can interface with the SCMD using tty uart commands, SPI or
I2C. The driver in this commit adds a kernel driver for the I2C and
SPI interfaces. The command line utility provides a set of
convenience commands that support most of the functions of the SCMD
and is able to use the tty uart mode, SPI user land or the included
kernel driver in a uniform manor.

The use of the SCMD module is mostly for small robots and the like,
but it can control anything that is controllable by voltage.
 1.1 07-Dec-2021  brad A driver and user land utility for the Sparkfun Serial Controlled Motor
Driver module as illustrated here:

https://www.sparkfun.com/products/13911

A SCMD module is a ARM SOC simular to a Arduino in front of a motor
driver chip. The single SCMD module can control two motors and up to
16 additional modules can be chained together using an internal I2C
bus. One can interface with the SCMD using tty uart commands, SPI or
I2C. The driver in this commit adds a kernel driver for the I2C and
SPI interfaces. The command line utility provides a set of
convenience commands that support most of the functions of the SCMD
and is able to use the tty uart mode, SPI user land or the included
kernel driver in a uniform manor.

The use of the SCMD module is mostly for small robots and the like,
but it can control anything that is controllable by voltage.
 1.1 14-Apr-2022  pgoyette Split some common stuff into scsi_subr module. This enables loading
of the iscsi module whether or not there are any scsi things built
into the kernel.

Addresses the iscsi portion of kern/56772
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 30-May-2010  pgoyette branches: 1.1.2; 1.1.4; 1.1.6; 1.1.66;
Extract SCSIVERBOSE into a kernel module. The module can be builtin
by defining 'options SCSIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not SCSI or
atapi support exists.
 1.1.66.1 10-Jun-2019  christos Sync with HEAD
 1.1.6.2 17-Aug-2010  uebayasi Sync with HEAD.
 1.1.6.1 30-May-2010  uebayasi file Makefile was added on branch uebayasi-xip on 2010-08-17 06:47:42 +0000
 1.1.4.2 11-Aug-2010  yamt sync with head.
 1.1.4.1 30-May-2010  yamt file Makefile was added on branch yamt-nfs-mp on 2010-08-11 22:54:52 +0000
 1.1.2.2 03-Jul-2010  rmind sync with head
 1.1.2.1 30-May-2010  rmind file Makefile was added on branch rmind-uvmplock on 2010-07-03 01:19:59 +0000
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 31-Jul-2011  jmcneill branches: 1.1.54;
module glue for sdtemp
 1.1.54.1 10-Jun-2019  christos Sync with HEAD
 1.2 02-Aug-2011  pgoyette Allow multiple sdtemp sensors to attach, at all valid addresses
 1.1 31-Jul-2011  jmcneill module glue for sdtemp
 1.1 02-Oct-2009  elad branches: 1.1.4;
First part of secmodel cleanup and other misc. changes:

- Separate the suser part of the bsd44 secmodel into its own secmodel
and directory, pending even more cleanups. For revision history
purposes, the original location of the files was

src/sys/secmodel/bsd44/secmodel_bsd44_suser.c
src/sys/secmodel/bsd44/suser.h

- Add a man-page for secmodel_suser(9) and update the one for
secmodel_bsd44(9).

- Add a "secmodel" module class and use it. Userland program and
documentation updated.

- Manage secmodel count (nsecmodels) through the module framework.
This eliminates the need for secmodel_{,de}register() calls in
secmodel code.

- Prepare for secmodel modularization by adding relevant module bits.
The secmodels don't allow auto unload. The bsd44 secmodel depends
on the suser and securelevel secmodels. The overlay secmodel depends
on the bsd44 secmodel. As the module class is only cosmetic, and to
prevent ambiguity, the bsd44 and overlay secmodels are prefixed with
"secmodel_".

- Adapt the overlay secmodel to recent changes (mainly vnode scope).

- Stop using link-sets for the sysctl node(s) creation.

- Keep sysctl variables under nodes of their relevant secmodels. In
other words, don't create duplicates for the suser/securelevel
secmodels under the bsd44 secmodel, as the latter is merely used
for "grouping".

- For the suser and securelevel secmodels, "advertise presence" in
relevant sysctl nodes (sysctl.security.models.{suser,securelevel}).

- Get rid of the LKM preprocessor stuff.

- As secmodels are now modules, there's no need for an explicit call
to secmodel_start(); it's handled by the module framework. That
said, the module framework was adjusted to properly load secmodels
early during system startup.

- Adapt rump to changes: Instead of using empty stubs for securelevel,
simply use the suser secmodel. Also replace secmodel_start() with a
call to secmodel_suser_start().

- 5.99.20.

Testing was done on i386 ("release" build). Spearated module_init()
changes were tested on sparc and sparc64 as well by martin@ (thanks!).

Mailing list reference:

http://mail-index.netbsd.org/tech-kern/2009/09/25/msg006135.html
 1.1.4.2 11-Mar-2010  yamt sync with head
 1.1.4.1 02-Oct-2009  yamt file Makefile was added on branch yamt-nfs-mp on 2010-03-11 15:04:25 +0000
 1.1 04-Dec-2011  jym branches: 1.1.4;
Hook secmodel_extensions(9) to modules build.
 1.1.4.2 17-Apr-2012  yamt sync with head
 1.1.4.1 04-Dec-2011  yamt file Makefile was added on branch yamt-pagecache on 2012-04-17 00:08:37 +0000
 1.1 02-Oct-2009  elad branches: 1.1.4;
First part of secmodel cleanup and other misc. changes:

- Separate the suser part of the bsd44 secmodel into its own secmodel
and directory, pending even more cleanups. For revision history
purposes, the original location of the files was

src/sys/secmodel/bsd44/secmodel_bsd44_suser.c
src/sys/secmodel/bsd44/suser.h

- Add a man-page for secmodel_suser(9) and update the one for
secmodel_bsd44(9).

- Add a "secmodel" module class and use it. Userland program and
documentation updated.

- Manage secmodel count (nsecmodels) through the module framework.
This eliminates the need for secmodel_{,de}register() calls in
secmodel code.

- Prepare for secmodel modularization by adding relevant module bits.
The secmodels don't allow auto unload. The bsd44 secmodel depends
on the suser and securelevel secmodels. The overlay secmodel depends
on the bsd44 secmodel. As the module class is only cosmetic, and to
prevent ambiguity, the bsd44 and overlay secmodels are prefixed with
"secmodel_".

- Adapt the overlay secmodel to recent changes (mainly vnode scope).

- Stop using link-sets for the sysctl node(s) creation.

- Keep sysctl variables under nodes of their relevant secmodels. In
other words, don't create duplicates for the suser/securelevel
secmodels under the bsd44 secmodel, as the latter is merely used
for "grouping".

- For the suser and securelevel secmodels, "advertise presence" in
relevant sysctl nodes (sysctl.security.models.{suser,securelevel}).

- Get rid of the LKM preprocessor stuff.

- As secmodels are now modules, there's no need for an explicit call
to secmodel_start(); it's handled by the module framework. That
said, the module framework was adjusted to properly load secmodels
early during system startup.

- Adapt rump to changes: Instead of using empty stubs for securelevel,
simply use the suser secmodel. Also replace secmodel_start() with a
call to secmodel_suser_start().

- 5.99.20.

Testing was done on i386 ("release" build). Spearated module_init()
changes were tested on sparc and sparc64 as well by martin@ (thanks!).

Mailing list reference:

http://mail-index.netbsd.org/tech-kern/2009/09/25/msg006135.html
 1.1.4.2 11-Mar-2010  yamt sync with head
 1.1.4.1 02-Oct-2009  yamt file Makefile was added on branch yamt-nfs-mp on 2010-03-11 15:04:25 +0000
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 02-Oct-2009  elad branches: 1.1.4; 1.1.66;
First part of secmodel cleanup and other misc. changes:

- Separate the suser part of the bsd44 secmodel into its own secmodel
and directory, pending even more cleanups. For revision history
purposes, the original location of the files was

src/sys/secmodel/bsd44/secmodel_bsd44_suser.c
src/sys/secmodel/bsd44/suser.h

- Add a man-page for secmodel_suser(9) and update the one for
secmodel_bsd44(9).

- Add a "secmodel" module class and use it. Userland program and
documentation updated.

- Manage secmodel count (nsecmodels) through the module framework.
This eliminates the need for secmodel_{,de}register() calls in
secmodel code.

- Prepare for secmodel modularization by adding relevant module bits.
The secmodels don't allow auto unload. The bsd44 secmodel depends
on the suser and securelevel secmodels. The overlay secmodel depends
on the bsd44 secmodel. As the module class is only cosmetic, and to
prevent ambiguity, the bsd44 and overlay secmodels are prefixed with
"secmodel_".

- Adapt the overlay secmodel to recent changes (mainly vnode scope).

- Stop using link-sets for the sysctl node(s) creation.

- Keep sysctl variables under nodes of their relevant secmodels. In
other words, don't create duplicates for the suser/securelevel
secmodels under the bsd44 secmodel, as the latter is merely used
for "grouping".

- For the suser and securelevel secmodels, "advertise presence" in
relevant sysctl nodes (sysctl.security.models.{suser,securelevel}).

- Get rid of the LKM preprocessor stuff.

- As secmodels are now modules, there's no need for an explicit call
to secmodel_start(); it's handled by the module framework. That
said, the module framework was adjusted to properly load secmodels
early during system startup.

- Adapt rump to changes: Instead of using empty stubs for securelevel,
simply use the suser secmodel. Also replace secmodel_start() with a
call to secmodel_suser_start().

- 5.99.20.

Testing was done on i386 ("release" build). Spearated module_init()
changes were tested on sparc and sparc64 as well by martin@ (thanks!).

Mailing list reference:

http://mail-index.netbsd.org/tech-kern/2009/09/25/msg006135.html
 1.1.66.1 10-Jun-2019  christos Sync with HEAD
 1.1.4.2 11-Mar-2010  yamt sync with head
 1.1.4.1 02-Oct-2009  yamt file Makefile was added on branch yamt-nfs-mp on 2010-03-11 15:04:26 +0000
 1.3 04-Jun-2022  pgoyette Combine the midi and sequencer modules into a single midi_seq module
to avoid a circular dependency as noted in kern/56772. Retain minimal
modules of the original names to accomodate auto-loading upon access
to the /dev/xxx nodes.
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 01-Jun-2017  pgoyette branches: 1.1.6; 1.1.10; 1.1.14;
Add the modules for audio, midi, and sequencer
 1.1.14.1 10-Jun-2019  christos Sync with HEAD
 1.1.10.2 03-Dec-2017  jdolecek update from HEAD
 1.1.10.1 01-Jun-2017  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:59 +0000
 1.1.6.2 28-Aug-2017  skrll Sync with HEAD
 1.1.6.1 01-Jun-2017  skrll file Makefile was added on branch nick-nhusb on 2017-08-28 17:53:10 +0000
 1.2 04-Jun-2022  pgoyette Combine the midi and sequencer modules into a single midi_seq module
to avoid a circular dependency as noted in kern/56772. Retain minimal
modules of the original names to accomodate auto-loading upon access
to the /dev/xxx nodes.
 1.1 01-Jun-2017  pgoyette branches: 1.1.6; 1.1.10;
Add the modules for audio, midi, and sequencer
 1.1.10.2 03-Dec-2017  jdolecek update from HEAD
 1.1.10.1 01-Jun-2017  jdolecek file sequencer.ioconf was added on branch tls-maxphys on 2017-12-03 11:38:59 +0000
 1.1.6.2 28-Aug-2017  skrll Sync with HEAD
 1.1.6.1 01-Jun-2017  skrll file sequencer.ioconf was added on branch nick-nhusb on 2017-08-28 17:53:10 +0000
 1.1 14-Oct-2021  brad A driver for the Sensirion SGP40 MOx gas sensor. An example of this
chip from Adafruit is:

https://www.adafruit.com/product/4829

This is a moderately priced gas sensor that can detect volatile
organic compounds in the air. The driver uses the 3-clause BSD
licensed VOC algorithm provided by Sensirion to turn the raw sensor
metric into a VOC index which can indicate the quality of the air in a
particular indoor environment. All published functions of the chip
are supported and one unpublished feature.
 1.1 14-Oct-2021  brad A driver for the Sensirion SGP40 MOx gas sensor. An example of this
chip from Adafruit is:

https://www.adafruit.com/product/4829

This is a moderately priced gas sensor that can detect volatile
organic compounds in the air. The driver uses the 3-clause BSD
licensed VOC algorithm provided by Sensirion to turn the raw sensor
metric into a VOC index which can indicate the quality of the air in a
particular indoor environment. All published functions of the chip
are supported and one unpublished feature.
 1.1 06-Nov-2021  brad Driver for the Sensirion SHT30/SHT31/SHT35 temperature and humidity
sensor such as:

https://www.adafruit.com/product/2857

This is a higher priced sensor with a lot of features, including the
ability to do sub-second periodic updates. The driver supports
everything about the sensor except for the alert pin.
 1.1 06-Nov-2021  brad Driver for the Sensirion SHT30/SHT31/SHT35 temperature and humidity
sensor such as:

https://www.adafruit.com/product/2857

This is a higher priced sensor with a lot of features, including the
ability to do sub-second periodic updates. The driver supports
everything about the sensor except for the alert pin.
 1.1 03-Oct-2021  brad A driver for the Sensirion SHT40/SHT41/SHT45 temperature and humidity
sensor. An example of this chip is:

https://www.adafruit.com/product/4885

This is a lower cost chip that provides higher then usual precision
according to the data sheet. This driver supports all of the published
functions that the chip has.
 1.1 03-Oct-2021  brad A driver for the Sensirion SHT40/SHT41/SHT45 temperature and humidity
sensor. An example of this chip is:

https://www.adafruit.com/product/4885

This is a lower cost chip that provides higher then usual precision
according to the data sheet. This driver supports all of the published
functions that the chip has.
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 29-Dec-2017  christos branches: 1.1.4;
PR/52848: Brad Spencer: Add module glue for AM2315 and SI70xx drivers
 1.1.4.1 10-Jun-2019  christos Sync with HEAD
 1.1 29-Dec-2017  christos PR/52848: Brad Spencer: Add module glue for AM2315 and SI70xx drivers
 1.1 28-Aug-2011  jmcneill add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules
 1.1 28-Aug-2011  jmcneill add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules
 1.1 01-Jan-2014  pgoyette branches: 1.1.4; 1.1.6; 1.1.10;
Create modules for software crypto components.
 1.1.10.2 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.1.10.1 01-Jan-2014  tls file Makefile was added on branch tls-maxphys on 2014-08-20 00:04:34 +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 01-Jan-2014  yamt file Makefile was added on branch yamt-pagecache on 2014-05-22 11:41:08 +0000
 1.1.4.2 18-May-2014  rmind sync with head
 1.1.4.1 01-Jan-2014  rmind file Makefile was added on branch rmind-smpnet on 2014-05-18 17:46:12 +0000
 1.6 03-Jun-2023  lukem bsd.own.mk: rename to CC_WNO_ADDRESS_OF_PACKED_MEMBER

Provide a single variable
CC_WNO_ADDRESS_OF_PACKED_MEMBER
with options for both clang and gcc, to replace
CLANG_NO_ADDR_OF_PACKED_MEMBER
CC_NO_ADDR_OF_PACKED_MEMBER
GCC_NO_ADDR_OF_PACKED_MEMBER

Using the convention CC_compilerflag, where compilerflag
is based on the full compiler flag name.
 1.5 29-May-2023  lukem bsd.own.mk: rename NO_ADDR_OF_PACKED_MEMBER to CC_NO_ADDR_OF_PACKED_MEMBER

Add "CC_" prefix to NO_ADDR_OF_PACKED_MEMBER.

We now have the following convention:
GCC_NO_*: Disable specific warnings from GCC.
CLANG_NO_*: Disable specific warnings from Clang.
CC_NO_*: Disable specific warnings from both Clang and GCC.

This reserves "NO_*" Makefile variables to disable other features.

Some space->tab fixes.
 1.4 18-Oct-2020  christos Provide a global no-packed-address for both gcc and clang
 1.3 18-Oct-2020  christos use the GCC_ warning variable
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 04-Aug-2016  pgoyette branches: 1.1.2; 1.1.4; 1.1.18; 1.1.22;
Add and enable a new module, slcompress

This is a prerequisite to modularizing the ppp pseudo-device
 1.1.22.1 10-Jun-2019  christos Sync with HEAD
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 04-Aug-2016  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:59 +0000
 1.1.4.2 05-Oct-2016  skrll Sync with HEAD
 1.1.4.1 04-Aug-2016  skrll file Makefile was added on branch nick-nhusb on 2016-10-05 20:56:07 +0000
 1.1.2.2 06-Aug-2016  pgoyette Sync with HEAD
 1.1.2.1 04-Aug-2016  pgoyette file Makefile was added on branch pgoyette-localcount on 2016-08-06 00:19:10 +0000
 1.2 21-Oct-2012  alnsn branches: 1.2.2; 1.2.4;
Move sljit_mod.c to sys/external/bsd/sljit/sljit and share it between
builtin and standalone module.
 1.1 13-Oct-2012  alnsn Enable sljit in amd64 kernel and modules.
 1.2.4.2 21-Oct-2012  alnsn Move sljit_mod.c to sys/external/bsd/sljit/sljit and share it between
builtin and standalone module.
 1.2.4.1 21-Oct-2012  alnsn file Makefile was added on branch tls-maxphys on 2012-10-21 21:23:39 +0000
 1.2.2.2 30-Oct-2012  yamt sync with head
 1.2.2.1 21-Oct-2012  yamt file Makefile was added on branch yamt-pagecache on 2012-10-30 17:22:42 +0000
 1.2 21-Oct-2012  alnsn Move sljit_mod.c to sys/external/bsd/sljit/sljit and share it between
builtin and standalone module.
 1.1 13-Oct-2012  alnsn Enable sljit in amd64 kernel and modules.
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 31-Jul-2011  jmcneill branches: 1.1.54;
add smsc module glue
 1.1.54.1 10-Jun-2019  christos Sync with HEAD
 1.1 31-Jul-2011  jmcneill add smsc module glue
 1.1 17-Aug-2021  christos modules for blake2s libsodium and if_wg
 1.4 26-Jul-2024  riastradh sys/crypto/sodium: Add a self-test for IETF ChaCha20/Poly1305 AEAD.

PR kern/58468
 1.3 21-Aug-2021  christos branches: 1.3.4; 1.3.10;
rename glue.c to sodium_module.c
 1.2 18-Aug-2021  christos Don't define HAVE_TI_MODE if we don't have it.
 1.1 17-Aug-2021  christos modules for blake2s libsodium and if_wg
 1.3.10.1 02-Aug-2025  perseant Sync with HEAD
 1.3.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.5 18-Jan-2011  haad 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.4 12-Mar-2010  darran branches: 1.4.2; 1.4.4;
DTrace: Add support for a simulated solaris_cpu[] data structure per
cpu. Needed for the FBT provider amongst other features.
 1.3 10-Aug-2009  haad branches: 1.3.2; 1.3.4;
Enable taskq which was disabled during testing.
 1.2 10-Aug-2009  haad Remove strange looking -I entries.
 1.1 10-Aug-2009  haad Add solaris and zfs kernel modules build directories. These modules will
not be built during release build until we import other kernel patches needed.
 1.3.4.1 30-Apr-2010  uebayasi Sync with HEAD.
 1.3.2.3 11-Aug-2010  yamt sync with head.
 1.3.2.2 19-Aug-2009  yamt sync with head.
 1.3.2.1 10-Aug-2009  yamt file Makefile was added on branch yamt-nfs-mp on 2009-08-19 18:48:23 +0000
 1.4.4.1 06-Jun-2011  jruoho Sync with HEAD.
 1.4.2.1 05-Mar-2011  rmind sync with head
 1.9 15-Apr-2021  christos - Don't include <bsd.own.mk> It should be done by the enclosing Makefile
- Don't define NEED_ISYSTEM. This is a rump thing and should be only exposed
there.
 1.8 12-Apr-2021  mrg include bsd.own.mk to make sure $S is set.
 1.7 05-Jun-2019  hannken branches: 1.7.12;
Switch module solaris to native XDR.
 1.6 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.5 28-May-2018  chs branches: 1.5.2;
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.4 21-Nov-2012  pooka branches: 1.4.36;
Don't unconditionally use the error-silencing magic of -isystem
(as opposed to -I) on every component, only the zfs ones depend on it
to build. Regular modules might benefit from a similar move.
 1.3 04-Feb-2012  christos branches: 1.3.6;
argh, there was even more debugging!
 1.2 04-Feb-2012  christos No -g on the default install, if you want debugging you know where to put it.
 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.2 16-Jan-2013  yamt sync with (a bit old) head
 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.solmod was added on branch jruoho-x86intr on 2011-06-06 09:09:50 +0000
 1.1.4.2 05-Mar-2011  rmind sync with head
 1.1.4.1 18-Jan-2011  rmind file Makefile.solmod was added on branch rmind-uvmplock on 2011-03-05 20:55:48 +0000
 1.3.6.1 25-Feb-2013  tls resync with head
 1.4.36.1 25-Jun-2018  pgoyette Sync with HEAD
 1.5.2.1 10-Jun-2019  christos Sync with HEAD
 1.7.12.1 17-Apr-2021  thorpej Sync with HEAD.
 1.4 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.3 19-Aug-2011  christos branches: 1.3.54;
remove unneeded non-literal format string
 1.2 18-Aug-2011  christos document non-literal string format
 1.1 01-Aug-2011  pgoyette Add build glue for modular spdmem(4) driver, and enable it
 1.3.54.1 10-Jun-2019  christos Sync with HEAD
 1.2 02-Aug-2011  pgoyette Allow unit numbers to float, rather than tying to specific i2c address
 1.1 01-Aug-2011  pgoyette Add build glue for modular spdmem(4) driver, and enable it
 1.9 08-May-2019  isaki Merge isaki-audio2 branch, the overhaul of audio subsystem.
- Interrupt-oriented system rather than thread-oriented.
- Improve stability, quality and performance.
- Split playback and record cleanly. Improve halfduplex support.
- Many bugs are fixed including deadlocks, resource leaks, abuses, etc.
- Simplify audio filter mechanism. The encoding/channels/frequency
conversions are completely handled in the upper layer. So the hard-
ware driver only converts its hardware encoding (if necessary).
- audio_hw_if changes:
- Obsoletes query_encoding and add query_format instead.
- Obsoletes set_params and add set_format instead.
- Remove drain, setfd, mappage.
- The call sequences are changed.
- ioctl AUDIO_GETFD/SETFD, AUDIO_GETCHAN/SETCHAN are obsoleted.
- ioctl AUDIO_{QUERY,GET,SET}FORMAT are introduced.
- cleanup config attributes: au*conv and mulaw.
- All hardware drivers should follow it (I've done as much as possible).

Some file paths are changed:
- dev/audio.c -> dev/audio/audio.c (rewritten)
- dev/audiovar.h -> dev/audio/audiovar.h
- dev/audio_dai.h -> dev/audio/audio_dai.h
- dev/audio_if.h -> dev/audio/audio_if.h
- dev/audiobell.c -> dev/audio/audiobell.c
- dev/audiobellvar.h -> dev/audio/audiobellvar.h
- dev/mulaw.[ch] -> dev/audio/mulaw.[ch] + dev/audio/alaw.c
 1.8 17-Feb-2019  rin branches: 1.8.2;
Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.7 11-Jun-2017  pgoyette branches: 1.7.4; 1.7.8;
Define the NWSMUX symbol for the spkr module (for modules, we cannot
use the wsmux.h file created by the needs-flag in sys/conf/files)
 1.6 15-Dec-2016  pgoyette Create a single combined module for spkr_pcppi and spkr_audio, and
build it for all architectures.

By doing this, we can handle pcppi, audio, or both attachments with
non-built-in modules.

XXX Still to do: the module currently cannot be unloaded, and the
XXX spkr device(s) currently cannot be detached. (Really, two
XXX sides of the same problem.)
 1.5 09-Dec-2016  christos sync with latest. this should either be called spkr_pcppi or made to work
with both busses.
 1.4 09-Dec-2016  christos Add spkr_pcppi.c
 1.3 08-Dec-2016  nat Revert to previous. Add PCPPISPEAKER flag to fix build.
 1.2 08-Dec-2016  nat Fix building of the spkr module. The module now is the synthesized speaker.
Reported by joerg@
 1.1 17-May-2015  pgoyette branches: 1.1.2; 1.1.4;
Add the spkr module to the build.
 1.1.4.1 07-Jan-2017  pgoyette Sync with HEAD. (Note that most of these changes are simply $NetBSD$
tag issues.)
 1.1.2.4 28-Aug-2017  skrll Sync with HEAD
 1.1.2.3 05-Feb-2017  skrll Sync with HEAD
 1.1.2.2 06-Jun-2015  skrll Sync with HEAD
 1.1.2.1 17-May-2015  skrll file Makefile was added on branch nick-nhusb on 2015-06-06 14:40:24 +0000
 1.7.8.1 10-Jun-2019  christos Sync with HEAD
 1.7.4.2 03-Dec-2017  jdolecek update from HEAD
 1.7.4.1 11-Jun-2017  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:59 +0000
 1.8.2.2 08-May-2019  isaki Add WARNS flag. (It was left at my local in previous commit..)
 1.8.2.1 07-May-2019  isaki Fix paths and flags.
- aurateconv is gone. mulaw is a part of audio inseparably.
 1.4 15-Dec-2016  pgoyette branches: 1.4.14;
Create a single combined module for spkr_pcppi and spkr_audio, and
build it for all architectures.

By doing this, we can handle pcppi, audio, or both attachments with
non-built-in modules.

XXX Still to do: the module currently cannot be unloaded, and the
XXX spkr device(s) currently cannot be detached. (Really, two
XXX sides of the same problem.)
 1.3 08-Dec-2016  nat Revert to previous. Add PCPPISPEAKER flag to fix build.
 1.2 08-Dec-2016  nat Fix building of the spkr module. The module now is the synthesized speaker.
Reported by joerg@
 1.1 17-May-2015  pgoyette branches: 1.1.2; 1.1.4;
Add the spkr module to the build.
 1.1.4.1 07-Jan-2017  pgoyette Sync with HEAD. (Note that most of these changes are simply $NetBSD$
tag issues.)
 1.1.2.3 05-Feb-2017  skrll Sync with HEAD
 1.1.2.2 06-Jun-2015  skrll Sync with HEAD
 1.1.2.1 17-May-2015  skrll file spkr.ioconf was added on branch nick-nhusb on 2015-06-06 14:40:24 +0000
 1.4.14.2 03-Dec-2017  jdolecek update from HEAD
 1.4.14.1 15-Dec-2016  jdolecek file spkr.ioconf was added on branch tls-maxphys on 2017-12-03 11:38:59 +0000
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 06-Aug-2016  pgoyette branches: 1.1.2; 1.1.4; 1.1.18; 1.1.22;
Modularize the sppp_subr stuff so it can be shared by pppoe and lmc
drivers as they get modularized.
 1.1.22.1 10-Jun-2019  christos Sync with HEAD
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 06-Aug-2016  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:38:59 +0000
 1.1.4.2 05-Oct-2016  skrll Sync with HEAD
 1.1.4.1 06-Aug-2016  skrll file Makefile was added on branch nick-nhusb on 2016-10-05 20:56:07 +0000
 1.1.2.2 14-Sep-2016  pgoyette Sync with HEAD
 1.1.2.1 06-Aug-2016  pgoyette file Makefile was added on branch pgoyette-localcount on 2016-09-14 03:04:19 +0000
 1.1 26-Mar-2019  pgoyette branches: 1.1.4;
Now that the if_srt module has a chance of working (ie, it now
actually attaches/detaches the cdevsw!), add the required srt
module to allow module autoload triggered by opening /dev/srtN

XXX As noted in the recent commit to if_srt.c, someone(tm) needs
XXX to create the /dev/srt* device nodes with major 179. :)
 1.1.4.2 10-Jun-2019  christos Sync with HEAD
 1.1.4.1 26-Mar-2019  christos file Makefile was added on branch phil-wifi on 2019-06-10 22:09:39 +0000
 1.1 26-Mar-2019  pgoyette branches: 1.1.4;
Now that the if_srt module has a chance of working (ie, it now
actually attaches/detaches the cdevsw!), add the required srt
module to allow module autoload triggered by opening /dev/srtN

XXX As noted in the recent commit to if_srt.c, someone(tm) needs
XXX to create the /dev/srt* device nodes with major 179. :)
 1.1.4.2 10-Jun-2019  christos Sync with HEAD
 1.1.4.1 26-Mar-2019  christos file srt.c was added on branch phil-wifi on 2019-06-10 22:09:39 +0000
 1.1 02-Oct-2009  elad branches: 1.1.4;
First part of secmodel cleanup and other misc. changes:

- Separate the suser part of the bsd44 secmodel into its own secmodel
and directory, pending even more cleanups. For revision history
purposes, the original location of the files was

src/sys/secmodel/bsd44/secmodel_bsd44_suser.c
src/sys/secmodel/bsd44/suser.h

- Add a man-page for secmodel_suser(9) and update the one for
secmodel_bsd44(9).

- Add a "secmodel" module class and use it. Userland program and
documentation updated.

- Manage secmodel count (nsecmodels) through the module framework.
This eliminates the need for secmodel_{,de}register() calls in
secmodel code.

- Prepare for secmodel modularization by adding relevant module bits.
The secmodels don't allow auto unload. The bsd44 secmodel depends
on the suser and securelevel secmodels. The overlay secmodel depends
on the bsd44 secmodel. As the module class is only cosmetic, and to
prevent ambiguity, the bsd44 and overlay secmodels are prefixed with
"secmodel_".

- Adapt the overlay secmodel to recent changes (mainly vnode scope).

- Stop using link-sets for the sysctl node(s) creation.

- Keep sysctl variables under nodes of their relevant secmodels. In
other words, don't create duplicates for the suser/securelevel
secmodels under the bsd44 secmodel, as the latter is merely used
for "grouping".

- For the suser and securelevel secmodels, "advertise presence" in
relevant sysctl nodes (sysctl.security.models.{suser,securelevel}).

- Get rid of the LKM preprocessor stuff.

- As secmodels are now modules, there's no need for an explicit call
to secmodel_start(); it's handled by the module framework. That
said, the module framework was adjusted to properly load secmodels
early during system startup.

- Adapt rump to changes: Instead of using empty stubs for securelevel,
simply use the suser secmodel. Also replace secmodel_start() with a
call to secmodel_suser_start().

- 5.99.20.

Testing was done on i386 ("release" build). Spearated module_init()
changes were tested on sparc and sparc64 as well by martin@ (thanks!).

Mailing list reference:

http://mail-index.netbsd.org/tech-kern/2009/09/25/msg006135.html
 1.1.4.2 11-Mar-2010  yamt sync with head
 1.1.4.1 02-Oct-2009  yamt file Makefile was added on branch yamt-nfs-mp on 2010-03-11 15:04:26 +0000
 1.3 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.2 20-Aug-2015  christos branches: 1.2.18;
Add ioconf entries to the pseudo-devices.
 1.1 29-Dec-2013  pgoyette branches: 1.1.4; 1.1.6; 1.1.10; 1.1.12;
Start modularizing the opencrypto framework.
 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 29-Dec-2013  tls file Makefile was added on branch tls-maxphys on 2014-08-20 00:04:34 +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 29-Dec-2013  yamt file Makefile was added on branch yamt-pagecache on 2014-05-22 11:41:08 +0000
 1.1.4.2 18-May-2014  rmind sync with head
 1.1.4.1 29-Dec-2013  rmind file Makefile was added on branch rmind-smpnet on 2014-05-18 17:46:12 +0000
 1.2.18.1 10-Jun-2019  christos Sync with HEAD
 1.1 20-Aug-2015  christos branches: 1.1.2; 1.1.18;
Add ioconf entries to the pseudo-devices.
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 20-Aug-2015  jdolecek file swcrypto.ioconf was added on branch tls-maxphys on 2017-12-03 11:38:59 +0000
 1.1.2.2 22-Sep-2015  skrll Sync with HEAD
 1.1.2.1 20-Aug-2015  skrll file swcrypto.ioconf was added on branch nick-nhusb on 2015-09-22 12:06:10 +0000
 1.1 19-Oct-2010  pgoyette branches: 1.1.2; 1.1.8;
Add a new software-only sensor device. This is intended for use as a
kernel module, and can be helpful to generate sysmon_envsys events
when creating/modifying powerd scripts. This will also be used in an
upcoming series of atf tests for sysmon_envsys itself.
 1.1.8.2 05-Mar-2011  rmind sync with head
 1.1.8.1 19-Oct-2010  rmind file Makefile was added on branch rmind-uvmplock on 2011-03-05 20:55:48 +0000
 1.1.2.2 22-Oct-2010  uebayasi Sync with HEAD (-D20101022).
 1.1.2.1 19-Oct-2010  uebayasi file Makefile was added on branch uebayasi-xip on 2010-10-22 09:23:14 +0000
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 18-Apr-2015  pgoyette branches: 1.1.2; 1.1.18; 1.1.22;
Add modularized swwdog driver.
 1.1.22.1 10-Jun-2019  christos Sync with HEAD
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 18-Apr-2015  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:39:00 +0000
 1.1.2.2 06-Jun-2015  skrll Sync with HEAD
 1.1.2.1 18-Apr-2015  skrll file Makefile was added on branch nick-nhusb on 2015-06-06 14:40:24 +0000
 1.1 23-Apr-2015  pgoyette branches: 1.1.2; 1.1.18;
Build modules for sysmon and its subcomponents
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 23-Apr-2015  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:39:00 +0000
 1.1.2.2 06-Jun-2015  skrll Sync with HEAD
 1.1.2.1 23-Apr-2015  skrll file Makefile was added on branch nick-nhusb on 2015-06-06 14:40:24 +0000
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 23-Apr-2015  pgoyette branches: 1.1.2; 1.1.18; 1.1.22;
Build modules for sysmon and its subcomponents
 1.1.22.1 10-Jun-2019  christos Sync with HEAD
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 23-Apr-2015  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:39:00 +0000
 1.1.2.2 06-Jun-2015  skrll Sync with HEAD
 1.1.2.1 23-Apr-2015  skrll file Makefile was added on branch nick-nhusb on 2015-06-06 14:40:24 +0000
 1.1 23-Apr-2015  pgoyette branches: 1.1.2; 1.1.18;
Build modules for sysmon and its subcomponents
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 23-Apr-2015  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:39:00 +0000
 1.1.2.2 06-Jun-2015  skrll Sync with HEAD
 1.1.2.1 23-Apr-2015  skrll file Makefile was added on branch nick-nhusb on 2015-06-06 14:40:24 +0000
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 23-Apr-2015  pgoyette branches: 1.1.2; 1.1.18; 1.1.22;
Build modules for sysmon and its subcomponents
 1.1.22.1 10-Jun-2019  christos Sync with HEAD
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 23-Apr-2015  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:39:00 +0000
 1.1.2.2 06-Jun-2015  skrll Sync with HEAD
 1.1.2.1 23-Apr-2015  skrll file Makefile was added on branch nick-nhusb on 2015-06-06 14:40:24 +0000
 1.1 23-Apr-2015  pgoyette branches: 1.1.2; 1.1.18;
Build modules for sysmon and its subcomponents
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 23-Apr-2015  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:39:00 +0000
 1.1.2.2 06-Jun-2015  skrll Sync with HEAD
 1.1.2.1 23-Apr-2015  skrll file Makefile was added on branch nick-nhusb on 2015-06-06 14:40:24 +0000
 1.5 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.4 27-Jan-2019  pgoyette Merge the [pgoyette-compat] branch
 1.3 03-Nov-2016  riastradh branches: 1.3.14; 1.3.16; 1.3.18;
Reorganize SRCS lists for libcompat, compat.kmod, sysv_ipc.kmod.

- Share lists between the libcompat and module makefiles.
- Include some omitted entries in compat.kmod:
. if_43.c
. kern_sa_60.c
. kern_time_30.c
. rndpseudo_50.c
. rtsock_14.c
. rtsock_50.c
. rtsock_70.c
. uipc_syscalls_40.c
. uipc_syscalls_50.c
- Exclude a (harmless) spurious entry in sysv_ipc.kmod on LP64 systems:
. kern_ipc_10.c

Should fix broken ifconfig on modular current kernels.

ok pgoyette
 1.2 03-Dec-2015  pgoyette branches: 1.2.2;
Merge the compat_sysv module into the sysv_ipc module - it should
never have been a separate module in the first place (my bad).

Adjust dependencies as appropriate.
 1.1 13-May-2015  pgoyette branches: 1.1.2;
Create a new sysv_ipc module to contain the SYSVSHM, SYSVSEM, and
SYSVMSG options. Move associated variables out of param.c and into
the module's source file.
 1.1.2.4 05-Dec-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-Jun-2015  skrll Sync with HEAD
 1.1.2.1 13-May-2015  skrll file Makefile was added on branch nick-nhusb on 2015-06-06 14:40:24 +0000
 1.2.2.1 04-Nov-2016  pgoyette Sync with HEAD
 1.3.18.1 10-Jun-2019  christos Sync with HEAD
 1.3.16.1 09-Mar-2018  pgoyette Split the sysv_ipc module into two pieces: one for contemporary
SYSV* functionality, and one for compatability with previous NetBSD
versions. No need to pull in all of compat just to have a sysv_ipc
module.
 1.3.14.2 03-Dec-2017  jdolecek update from HEAD
 1.3.14.1 03-Nov-2016  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:39:00 +0000
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 05-Jan-2009  pooka branches: 1.1.2; 1.1.4; 1.1.8; 1.1.72;
sysvbfs module
 1.1.72.1 10-Jun-2019  christos Sync with HEAD
 1.1.8.2 04-May-2009  yamt sync with head.
 1.1.8.1 05-Jan-2009  yamt file Makefile was added on branch yamt-nfs-mp on 2009-05-04 08:14:13 +0000
 1.1.4.2 19-Jan-2009  skrll Sync with HEAD.
 1.1.4.1 05-Jan-2009  skrll file Makefile was added on branch nick-hppapmap on 2009-01-19 13:20:10 +0000
 1.1.2.2 17-Jan-2009  mjf Sync with HEAD.
 1.1.2.1 05-Jan-2009  mjf file Makefile was added on branch mjf-devfs2 on 2009-01-17 13:29:30 +0000
 1.1 24-Mar-2019  pgoyette branches: 1.1.4;
Add a loadable module for tap(4).

The code was already modularized, we simply didn't build the loadable
module.

Note also that since the tap(4) device can be reasonably accessed by
either creating a device instance (using ifconfig(8)) or by opening
/dev/tap, we need to create both if_tap.kmod and tap.kmod (similar to
what is done with tun(4)).
 1.1.4.2 10-Jun-2019  christos Sync with HEAD
 1.1.4.1 24-Mar-2019  christos file Makefile was added on branch phil-wifi on 2019-06-10 22:09:40 +0000
 1.1 24-Mar-2019  pgoyette branches: 1.1.4;
Add a loadable module for tap(4).

The code was already modularized, we simply didn't build the loadable
module.

Note also that since the tap(4) device can be reasonably accessed by
either creating a device instance (using ifconfig(8)) or by opening
/dev/tap, we need to create both if_tap.kmod and tap.kmod (similar to
what is done with tun(4)).
 1.1.4.2 10-Jun-2019  christos Sync with HEAD
 1.1.4.1 24-Mar-2019  christos file tap.c was added on branch phil-wifi on 2019-06-10 22:09:40 +0000
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 03-May-2015  pgoyette branches: 1.1.2; 1.1.18; 1.1.22;
Build the tco watchdog module
 1.1.22.1 10-Jun-2019  christos Sync with HEAD
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 03-May-2015  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:39:00 +0000
 1.1.2.2 06-Jun-2015  skrll Sync with HEAD
 1.1.2.1 03-May-2015  skrll file Makefile was added on branch nick-nhusb on 2015-06-06 14:40:25 +0000
 1.1 03-May-2015  pgoyette branches: 1.1.2; 1.1.18;
Build the tco watchdog module
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 03-May-2015  jdolecek file tco.ioconf was added on branch tls-maxphys on 2017-12-03 11:39:00 +0000
 1.1.2.2 06-Jun-2015  skrll Sync with HEAD
 1.1.2.1 03-May-2015  skrll file tco.ioconf was added on branch nick-nhusb on 2015-06-06 14:40:25 +0000
 1.1 28-Aug-2011  jmcneill add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules
 1.1 28-Aug-2011  jmcneill add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules
 1.4 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.3 16-Feb-2011  jruoho branches: 1.3.56;
Use ioconf for the module declarations.
 1.2 25-Oct-2010  jruoho branches: 1.2.2; 1.2.4;
Bump WARNS to 4.
 1.1 28-Feb-2010  jruoho branches: 1.1.2; 1.1.4; 1.1.6;
Add makefiles for a sample of ACPI kernel modules.
 1.1.6.3 06-Nov-2010  uebayasi Sync with HEAD.
 1.1.6.2 30-Apr-2010  uebayasi Sync with HEAD.
 1.1.6.1 28-Feb-2010  uebayasi file Makefile was added on branch uebayasi-xip on 2010-04-30 14:44:18 +0000
 1.1.4.1 05-Mar-2011  rmind sync with head
 1.1.2.2 11-Mar-2010  yamt sync with head
 1.1.2.1 28-Feb-2010  yamt file Makefile was added on branch yamt-nfs-mp on 2010-03-11 15:04:26 +0000
 1.2.4.1 17-Feb-2011  bouyer Sync with HEAD
 1.2.2.1 06-Jun-2011  jruoho Sync with HEAD.
 1.3.56.1 10-Jun-2019  christos Sync with HEAD
 1.1 16-Feb-2011  jruoho branches: 1.1.2; 1.1.4; 1.1.8;
Use ioconf for the module declarations.
 1.1.8.2 06-Jun-2011  jruoho Sync with HEAD.
 1.1.8.1 16-Feb-2011  jruoho file thinkpad.ioconf was added on branch jruoho-x86intr on 2011-06-06 09:09:50 +0000
 1.1.4.2 05-Mar-2011  rmind sync with head
 1.1.4.1 16-Feb-2011  rmind file thinkpad.ioconf was added on branch rmind-uvmplock on 2011-03-05 20:55:48 +0000
 1.1.2.2 17-Feb-2011  bouyer Sync with HEAD
 1.1.2.1 16-Feb-2011  bouyer file thinkpad.ioconf was added on branch bouyer-quota2 on 2011-02-17 12:00:48 +0000
 1.4 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.3 10-May-2012  riastradh branches: 1.3.40;
Update ffs, ext2fs, and tmpfs module makefiles to add *_rename.c.

ok martin
 1.2 22-Jun-2010  rmind branches: 1.2.8; 1.2.12;
Replace tmpfs_pool custom allocator code with a simpler layer for memory
accounting. Use wired memory (which can be limited) for meta-data, and
kmem(9) for string allocations.

Close PR/31944. Fix PR/38361 while here. OK ad@.
 1.1 28-Jun-2008  rumble branches: 1.1.2; 1.1.4; 1.1.8; 1.1.20; 1.1.24; 1.1.26;
Add of bunch of file system modules.
 1.1.26.1 03-Jul-2010  rmind sync with head
 1.1.24.1 17-Aug-2010  uebayasi Sync with HEAD.
 1.1.20.3 11-Aug-2010  yamt sync with head.
 1.1.20.2 04-May-2009  yamt sync with head.
 1.1.20.1 28-Jun-2008  yamt file Makefile was added on branch yamt-nfs-mp on 2009-05-04 08:14:13 +0000
 1.1.8.2 18-Sep-2008  wrstuden Sync with wrstuden-revivesa-base-2.
 1.1.8.1 28-Jun-2008  wrstuden file Makefile was added on branch wrstuden-revivesa on 2008-09-18 04:36:59 +0000
 1.1.4.2 03-Jul-2008  simonb Sync with head.
 1.1.4.1 28-Jun-2008  simonb file Makefile was added on branch simonb-wapbl on 2008-07-03 18:38:20 +0000
 1.1.2.2 29-Jun-2008  mjf Sync with HEAD.
 1.1.2.1 28-Jun-2008  mjf file Makefile was added on branch mjf-devfs2 on 2008-06-29 09:33:17 +0000
 1.2.12.1 02-Jun-2012  mrg sync to latest -current.
 1.2.8.1 23-May-2012  yamt sync with head.
 1.3.40.1 10-Jun-2019  christos Sync with HEAD
 1.3 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.2 20-Aug-2015  christos branches: 1.2.18;
Add ioconf entries to the pseudo-devices.
 1.1 10-Mar-2009  yamt branches: 1.1.2; 1.1.4; 1.1.6; 1.1.28; 1.1.46;
add makefiles for tprof drivers.
 1.1.46.1 22-Sep-2015  skrll Sync with HEAD
 1.1.28.1 03-Dec-2017  jdolecek update from HEAD
 1.1.6.2 13-May-2009  jym Sync with HEAD.

Commit is split, to avoid a "too many arguments" protocol error.
 1.1.6.1 10-Mar-2009  jym file Makefile was added on branch jym-xensuspend on 2009-05-13 17:22:19 +0000
 1.1.4.2 04-May-2009  yamt sync with head.
 1.1.4.1 10-Mar-2009  yamt file Makefile was added on branch yamt-nfs-mp on 2009-05-04 08:14:13 +0000
 1.1.2.2 28-Apr-2009  skrll Sync with HEAD.
 1.1.2.1 10-Mar-2009  skrll file Makefile was added on branch nick-hppapmap on 2009-04-28 07:37:16 +0000
 1.2.18.1 10-Jun-2019  christos Sync with HEAD
 1.1 20-Aug-2015  christos branches: 1.1.2; 1.1.18;
Add ioconf entries to the pseudo-devices.
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 20-Aug-2015  jdolecek file tprof.ioconf was added on branch tls-maxphys on 2017-12-03 11:39:00 +0000
 1.1.2.2 22-Sep-2015  skrll Sync with HEAD
 1.1.2.1 20-Aug-2015  skrll file tprof.ioconf was added on branch nick-nhusb on 2015-09-22 12:06:10 +0000
 1.1 24-Jul-2018  maxv branches: 1.1.2; 1.1.6;
Merge the tprof_pmi and tprof_amdpmi modules into a single tprof_x86
module.
 1.1.6.2 10-Jun-2019  christos Sync with HEAD
 1.1.6.1 24-Jul-2018  christos file Makefile was added on branch phil-wifi on 2019-06-10 22:09:41 +0000
 1.1.2.2 28-Jul-2018  pgoyette Sync with HEAD
 1.1.2.1 24-Jul-2018  pgoyette file Makefile was added on branch pgoyette-compat on 2018-07-28 04:38:09 +0000
 1.2 10-Sep-2016  pgoyette branches: 1.2.2; 1.2.4; 1.2.18;
Move tun.c into the module's own directory, since it is specific to the
module subsystem.
 1.1 10-Sep-2016  pgoyette Add a dummy "tun" module, whose only job is to trigger an autoload of
required module "if_tun". This allows access to /dev/tunN to autload
the require interface module.

XXX There's might be a better place/name for net/tun.c
 1.2.18.2 03-Dec-2017  jdolecek update from HEAD
 1.2.18.1 10-Sep-2016  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:39:00 +0000
 1.2.4.2 05-Oct-2016  skrll Sync with HEAD
 1.2.4.1 10-Sep-2016  skrll file Makefile was added on branch nick-nhusb on 2016-10-05 20:56:07 +0000
 1.2.2.2 14-Sep-2016  pgoyette Sync with HEAD
 1.2.2.1 10-Sep-2016  pgoyette file Makefile was added on branch pgoyette-localcount on 2016-09-14 03:04:19 +0000
 1.1 10-Sep-2016  pgoyette branches: 1.1.2; 1.1.4; 1.1.18;
Move tun.c into the module's own directory, since it is specific to the
module subsystem.
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 10-Sep-2016  jdolecek file tun.c was added on branch tls-maxphys on 2017-12-03 11:39:00 +0000
 1.1.4.2 05-Oct-2016  skrll Sync with HEAD
 1.1.4.1 10-Sep-2016  skrll file tun.c was added on branch nick-nhusb on 2016-10-05 20:56:07 +0000
 1.1.2.2 14-Sep-2016  pgoyette Sync with HEAD
 1.1.2.1 10-Sep-2016  pgoyette file tun.c was added on branch pgoyette-localcount on 2016-09-14 03:04:19 +0000
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 14-Jul-2011  jmcneill branches: 1.1.54;
module glue for nxt2k, tvpll, cxdtv
 1.1.54.1 10-Jun-2019  christos Sync with HEAD
 1.2 21-Oct-2025  pgoyette Add WARNS=3 as needed for -Wsign-compare issues
 1.1 27-Sep-2016  pgoyette branches: 1.1.2; 1.1.4; 1.1.18;
Add module build infrastructure for ld and its attachments
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 27-Sep-2016  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:39:00 +0000
 1.1.4.2 04-Nov-2016  pgoyette Sync with HEAD
 1.1.4.1 27-Sep-2016  pgoyette file Makefile was added on branch pgoyette-localcount on 2016-11-04 14:49:20 +0000
 1.1.2.2 05-Oct-2016  skrll Sync with HEAD
 1.1.2.1 27-Sep-2016  skrll file Makefile was added on branch nick-nhusb on 2016-10-05 20:56:07 +0000
 1.1 27-Sep-2016  pgoyette branches: 1.1.2; 1.1.4; 1.1.18;
Add module build infrastructure for ld and its attachments
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 27-Sep-2016  jdolecek file twa.ioconf was added on branch tls-maxphys on 2017-12-03 11:39:00 +0000
 1.1.4.2 04-Nov-2016  pgoyette Sync with HEAD
 1.1.4.1 27-Sep-2016  pgoyette file twa.ioconf was added on branch pgoyette-localcount on 2016-11-04 14:49:20 +0000
 1.1.2.2 05-Oct-2016  skrll Sync with HEAD
 1.1.2.1 27-Sep-2016  skrll file twa.ioconf was added on branch nick-nhusb on 2016-10-05 20:56:07 +0000
 1.1 27-Sep-2016  pgoyette branches: 1.1.2; 1.1.4; 1.1.18;
Add module build infrastructure for ld and its attachments
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 27-Sep-2016  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:39:01 +0000
 1.1.4.2 04-Nov-2016  pgoyette Sync with HEAD
 1.1.4.1 27-Sep-2016  pgoyette file Makefile was added on branch pgoyette-localcount on 2016-11-04 14:49:20 +0000
 1.1.2.2 05-Oct-2016  skrll Sync with HEAD
 1.1.2.1 27-Sep-2016  skrll file Makefile was added on branch nick-nhusb on 2016-10-05 20:56:08 +0000
 1.1 27-Sep-2016  pgoyette branches: 1.1.2; 1.1.4; 1.1.18;
Add module build infrastructure for ld and its attachments
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 27-Sep-2016  jdolecek file twe.ioconf was added on branch tls-maxphys on 2017-12-03 11:39:01 +0000
 1.1.4.2 04-Nov-2016  pgoyette Sync with HEAD
 1.1.4.1 27-Sep-2016  pgoyette file twe.ioconf was added on branch pgoyette-localcount on 2016-11-04 14:49:20 +0000
 1.1.2.2 05-Oct-2016  skrll Sync with HEAD
 1.1.2.1 27-Sep-2016  skrll file twe.ioconf was added on branch nick-nhusb on 2016-10-05 20:56:08 +0000
 1.1 19-Apr-2017  riastradh branches: 1.1.2; 1.1.4; 1.1.12; 1.1.16;
Modularize ualea(4).

Unclear why we have a separate xyz.ioconf for module and XYZ.ioconf
for rump component, but at least xyz_modcmd obviates the need for
xyz_component.c (though evidently the latter could have been replaced
anyway by RUMP_COMPONENT=ioconf in the rump component Makefile).
 1.1.16.2 03-Dec-2017  jdolecek update from HEAD
 1.1.16.1 19-Apr-2017  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:39:01 +0000
 1.1.12.2 28-Aug-2017  skrll Sync with HEAD
 1.1.12.1 19-Apr-2017  skrll file Makefile was added on branch nick-nhusb on 2017-08-28 17:53:11 +0000
 1.1.4.2 26-Apr-2017  pgoyette Sync with HEAD
 1.1.4.1 19-Apr-2017  pgoyette file Makefile was added on branch pgoyette-localcount on 2017-04-26 02:53:28 +0000
 1.1.2.2 19-Apr-2017  riastradh 982139
 1.1.2.1 19-Apr-2017  riastradh file Makefile was added on branch bouyer-socketcan on 2017-04-19 00:01:39 +0000
 1.1 19-Apr-2017  riastradh branches: 1.1.2; 1.1.4; 1.1.12; 1.1.16;
Modularize ualea(4).

Unclear why we have a separate xyz.ioconf for module and XYZ.ioconf
for rump component, but at least xyz_modcmd obviates the need for
xyz_component.c (though evidently the latter could have been replaced
anyway by RUMP_COMPONENT=ioconf in the rump component Makefile).
 1.1.16.2 03-Dec-2017  jdolecek update from HEAD
 1.1.16.1 19-Apr-2017  jdolecek file ualea.ioconf was added on branch tls-maxphys on 2017-12-03 11:39:01 +0000
 1.1.12.2 28-Aug-2017  skrll Sync with HEAD
 1.1.12.1 19-Apr-2017  skrll file ualea.ioconf was added on branch nick-nhusb on 2017-08-28 17:53:11 +0000
 1.1.4.2 26-Apr-2017  pgoyette Sync with HEAD
 1.1.4.1 19-Apr-2017  pgoyette file ualea.ioconf was added on branch pgoyette-localcount on 2017-04-26 02:53:28 +0000
 1.1.2.2 19-Apr-2017  riastradh 982139
 1.1.2.1 19-Apr-2017  riastradh file ualea.ioconf was added on branch bouyer-socketcan on 2017-04-19 00:01:39 +0000
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 04-Aug-2012  riastradh branches: 1.1.4; 1.1.42;
Add a module for uatp(4).
 1.1.42.1 10-Jun-2019  christos Sync with HEAD
 1.1.4.2 30-Oct-2012  yamt sync with head
 1.1.4.1 04-Aug-2012  yamt file Makefile was added on branch yamt-pagecache on 2012-10-30 17:22:42 +0000
 1.2 17-Jul-2014  riastradh Fix wsmouse at uatp attachment for module.
 1.1 04-Aug-2012  riastradh branches: 1.1.2; 1.1.4; 1.1.14;
Add a module for uatp(4).
 1.1.14.1 10-Aug-2014  tls Rebase.
 1.1.4.2 30-Oct-2012  yamt sync with head
 1.1.4.1 04-Aug-2012  yamt file uatp.ioconf was added on branch yamt-pagecache on 2012-10-30 17:22:42 +0000
 1.1.2.1 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.1 28-Jun-2008  kent branches: 1.1.2; 1.1.4; 1.1.8; 1.1.20;
Make uaudio compilable as a kmod.

XXX:
"modload uaudio.kmod" doesn't attach the uaudio driver to
plugged USB devices for now because uhub_rescan() is not
implemented yet. We need to re-plug USB devices after modload.
 1.1.20.2 04-May-2009  yamt sync with head.
 1.1.20.1 28-Jun-2008  yamt file Makefile was added on branch yamt-nfs-mp on 2009-05-04 08:14:13 +0000
 1.1.8.2 18-Sep-2008  wrstuden Sync with wrstuden-revivesa-base-2.
 1.1.8.1 28-Jun-2008  wrstuden file Makefile was added on branch wrstuden-revivesa on 2008-09-18 04:36:59 +0000
 1.1.4.2 03-Jul-2008  simonb Sync with head.
 1.1.4.1 28-Jun-2008  simonb file Makefile was added on branch simonb-wapbl on 2008-07-03 18:38:20 +0000
 1.1.2.2 29-Jun-2008  mjf Sync with HEAD.
 1.1.2.1 28-Jun-2008  mjf file Makefile was added on branch mjf-devfs2 on 2008-06-29 09:33:17 +0000
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 17-Nov-2013  bad branches: 1.1.4; 1.1.6; 1.1.10; 1.1.36;
Make ubsec(4) loadable as kmod.
 1.1.36.1 10-Jun-2019  christos Sync with HEAD
 1.1.10.2 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.1.10.1 17-Nov-2013  tls file Makefile was added on branch tls-maxphys on 2014-08-20 00:04:34 +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 17-Nov-2013  yamt file Makefile was added on branch yamt-pagecache on 2014-05-22 11:41:08 +0000
 1.1.4.2 18-May-2014  rmind sync with head
 1.1.4.1 17-Nov-2013  rmind file Makefile was added on branch rmind-smpnet on 2014-05-18 17:46:12 +0000
 1.1 17-Nov-2013  bad branches: 1.1.4; 1.1.6; 1.1.10;
Make ubsec(4) loadable as kmod.
 1.1.10.2 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.1.10.1 17-Nov-2013  tls file ubsec.ioconf was added on branch tls-maxphys on 2014-08-20 00:04:34 +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 17-Nov-2013  yamt file ubsec.ioconf was added on branch yamt-pagecache on 2014-05-22 11:41:08 +0000
 1.1.4.2 18-May-2014  rmind sync with head
 1.1.4.1 17-Nov-2013  rmind file ubsec.ioconf was added on branch rmind-smpnet on 2014-05-18 17:46:12 +0000
 1.8 03-Jun-2023  lukem bsd.own.mk: rename to CC_WNO_ADDRESS_OF_PACKED_MEMBER

Provide a single variable
CC_WNO_ADDRESS_OF_PACKED_MEMBER
with options for both clang and gcc, to replace
CLANG_NO_ADDR_OF_PACKED_MEMBER
CC_NO_ADDR_OF_PACKED_MEMBER
GCC_NO_ADDR_OF_PACKED_MEMBER

Using the convention CC_compilerflag, where compilerflag
is based on the full compiler flag name.
 1.7 29-May-2023  lukem bsd.own.mk: rename NO_ADDR_OF_PACKED_MEMBER to CC_NO_ADDR_OF_PACKED_MEMBER

Add "CC_" prefix to NO_ADDR_OF_PACKED_MEMBER.

We now have the following convention:
GCC_NO_*: Disable specific warnings from GCC.
CLANG_NO_*: Disable specific warnings from Clang.
CC_NO_*: Disable specific warnings from both Clang and GCC.

This reserves "NO_*" Makefile variables to disable other features.

Some space->tab fixes.
 1.6 18-Oct-2020  christos Provide a global no-packed-address for both gcc and clang
 1.5 06-Sep-2020  mrg add support for new GCC 9 warnings that may be too much to fix
right now. new address-of-packed-member and format-overflow
warnings have new GCC_NO_ADDR_OF_PACKED_MEMBER amd
GCC_NO_FORMAT_OVERFLOW variables to remove these warnings.

apply to a bunch of the tree. mostly, these are real bugs that
should be fixed, but in many cases, only by removing the 'packed'
attribute from some structure that doesn't really need it. (i
looked at many different ones, and while perhaps 60-80% were
already properly aligned, it wasn't clear to me that the uses
were always coming from sane data vs network alignment, so it
doesn't seem safe to remove packed without careful research for
each affect struct.) clang already warned (and was not erroring)
for many of these cases, but gcc picked up dozens more.
 1.4 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.3 10-Jul-2013  reinoud branches: 1.3.32;
Add udf_rename.c to the UDF module make
 1.2 26-May-2011  joerg branches: 1.2.4; 1.2.14; 1.2.18;
Default to -Wno-sign-compare -Wno-pointer-sign for clang.
Push -Wno-array-bounds down to the cases that depend on it.
Selectively disable warnings for 3rd party software or non-trivial
issues to be reviewed later to get clang -Werror to build most of the
tree.
 1.1 28-Jun-2008  rumble branches: 1.1.2; 1.1.4; 1.1.8; 1.1.20; 1.1.26; 1.1.32;
Add of bunch of file system modules.
 1.1.32.1 06-Jun-2011  jruoho Sync with HEAD.
 1.1.26.1 31-May-2011  rmind sync with head
 1.1.20.2 04-May-2009  yamt sync with head.
 1.1.20.1 28-Jun-2008  yamt file Makefile was added on branch yamt-nfs-mp on 2009-05-04 08:14:13 +0000
 1.1.8.2 18-Sep-2008  wrstuden Sync with wrstuden-revivesa-base-2.
 1.1.8.1 28-Jun-2008  wrstuden file Makefile was added on branch wrstuden-revivesa on 2008-09-18 04:36:59 +0000
 1.1.4.2 03-Jul-2008  simonb Sync with head.
 1.1.4.1 28-Jun-2008  simonb file Makefile was added on branch simonb-wapbl on 2008-07-03 18:38:20 +0000
 1.1.2.2 29-Jun-2008  mjf Sync with HEAD.
 1.1.2.1 28-Jun-2008  mjf file Makefile was added on branch mjf-devfs2 on 2008-06-29 09:33:18 +0000
 1.2.18.1 28-Aug-2013  rmind sync with head
 1.2.14.1 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.2.4.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.3.32.1 10-Jun-2019  christos Sync with HEAD
 1.10 22-May-2024  pgoyette Remove some more accidental local changes
 1.9 20-May-2024  pgoyette Oooppss remove some local change that was accidentally committed
 1.8 09-Aug-2022  pgoyette Now that UFS_DIRHASH is default for biuilt-in file system modules, we
need to update the loadable module builds, too.
 1.7 08-Jan-2022  pgoyette Use += for SRCS list
 1.6 06-Jan-2022  pgoyette Fix previous and actually disable UFS_DIRHASH
 1.5 06-Jan-2022  pgoyette Since UFS_DIRHASH is explicitly disabled in GENERIC kernels (due to
being suspected of memory corruption), it should not be enabled in
the default module configurations either.
 1.4 16-May-2020  christos Add ACL support for FFS. From FreeBSD.
 1.3 12-Apr-2020  htodd branches: 1.3.2;
Remove ufs_wapbl.c from Makefile.
 1.2 19-Aug-2019  christos branches: 1.2.6;
Enable extended attributes in modules.
 1.1 20-Jun-2019  pgoyette Split the ufs code out of the ffs module and into its own module.

Adapt chfs and ext2fs modules accordingly.
 1.2.6.1 20-Apr-2020  bouyer Sync with HEAD
 1.3.2.3 21-Apr-2020  martin Sync with HEAD
 1.3.2.2 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.3.2.1 12-Apr-2020  martin file Makefile was added on branch phil-wifi on 2020-04-13 08:05:14 +0000
 1.3 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.2 26-May-2011  joerg branches: 1.2.56;
Default to -Wno-sign-compare -Wno-pointer-sign for clang.
Push -Wno-array-bounds down to the cases that depend on it.
Selectively disable warnings for 3rd party software or non-trivial
issues to be reviewed later to get clang -Werror to build most of the
tree.
 1.1 24-Nov-2008  ad branches: 1.1.4; 1.1.6; 1.1.10; 1.1.14; 1.1.16;
Rename some modules to match their vfs name.
 1.1.16.1 06-Jun-2011  jruoho Sync with HEAD.
 1.1.14.1 31-May-2011  rmind sync with head
 1.1.10.2 04-May-2009  yamt sync with head.
 1.1.10.1 24-Nov-2008  yamt file Makefile was added on branch yamt-nfs-mp on 2009-05-04 08:14:13 +0000
 1.1.6.2 19-Jan-2009  skrll Sync with HEAD.
 1.1.6.1 24-Nov-2008  skrll file Makefile was added on branch nick-hppapmap on 2009-01-19 13:20:10 +0000
 1.1.4.2 17-Jan-2009  mjf Sync with HEAD.
 1.1.4.1 24-Nov-2008  mjf file Makefile was added on branch mjf-devfs2 on 2009-01-17 13:29:30 +0000
 1.2.56.1 10-Jun-2019  christos Sync with HEAD
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 28-Jun-2008  rumble branches: 1.1.2; 1.1.4; 1.1.8; 1.1.20; 1.1.92;
Add of bunch of file system modules.
 1.1.92.1 10-Jun-2019  christos Sync with HEAD
 1.1.20.2 04-May-2009  yamt sync with head.
 1.1.20.1 28-Jun-2008  yamt file Makefile was added on branch yamt-nfs-mp on 2009-05-04 08:14:14 +0000
 1.1.8.2 18-Sep-2008  wrstuden Sync with wrstuden-revivesa-base-2.
 1.1.8.1 28-Jun-2008  wrstuden file Makefile was added on branch wrstuden-revivesa on 2008-09-18 04:36:59 +0000
 1.1.4.2 03-Jul-2008  simonb Sync with head.
 1.1.4.1 28-Jun-2008  simonb file Makefile was added on branch simonb-wapbl on 2008-07-03 18:38:20 +0000
 1.1.2.2 29-Jun-2008  mjf Sync with HEAD.
 1.1.2.1 28-Jun-2008  mjf file Makefile was added on branch mjf-devfs2 on 2008-06-29 09:33:18 +0000
 1.1 28-Jun-2008  rumble branches: 1.1.2; 1.1.4; 1.1.8; 1.1.20;
Add of bunch of file system modules.
 1.1.20.2 04-May-2009  yamt sync with head.
 1.1.20.1 28-Jun-2008  yamt file Makefile was added on branch yamt-nfs-mp on 2009-05-04 08:14:14 +0000
 1.1.8.2 18-Sep-2008  wrstuden Sync with wrstuden-revivesa-base-2.
 1.1.8.1 28-Jun-2008  wrstuden file Makefile was added on branch wrstuden-revivesa on 2008-09-18 04:36:59 +0000
 1.1.4.2 03-Jul-2008  simonb Sync with head.
 1.1.4.1 28-Jun-2008  simonb file Makefile was added on branch simonb-wapbl on 2008-07-03 18:38:20 +0000
 1.1.2.2 29-Jun-2008  mjf Sync with HEAD.
 1.1.2.1 28-Jun-2008  mjf file Makefile was added on branch mjf-devfs2 on 2008-06-29 09:33:18 +0000
 1.1 31-Jul-2019  mrg branches: 1.1.2; 1.1.10;
introduce a library of common code / backends to share code between
USB ethernet drivers.

usbnet.h introduces a new set of APIs to provide common solutions
for these driver features:
- USB endpoint pipe handling
- rx and tx chain handling
- generic handlers or support for several struct ifnet callbacks
- MII bus locking
- interrupt handling
- partial autoconf handling: much of attach, and detach/activate
can use common versions directly.

currently, only axen(4) and cdce(4) are converted. the reductions
in these drivers are quite significant: if_cdce.c is reduced from
1000 lines to 320 lines, and if_axen is reduced from 1902 lines
to 1021 lines.

add a "usbnet" module and make the if_axen module depend upon it.
 1.1.10.2 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.1.10.1 31-Jul-2019  martin file Makefile was added on branch phil-wifi on 2020-04-13 08:05:14 +0000
 1.1.2.2 01-Sep-2019  martin Pull up following revision(s) (requested by mrg in ticket #135):

distrib/sets/lists/comp/mi 1.2279
distrib/sets/lists/modules/mi 1.123
share/man/man9/Makefile 1.438
share/man/man9/usbnet.9 1.1-1.9
sys/dev/ic/rndisreg.h 1.3
sys/dev/usb/TODO 1.47-1.52
sys/dev/usb/TODO.usbmp 1.15,1.16
sys/dev/usb/files.usb 1.157-1.167
sys/dev/usb/if_aue.c 1.155-1.161
sys/dev/usb/if_auereg.h 1.30-1.32
sys/dev/usb/if_axe.c 1.103-1.119
sys/dev/usb/if_axen.c 1.51-1.53,1.55-1.67
sys/dev/usb/if_axenreg.h 1.15
sys/dev/usb/if_cdce.c 1.54-1.67
sys/dev/usb/if_cue.c 1.85,1.86
sys/dev/usb/if_cuereg.h 1.23
sys/dev/usb/if_kue.c 1.97-1.100
sys/dev/usb/if_kuereg.h 1.23,1.24
sys/dev/usb/if_mue.c 1.51-1.55
sys/dev/usb/if_muereg.h 1.6
sys/dev/usb/if_muevar.h 1.9
sys/dev/usb/if_smsc.c 1.46-1.61
sys/dev/usb/if_smscreg.h 1.6
sys/dev/usb/if_smscvar.h delete
sys/dev/usb/if_udav.c 1.60-1.71
sys/dev/usb/if_udavreg.h 1.14,1.15
sys/dev/usb/if_upl.c 1.65,1.66
sys/dev/usb/if_ure.c 1.15-1.31
sys/dev/usb/if_urevar.h 1.4,1.5
sys/dev/usb/if_url.c 1.67-1.70
sys/dev/usb/if_urlreg.h 1.14
sys/dev/usb/if_urndis.c 1.22-1.33
sys/dev/usb/if_urtwn.c 1.72
sys/dev/usb/ohci.c 1.290
sys/dev/usb/uhub.c 1.143
sys/dev/usb/usb.c 1.180
sys/dev/usb/usb.h 1.118
sys/dev/usb/usb_mem.c 1.71
sys/dev/usb/usb_subr.c 1.238,1.239
sys/dev/usb/usbdevs 1.772
sys/dev/usb/usbdi.c 1.183,1.186
sys/dev/usb/usbdi.h 1.97
sys/dev/usb/usbdi_util.c 1.75
sys/dev/usb/usbhist.h 1.5,1.6
sys/dev/usb/usbnet.c 1.1-1.24
sys/dev/usb/usbnet.h 1.1-1.14
sys/dev/usb/usbroothub.c 1.9
sys/dev/usb/xhci.c 1.109,1.110
sys/modules/Makefile 1.223
sys/modules/usbnet/Makefile 1.1

usbnet(9): Add common framework for USB network devices.
This bring various safety fixes to all updated drivers,
and includes locking clean up, detach safety when being
used or not, separate rx/tx locks to improve performance,
porting to NET_MPSAFE, many edge/error case bugs in
drivers fixed, as well as resovling PRs 54303 and 54308.
These drivers are converted: axe(4), axen(4), aue(4),
cdce(4), cue(4), kue(4), mue(4), smsc(4), udav(4),
upl(4), ure(4), url(4), and urndis(4).
 1.1.2.1 31-Jul-2019  martin file Makefile was added on branch netbsd-9 on 2019-09-01 13:00:37 +0000
 1.1 29-May-2010  pgoyette branches: 1.1.2; 1.1.4; 1.1.6;
Extract USBVERBOSE into a kernel module. The module can be builtin
by defining 'options USBVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not USB support
exists.
 1.1.6.2 17-Aug-2010  uebayasi Sync with HEAD.
 1.1.6.1 29-May-2010  uebayasi file Makefile was added on branch uebayasi-xip on 2010-08-17 06:47:43 +0000
 1.1.4.2 11-Aug-2010  yamt sync with head.
 1.1.4.1 29-May-2010  yamt file Makefile was added on branch yamt-nfs-mp on 2010-08-11 22:54:52 +0000
 1.1.2.2 30-May-2010  rmind sync with head
 1.1.2.1 29-May-2010  rmind file Makefile was added on branch rmind-uvmplock on 2010-05-30 05:18:00 +0000
 1.1 18-Sep-2008  jmcneill branches: 1.1.2; 1.1.4; 1.1.6; 1.1.18;
kmod support for uvideo(4)
 1.1.18.2 04-May-2009  yamt sync with head.
 1.1.18.1 18-Sep-2008  yamt file Makefile was added on branch yamt-nfs-mp on 2009-05-04 08:14:14 +0000
 1.1.6.2 19-Oct-2008  haad Sync with HEAD.
 1.1.6.1 18-Sep-2008  haad file Makefile was added on branch haad-dm on 2008-10-19 22:17:41 +0000
 1.1.4.2 28-Sep-2008  mjf Sync with HEAD.
 1.1.4.1 18-Sep-2008  mjf file Makefile was added on branch mjf-devfs2 on 2008-09-28 10:40:55 +0000
 1.1.2.2 24-Sep-2008  wrstuden Merge in changes between wrstuden-revivesa-base-2 and
wrstuden-revivesa-base-3.
 1.1.2.1 18-Sep-2008  wrstuden file Makefile was added on branch wrstuden-revivesa on 2008-09-24 16:38:57 +0000
 1.5 03-Jun-2023  lukem bsd.own.mk: rename to CC_WNO_ADDRESS_OF_PACKED_MEMBER

Provide a single variable
CC_WNO_ADDRESS_OF_PACKED_MEMBER
with options for both clang and gcc, to replace
CLANG_NO_ADDR_OF_PACKED_MEMBER
CC_NO_ADDR_OF_PACKED_MEMBER
GCC_NO_ADDR_OF_PACKED_MEMBER

Using the convention CC_compilerflag, where compilerflag
is based on the full compiler flag name.
 1.4 29-May-2023  lukem bsd.own.mk: rename NO_ADDR_OF_PACKED_MEMBER to CC_NO_ADDR_OF_PACKED_MEMBER

Add "CC_" prefix to NO_ADDR_OF_PACKED_MEMBER.

We now have the following convention:
GCC_NO_*: Disable specific warnings from GCC.
CLANG_NO_*: Disable specific warnings from Clang.
CC_NO_*: Disable specific warnings from both Clang and GCC.

This reserves "NO_*" Makefile variables to disable other features.

Some space->tab fixes.
 1.3 18-Oct-2020  christos Provide a global no-packed-address for both gcc and clang
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 19-Jul-2011  tron branches: 1.1.54;
Build 7th Edition(V7) File System as a kernel module.
 1.1.54.1 10-Jun-2019  christos Sync with HEAD
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 20-Feb-2011  jmcneill branches: 1.1.2; 1.1.4; 1.1.8; 1.1.62;
add VirtualBox DRM driver
 1.1.62.1 10-Jun-2019  christos Sync with HEAD
 1.1.8.2 06-Jun-2011  jruoho Sync with HEAD.
 1.1.8.1 20-Feb-2011  jruoho file Makefile was added on branch jruoho-x86intr on 2011-06-06 09:09:51 +0000
 1.1.4.2 05-Mar-2011  rmind sync with head
 1.1.4.1 20-Feb-2011  rmind file Makefile was added on branch rmind-uvmplock on 2011-03-05 20:55:48 +0000
 1.1.2.2 05-Mar-2011  bouyer Sync with HEAD
 1.1.2.1 20-Feb-2011  bouyer file Makefile was added on branch bouyer-quota2 on 2011-03-05 15:10:46 +0000
 1.1 20-Feb-2011  jmcneill branches: 1.1.2; 1.1.4; 1.1.8;
add VirtualBox DRM driver
 1.1.8.2 06-Jun-2011  jruoho Sync with HEAD.
 1.1.8.1 20-Feb-2011  jruoho file vboxdrm.ioconf was added on branch jruoho-x86intr on 2011-06-06 09:09:51 +0000
 1.1.4.2 05-Mar-2011  rmind sync with head
 1.1.4.1 20-Feb-2011  rmind file vboxdrm.ioconf was added on branch rmind-uvmplock on 2011-03-05 20:55:48 +0000
 1.1.2.2 05-Mar-2011  bouyer Sync with HEAD
 1.1.2.1 20-Feb-2011  bouyer file vboxdrm.ioconf was added on branch bouyer-quota2 on 2011-03-05 15:10:46 +0000
 1.3 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.2 20-Aug-2015  christos branches: 1.2.18;
Add ioconf entries to the pseudo-devices.
 1.1 26-Apr-2012  christos branches: 1.1.2; 1.1.4; 1.1.18;
split the coda module in a device one, and a vfs one so that it works.
 1.1.18.1 22-Sep-2015  skrll Sync with HEAD
 1.1.4.1 03-Dec-2017  jdolecek update from HEAD
 1.1.2.2 23-May-2012  yamt sync with head.
 1.1.2.1 26-Apr-2012  yamt file Makefile was added on branch yamt-pagecache on 2012-05-23 10:08:15 +0000
 1.2.18.1 10-Jun-2019  christos Sync with HEAD
 1.1 20-Aug-2015  christos branches: 1.1.2; 1.1.18;
Add ioconf entries to the pseudo-devices.
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 20-Aug-2015  jdolecek file vcoda.ioconf was added on branch tls-maxphys on 2017-12-03 11:39:01 +0000
 1.1.2.2 22-Sep-2015  skrll Sync with HEAD
 1.1.2.1 20-Aug-2015  skrll file vcoda.ioconf was added on branch nick-nhusb on 2015-09-22 12:06:10 +0000
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 24-Feb-2011  jruoho branches: 1.1.2; 1.1.4; 1.1.8; 1.1.62;
Build glue for viac7temp(4).
 1.1.62.1 10-Jun-2019  christos Sync with HEAD
 1.1.8.2 06-Jun-2011  jruoho Sync with HEAD.
 1.1.8.1 24-Feb-2011  jruoho file Makefile was added on branch jruoho-x86intr on 2011-06-06 09:09:51 +0000
 1.1.4.2 05-Mar-2011  rmind sync with head
 1.1.4.1 24-Feb-2011  rmind file Makefile was added on branch rmind-uvmplock on 2011-03-05 20:55:49 +0000
 1.1.2.2 05-Mar-2011  bouyer Sync with HEAD
 1.1.2.1 24-Feb-2011  bouyer file Makefile was added on branch bouyer-quota2 on 2011-03-05 15:10:46 +0000
 1.1 24-Feb-2011  jruoho branches: 1.1.2; 1.1.4; 1.1.8;
Build glue for viac7temp(4).
 1.1.8.2 06-Jun-2011  jruoho Sync with HEAD.
 1.1.8.1 24-Feb-2011  jruoho file viac7temp.ioconf was added on branch jruoho-x86intr on 2011-06-06 09:09:51 +0000
 1.1.4.2 05-Mar-2011  rmind sync with head
 1.1.4.1 24-Feb-2011  rmind file viac7temp.ioconf was added on branch rmind-uvmplock on 2011-03-05 20:55:49 +0000
 1.1.2.2 05-Mar-2011  bouyer Sync with HEAD
 1.1.2.1 24-Feb-2011  bouyer file viac7temp.ioconf was added on branch bouyer-quota2 on 2011-03-05 15:10:46 +0000
 1.6 03-Jun-2023  lukem adapt to ${CC_WNO_IMPLICIT_FALLTHROUGH}

Use ${CC_WNO_IMPLICIT_FALLTHROUGH} instead of
the older style more complex expressions.
 1.5 19-Dec-2021  riastradh Fix i386 modules build: viadrmums requires CONFIG_DRM_LEGACY.
 1.4 29-Sep-2019  mrg convert HAVE_GCC == 7 to HAVE_GCC >= 7.
 1.3 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.2 04-Feb-2019  mrg apply -Wno-error=implicit-fallthrough to via_dmablit.c.
 1.1 29-Apr-2015  riastradh branches: 1.1.2; 1.1.18; 1.1.22;
Module for viadrmums.
 1.1.22.2 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.1.22.1 10-Jun-2019  christos Sync with HEAD
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 29-Apr-2015  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:39:01 +0000
 1.1.2.2 06-Jun-2015  skrll Sync with HEAD
 1.1.2.1 29-Apr-2015  skrll file Makefile was added on branch nick-nhusb on 2015-06-06 14:40:25 +0000
 1.2 29-Apr-2015  riastradh branches: 1.2.2; 1.2.18;
Include files.pci to get the necessary definitions in viadrmums.
 1.1 29-Apr-2015  riastradh Module for viadrmums.
 1.2.18.2 03-Dec-2017  jdolecek update from HEAD
 1.2.18.1 29-Apr-2015  jdolecek file viadrmums.ioconf was added on branch tls-maxphys on 2017-12-03 11:39:01 +0000
 1.2.2.2 06-Jun-2015  skrll Sync with HEAD
 1.2.2.1 29-Apr-2015  skrll file viadrmums.ioconf was added on branch nick-nhusb on 2015-06-06 14:40:25 +0000
 1.2 21-Oct-2025  pgoyette Add WARNS=3 as needed for -Wsign-compare issues
 1.1 28-Oct-2019  ozaki-r branches: 1.1.8;
Implement a front-end driver of virtio-9p called vio9p

In conjunction with mount_9p, it enables a NetBSD system running as a VM guest
to mount an exported filesystem by the host via virtio-9p. It exports a 9p
end-point of virtio-9p via a character device file for mount_9p.

Reviewed by yamaguchi@
 1.1.8.2 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.1.8.1 28-Oct-2019  martin file Makefile was added on branch phil-wifi on 2020-04-13 08:05:14 +0000
 1.1 28-Oct-2019  ozaki-r branches: 1.1.8;
Implement a front-end driver of virtio-9p called vio9p

In conjunction with mount_9p, it enables a NetBSD system running as a VM guest
to mount an exported filesystem by the host via virtio-9p. It exports a 9p
end-point of virtio-9p via a character device file for mount_9p.

Reviewed by yamaguchi@
 1.1.8.2 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.1.8.1 28-Oct-2019  martin file vio9p.ioconf was added on branch phil-wifi on 2020-04-13 08:05:14 +0000
 1.2 21-Oct-2025  pgoyette Add WARNS=3 as needed for -Wsign-compare issues
 1.1 27-Sep-2016  pgoyette branches: 1.1.2; 1.1.4; 1.1.18;
Add module build infrastructure for ld and its attachments
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 27-Sep-2016  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:39:01 +0000
 1.1.4.2 04-Nov-2016  pgoyette Sync with HEAD
 1.1.4.1 27-Sep-2016  pgoyette file Makefile was added on branch pgoyette-localcount on 2016-11-04 14:49:20 +0000
 1.1.2.2 05-Oct-2016  skrll Sync with HEAD
 1.1.2.1 27-Sep-2016  skrll file Makefile was added on branch nick-nhusb on 2016-10-05 20:56:08 +0000
 1.1 27-Sep-2016  pgoyette branches: 1.1.2; 1.1.4; 1.1.18;
Add module build infrastructure for ld and its attachments
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 27-Sep-2016  jdolecek file viomb.ioconf was added on branch tls-maxphys on 2017-12-03 11:39:01 +0000
 1.1.4.2 04-Nov-2016  pgoyette Sync with HEAD
 1.1.4.1 27-Sep-2016  pgoyette file viomb.ioconf was added on branch pgoyette-localcount on 2016-11-04 14:49:20 +0000
 1.1.2.2 05-Oct-2016  skrll Sync with HEAD
 1.1.2.1 27-Sep-2016  skrll file viomb.ioconf was added on branch nick-nhusb on 2016-10-05 20:56:08 +0000
 1.2 21-Oct-2025  pgoyette Add WARNS=3 as needed for -Wsign-compare issues
 1.1 25-Mar-2017  jdolecek branches: 1.1.4; 1.1.12; 1.1.16;
add support for loading vioscsi driver dynamically
 1.1.16.2 03-Dec-2017  jdolecek update from HEAD
 1.1.16.1 25-Mar-2017  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:39:01 +0000
 1.1.12.2 28-Aug-2017  skrll Sync with HEAD
 1.1.12.1 25-Mar-2017  skrll file Makefile was added on branch nick-nhusb on 2017-08-28 17:53:11 +0000
 1.1.4.2 26-Apr-2017  pgoyette Sync with HEAD
 1.1.4.1 25-Mar-2017  pgoyette file Makefile was added on branch pgoyette-localcount on 2017-04-26 02:53:28 +0000
 1.1 25-Mar-2017  jdolecek branches: 1.1.4; 1.1.12; 1.1.16;
add support for loading vioscsi driver dynamically
 1.1.16.2 03-Dec-2017  jdolecek update from HEAD
 1.1.16.1 25-Mar-2017  jdolecek file vioscsi.ioconf was added on branch tls-maxphys on 2017-12-03 11:39:01 +0000
 1.1.12.2 28-Aug-2017  skrll Sync with HEAD
 1.1.12.1 25-Mar-2017  skrll file vioscsi.ioconf was added on branch nick-nhusb on 2017-08-28 17:53:11 +0000
 1.1.4.2 26-Apr-2017  pgoyette Sync with HEAD
 1.1.4.1 25-Mar-2017  pgoyette file vioscsi.ioconf was added on branch pgoyette-localcount on 2017-04-26 02:53:28 +0000
 1.3 21-Oct-2025  pgoyette The virtio module needs an IOCONF
 1.2 06-Jun-2018  jakllsch fix up virtio module for current structure; add virtio_pci module
 1.1 27-Sep-2016  pgoyette branches: 1.1.2; 1.1.4; 1.1.18; 1.1.20;
Add module build infrastructure for ld and its attachments
 1.1.20.1 25-Jun-2018  pgoyette Sync with HEAD
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 27-Sep-2016  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:39:01 +0000
 1.1.4.2 04-Nov-2016  pgoyette Sync with HEAD
 1.1.4.1 27-Sep-2016  pgoyette file Makefile was added on branch pgoyette-localcount on 2016-11-04 14:49:20 +0000
 1.1.2.2 05-Oct-2016  skrll Sync with HEAD
 1.1.2.1 27-Sep-2016  skrll file Makefile was added on branch nick-nhusb on 2016-10-05 20:56:08 +0000
 1.3 21-Oct-2025  pgoyette The virtio module needs an IOCONF
 1.2 06-Jun-2018  jakllsch fix up virtio module for current structure; add virtio_pci module
 1.1 27-Sep-2016  pgoyette branches: 1.1.2; 1.1.4; 1.1.18; 1.1.20;
Add module build infrastructure for ld and its attachments
 1.1.20.1 25-Jun-2018  pgoyette Sync with HEAD
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 27-Sep-2016  jdolecek file virtio.ioconf was added on branch tls-maxphys on 2017-12-03 11:39:01 +0000
 1.1.4.2 04-Nov-2016  pgoyette Sync with HEAD
 1.1.4.1 27-Sep-2016  pgoyette file virtio.ioconf was added on branch pgoyette-localcount on 2016-11-04 14:49:20 +0000
 1.1.2.2 05-Oct-2016  skrll Sync with HEAD
 1.1.2.1 27-Sep-2016  skrll file virtio.ioconf was added on branch nick-nhusb on 2016-10-05 20:56:08 +0000
 1.2 21-Oct-2025  pgoyette Add WARNS=3 as needed for -Wsign-compare issues
 1.1 06-Jun-2018  jakllsch branches: 1.1.2;
fix up virtio module for current structure; add virtio_pci module
 1.1.2.2 25-Jun-2018  pgoyette Sync with HEAD
 1.1.2.1 06-Jun-2018  pgoyette file Makefile was added on branch pgoyette-compat on 2018-06-25 07:26:06 +0000
 1.1 06-Jun-2018  jakllsch branches: 1.1.2;
fix up virtio module for current structure; add virtio_pci module
 1.1.2.2 25-Jun-2018  pgoyette Sync with HEAD
 1.1.2.1 06-Jun-2018  pgoyette file virtio_pci.ioconf was added on branch pgoyette-compat on 2018-06-25 07:26:06 +0000
 1.5 09-May-2024  pho port-arm/58194: Resurrect vmt(4) from bitrot

On this architecture vmt(4) used to search for a node "/hypervisor" in the
FDT and probed the VMware hypervisor call only when the node was
found. However, things appear to have changed and VMware no longer provides
the FDT node.

Since vmt(4) doesn't actually need to read anything from FDT, and the
hypervisor call logically resides in virtual CPUs themselves, it would be
better to attach it directly to cpu, just like how it's probed on x86.
 1.4 27-Oct-2020  ryo move vmt(4) from MD to MI, and add support vmt on aarch64. tested on ESXi-Arm Fling

- move from sys/arch/x86/x86/{vmt.c,vmtreg.h,vmtvar.h} to sys/dev/vmt/{vmt_subr.c,vmtreg.h,vmtvar.h},
and split the attach part of the cpufeaturebus and fdt
- add aarch64 vmware backdoor op
- add include guard to vmt{reg,var}.h
- Yet there is still some little-endian dependency. it needs to be fixed in order to work properly on aarch64eb
 1.3 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.2 20-Oct-2011  jmcneill branches: 1.2.54;
mark vm_reg members as volatile instead of building this with -O0
 1.1 17-Oct-2011  jmcneill add a port of the VMware Tools driver vmt(4) from OpenBSD
 1.2.54.1 10-Jun-2019  christos Sync with HEAD
 1.1 17-Oct-2011  jmcneill add a port of the VMware Tools driver vmt(4) from OpenBSD
 1.6 01-May-2019  pgoyette No need to define COMPAT_50 any longer. All the compat decisions are
made with HOOKs.
 1.5 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.4 27-Jan-2019  pgoyette Merge the [pgoyette-compat] branch
 1.3 20-Aug-2015  christos branches: 1.3.16; 1.3.18;
Add ioconf entries to the pseudo-devices.
 1.2 19-Sep-2010  mrg branches: 1.2.18; 1.2.36;
enable COMPAT_30 and COMPAT_50 in the module.
 1.1 05-Feb-2009  haad branches: 1.1.4; 1.1.6; 1.1.8; 1.1.10;
Add support for the MODULAR framework to the vnd driver. Enable building of
vnd.kmod by default.
 1.1.10.1 05-Mar-2011  rmind sync with head
 1.1.8.1 22-Oct-2010  uebayasi Sync with HEAD (-D20101022).
 1.1.6.3 09-Oct-2010  yamt sync with head
 1.1.6.2 04-May-2009  yamt sync with head.
 1.1.6.1 05-Feb-2009  yamt file Makefile was added on branch yamt-nfs-mp on 2009-05-04 08:14:14 +0000
 1.1.4.2 03-Mar-2009  skrll Sync with HEAD.
 1.1.4.1 05-Feb-2009  skrll file Makefile was added on branch nick-hppapmap on 2009-03-03 18:33:38 +0000
 1.2.36.1 22-Sep-2015  skrll Sync with HEAD
 1.2.18.1 03-Dec-2017  jdolecek update from HEAD
 1.3.18.1 10-Jun-2019  christos Sync with HEAD
 1.3.16.1 29-Mar-2018  pgoyette We no longer need to force compat_30 - it will be automatically
invoked if the appropriate compat module is loaded.
 1.1 20-Aug-2015  christos branches: 1.1.2; 1.1.18;
Add ioconf entries to the pseudo-devices.
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 20-Aug-2015  jdolecek file vnd.ioconf was added on branch tls-maxphys on 2017-12-03 11:39:01 +0000
 1.1.2.2 22-Sep-2015  skrll Sync with HEAD
 1.1.2.1 20-Aug-2015  skrll file vnd.ioconf was added on branch nick-nhusb on 2015-09-22 12:06:10 +0000
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 15-Nov-2015  pgoyette branches: 1.1.2; 1.1.18; 1.1.22;
Actually create the wapbl module, since it works.
 1.1.22.1 10-Jun-2019  christos Sync with HEAD
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 15-Nov-2015  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:39:01 +0000
 1.1.2.2 27-Dec-2015  skrll Sync with HEAD (as of 26th Dec)
 1.1.2.1 15-Nov-2015  skrll file Makefile was added on branch nick-nhusb on 2015-12-27 12:10:06 +0000
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 17-Jan-2012  jakllsch branches: 1.1.4; 1.1.50;
Modularize lm_isa and lm_wbsio, splitting the common part out
into a 3rd module. Add wbsio module too.
 1.1.50.1 10-Jun-2019  christos Sync with HEAD
 1.1.4.2 17-Apr-2012  yamt sync with head
 1.1.4.1 17-Jan-2012  yamt file Makefile was added on branch yamt-pagecache on 2012-04-17 00:08:37 +0000
 1.1 17-Jan-2012  jakllsch branches: 1.1.4;
Modularize lm_isa and lm_wbsio, splitting the common part out
into a 3rd module. Add wbsio module too.
 1.1.4.2 17-Apr-2012  yamt sync with head
 1.1.4.1 17-Jan-2012  yamt file wbsio.ioconf was added on branch yamt-pagecache on 2012-04-17 00:08:37 +0000
 1.4 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.3 16-Feb-2011  jruoho branches: 1.3.2; 1.3.58;
Convert the homegrown module declarations to use ioconf.
 1.2 25-Oct-2010  jruoho branches: 1.2.2; 1.2.4; 1.2.6;
Bump WARNS to 4.
 1.1 24-Oct-2010  jmcneill build wmi drivers as modules on x86
 1.2.6.1 17-Feb-2011  bouyer Sync with HEAD
 1.2.4.1 06-Jun-2011  jruoho Sync with HEAD.
 1.2.2.2 06-Nov-2010  uebayasi Sync with HEAD.
 1.2.2.1 25-Oct-2010  uebayasi file Makefile was added on branch uebayasi-xip on 2010-11-06 08:08:48 +0000
 1.3.58.1 10-Jun-2019  christos Sync with HEAD
 1.3.2.2 05-Mar-2011  rmind sync with head
 1.3.2.1 16-Feb-2011  rmind file Makefile was added on branch rmind-uvmplock on 2011-03-05 20:55:49 +0000
 1.1 16-Feb-2011  jruoho branches: 1.1.2; 1.1.4; 1.1.8;
Convert the homegrown module declarations to use ioconf.
 1.1.8.2 06-Jun-2011  jruoho Sync with HEAD.
 1.1.8.1 16-Feb-2011  jruoho file wmidell.ioconf was added on branch jruoho-x86intr on 2011-06-06 09:09:51 +0000
 1.1.4.2 05-Mar-2011  rmind sync with head
 1.1.4.1 16-Feb-2011  rmind file wmidell.ioconf was added on branch rmind-uvmplock on 2011-03-05 20:55:49 +0000
 1.1.2.2 17-Feb-2011  bouyer Sync with HEAD
 1.1.2.1 16-Feb-2011  bouyer file wmidell.ioconf was added on branch bouyer-quota2 on 2011-02-17 12:00:48 +0000
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 16-Feb-2011  jruoho branches: 1.1.2; 1.1.4; 1.1.8; 1.1.62;
Add a skeleton driver for Asus EeePC acpiwmi(4) mappings.
 1.1.62.1 10-Jun-2019  christos Sync with HEAD
 1.1.8.2 06-Jun-2011  jruoho Sync with HEAD.
 1.1.8.1 16-Feb-2011  jruoho file Makefile was added on branch jruoho-x86intr on 2011-06-06 09:09:51 +0000
 1.1.4.2 05-Mar-2011  rmind sync with head
 1.1.4.1 16-Feb-2011  rmind file Makefile was added on branch rmind-uvmplock on 2011-03-05 20:55:49 +0000
 1.1.2.2 17-Feb-2011  bouyer Sync with HEAD
 1.1.2.1 16-Feb-2011  bouyer file Makefile was added on branch bouyer-quota2 on 2011-02-17 12:00:48 +0000
 1.1 16-Feb-2011  jruoho branches: 1.1.2; 1.1.4; 1.1.8;
Add a skeleton driver for Asus EeePC acpiwmi(4) mappings.
 1.1.8.2 06-Jun-2011  jruoho Sync with HEAD.
 1.1.8.1 16-Feb-2011  jruoho file wmieeepc.ioconf was added on branch jruoho-x86intr on 2011-06-06 09:09:51 +0000
 1.1.4.2 05-Mar-2011  rmind sync with head
 1.1.4.1 16-Feb-2011  rmind file wmieeepc.ioconf was added on branch rmind-uvmplock on 2011-03-05 20:55:49 +0000
 1.1.2.2 17-Feb-2011  bouyer Sync with HEAD
 1.1.2.1 16-Feb-2011  bouyer file wmieeepc.ioconf was added on branch bouyer-quota2 on 2011-02-17 12:00:48 +0000
 1.4 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.3 16-Feb-2011  jruoho branches: 1.3.2; 1.3.58;
Convert the homegrown module declarations to use ioconf.
 1.2 25-Oct-2010  jruoho branches: 1.2.2; 1.2.4; 1.2.6;
Bump WARNS to 4.
 1.1 24-Oct-2010  jmcneill build wmi drivers as modules on x86
 1.2.6.1 17-Feb-2011  bouyer Sync with HEAD
 1.2.4.1 06-Jun-2011  jruoho Sync with HEAD.
 1.2.2.2 06-Nov-2010  uebayasi Sync with HEAD.
 1.2.2.1 25-Oct-2010  uebayasi file Makefile was added on branch uebayasi-xip on 2010-11-06 08:08:48 +0000
 1.3.58.1 10-Jun-2019  christos Sync with HEAD
 1.3.2.2 05-Mar-2011  rmind sync with head
 1.3.2.1 16-Feb-2011  rmind file Makefile was added on branch rmind-uvmplock on 2011-03-05 20:55:50 +0000
 1.1 16-Feb-2011  jruoho branches: 1.1.2; 1.1.4; 1.1.8;
Convert the homegrown module declarations to use ioconf.
 1.1.8.2 06-Jun-2011  jruoho Sync with HEAD.
 1.1.8.1 16-Feb-2011  jruoho file wmihp.ioconf was added on branch jruoho-x86intr on 2011-06-06 09:09:51 +0000
 1.1.4.2 05-Mar-2011  rmind sync with head
 1.1.4.1 16-Feb-2011  rmind file wmihp.ioconf was added on branch rmind-uvmplock on 2011-03-05 20:55:50 +0000
 1.1.2.2 17-Feb-2011  bouyer Sync with HEAD
 1.1.2.1 16-Feb-2011  bouyer file wmihp.ioconf was added on branch bouyer-quota2 on 2011-02-17 12:00:49 +0000
 1.4 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.3 16-Feb-2011  jruoho branches: 1.3.2; 1.3.58;
Convert the homegrown module declarations to use ioconf.
 1.2 25-Oct-2010  jruoho branches: 1.2.2; 1.2.4; 1.2.6;
Bump WARNS to 4.
 1.1 24-Oct-2010  jmcneill build wmi drivers as modules on x86
 1.2.6.1 17-Feb-2011  bouyer Sync with HEAD
 1.2.4.1 06-Jun-2011  jruoho Sync with HEAD.
 1.2.2.2 06-Nov-2010  uebayasi Sync with HEAD.
 1.2.2.1 25-Oct-2010  uebayasi file Makefile was added on branch uebayasi-xip on 2010-11-06 08:08:48 +0000
 1.3.58.1 10-Jun-2019  christos Sync with HEAD
 1.3.2.2 05-Mar-2011  rmind sync with head
 1.3.2.1 16-Feb-2011  rmind file Makefile was added on branch rmind-uvmplock on 2011-03-05 20:55:50 +0000
 1.1 16-Feb-2011  jruoho branches: 1.1.2; 1.1.4; 1.1.8;
Convert the homegrown module declarations to use ioconf.
 1.1.8.2 06-Jun-2011  jruoho Sync with HEAD.
 1.1.8.1 16-Feb-2011  jruoho file wmimsi.ioconf was added on branch jruoho-x86intr on 2011-06-06 09:09:51 +0000
 1.1.4.2 05-Mar-2011  rmind sync with head
 1.1.4.1 16-Feb-2011  rmind file wmimsi.ioconf was added on branch rmind-uvmplock on 2011-03-05 20:55:50 +0000
 1.1.2.2 17-Feb-2011  bouyer Sync with HEAD
 1.1.2.1 16-Feb-2011  bouyer file wmimsi.ioconf was added on branch bouyer-quota2 on 2011-02-17 12:00:49 +0000
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 11-Jun-2017  pgoyette branches: 1.1.4; 1.1.6; 1.1.10;
Actually create the wsbell(4) module
 1.1.10.1 10-Jun-2019  christos Sync with HEAD
 1.1.6.2 03-Dec-2017  jdolecek update from HEAD
 1.1.6.1 11-Jun-2017  jdolecek file Makefile was added on branch tls-maxphys on 2017-12-03 11:39:02 +0000
 1.1.4.2 28-Aug-2017  skrll Sync with HEAD
 1.1.4.1 11-Jun-2017  skrll file Makefile was added on branch nick-nhusb on 2017-08-28 17:53:11 +0000
 1.1 11-Jun-2017  pgoyette branches: 1.1.4; 1.1.6;
Actually create the wsbell(4) module
 1.1.6.2 03-Dec-2017  jdolecek update from HEAD
 1.1.6.1 11-Jun-2017  jdolecek file wsbell.ioconf was added on branch tls-maxphys on 2017-12-03 11:39:02 +0000
 1.1.4.2 28-Aug-2017  skrll Sync with HEAD
 1.1.4.1 11-Jun-2017  skrll file wsbell.ioconf was added on branch nick-nhusb on 2017-08-28 17:53:11 +0000
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 11-Jul-2011  jmcneill branches: 1.1.54;
add module glue for lg3303, xc3028, emdtv
 1.1.54.1 10-Jun-2019  christos Sync with HEAD
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 27-Dec-2010  jmcneill branches: 1.1.6; 1.1.62;
xc5k, au8522, and auvitek modules
 1.1.62.1 10-Jun-2019  christos Sync with HEAD
 1.1.6.2 05-Mar-2011  rmind sync with head
 1.1.6.1 27-Dec-2010  rmind file Makefile was added on branch rmind-uvmplock on 2011-03-05 20:55:50 +0000
 1.1 10-Nov-2009  skrll branches: 1.1.4;
Move the kmodule linker script source into sys/modules/xldscripts. It is
not part of binutils and definitely not GPL v3.

Discussed with mrg.
 1.1.4.2 11-Mar-2010  yamt sync with head
 1.1.4.1 10-Nov-2009  yamt file Makefile was added on branch yamt-nfs-mp on 2010-03-11 15:04:26 +0000
 1.2 01-Jun-2010  mjf Add __cacheline_aligned and __read_mostly annotations.

These annotations help to mitigate false sharing on multiprocessor
systems.

Variables annotated with __cacheline_aligned are placed into the
.data.cacheline_aligned section in the kernel. Each item in this
section is aligned on a cachline boundary - this avoids false
sharing. Highly contended global locks are a good candidate for
__cacheline_aligned annotation.

Variables annotated with __read_mostly are packed together tightly
into a .data.read_mostly section in the kernel. The idea here is that
we can pack infrequently modified data items into a cacheline and
avoid having to purge the cache, which would happen if read mostly
data and write mostly data shared a cachline. Initialisation variables
are a prime candiate for __read_mostly annotations.
 1.1 10-Nov-2009  skrll branches: 1.1.2; 1.1.4; 1.1.6;
Move the kmodule linker script source into sys/modules/xldscripts. It is
not part of binutils and definitely not GPL v3.

Discussed with mrg.
 1.1.6.1 03-Jul-2010  rmind sync with head
 1.1.4.3 11-Aug-2010  yamt sync with head.
 1.1.4.2 11-Mar-2010  yamt sync with head
 1.1.4.1 10-Nov-2009  yamt file kmodule was added on branch yamt-nfs-mp on 2010-03-11 15:04:26 +0000
 1.1.2.1 17-Aug-2010  uebayasi Sync with HEAD.
 1.4 18-Jan-2011  haad 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.3 28-Feb-2010  haad branches: 1.3.2; 1.3.4;
Update zfs module to new sources.
 1.2 10-Aug-2009  haad branches: 1.2.2; 1.2.4;
Remove strange looking -I entries.
 1.1 10-Aug-2009  haad Add solaris and zfs kernel modules build directories. These modules will
not be built during release build until we import other kernel patches needed.
 1.2.4.1 30-Apr-2010  uebayasi Sync with HEAD.
 1.2.2.3 11-Mar-2010  yamt sync with head
 1.2.2.2 19-Aug-2009  yamt sync with head.
 1.2.2.1 10-Aug-2009  yamt file Makefile was added on branch yamt-nfs-mp on 2009-08-19 18:48:23 +0000
 1.3.4.1 06-Jun-2011  jruoho Sync with HEAD.
 1.3.2.1 05-Mar-2011  rmind sync with head
 1.11 19-Sep-2025  mrg avoid various seemingly bogus warnings with GCC 14.

i couldn't see any real case for any of these issues. it seems like
the "maybe uninit" checker has gotten worse.

additionally, the "dangling pointer" checker also failing.
 1.10 15-Apr-2021  christos - Don't define NEED_ISYSTEM. This is a rump thing and should be only exposed
there.
 1.9 05-Feb-2019  hannken branches: 1.9.14;
Prepare the implementation of the ZFS control directory ".zfs".

- Move the stub routines from zfs_stub.c to zfs_ctldir.c and
remove now empty file zfs_stub.c

- Add stub routines for zfsctl_loadvnode() to initialize control
nodes and zfsctl_snapshot() to retrieve ".zfs/snapshot".

- Add an initial vnode operations vector for control nodes.

- Implement lookup into ".zfs" and lookup ".." from ".zfs/snapshot/<snap>".

- Change nodeid of mounted snapshots to the snapshot object id.

- Respect "-u" flag to "zfs rename <snapshot> ...".
 1.8 18-Aug-2018  christos remove NOGCCERROR; hides real issues.
 1.7 28-May-2018  chs branches: 1.7.2;
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.6 18-Jun-2016  christos branches: 1.6.16;
avoid duplicate symbols.
 1.5 22-Apr-2014  christos branches: 1.5.4;
add atomic.c
 1.4 21-Nov-2012  pooka branches: 1.4.2; 1.4.10;
Don't unconditionally use the error-silencing magic of -isystem
(as opposed to -I) on every component, only the zfs ones depend on it
to build. Regular modules might benefit from a similar move.
 1.3 05-Feb-2012  christos branches: 1.3.6;
-D flags belong in CPPFLAGS
 1.2 04-Feb-2012  christos Remove -g -O0. It does not work on amd64 at all.
If you want debugging on, add it yourself.
 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.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.10.2 16-Jan-2013  yamt sync with (a bit old) head
 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.zfsmod was added on branch jruoho-x86intr on 2011-06-06 09:09:51 +0000
 1.1.4.2 05-Mar-2011  rmind sync with head
 1.1.4.1 18-Jan-2011  rmind file Makefile.zfsmod was added on branch rmind-uvmplock on 2011-03-05 20:55:50 +0000
 1.3.6.3 03-Dec-2017  jdolecek update from HEAD
 1.3.6.2 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.3.6.1 25-Feb-2013  tls resync with head
 1.4.10.1 10-Aug-2014  tls Rebase.
 1.4.2.1 18-May-2014  rmind sync with head
 1.5.4.1 09-Jul-2016  skrll Sync with HEAD
 1.6.16.2 06-Sep-2018  pgoyette Sync with HEAD

Resolve a couple of conflicts (result of the uimin/uimax changes)
 1.6.16.1 25-Jun-2018  pgoyette Sync with HEAD
 1.7.2.1 10-Jun-2019  christos Sync with HEAD
 1.9.14.1 17-Apr-2021  thorpej Sync with HEAD.
 1.2 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.1 29-Aug-2011  jruoho branches: 1.1.54;
Add Zarlink ZL10353 DVB demodulator (or as it is now know, Intel CE623x).
 1.1.54.1 10-Jun-2019  christos Sync with HEAD
 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 17-Feb-2019  rin Bump default value of WARNS for modules from 3 to 5, and
explicitly set WARNS for modules that fail with WARNS=5.

Also, turn on -Wno-missing-noreturn for clang for some files.

At the moment, among ~ 360 modules,
- 2 (lua and zfs) need WARNS=0
- 1 (solaris) needs WARNS=1
- 136 need WARNS=3 (mostly due to sign-compare)
- 4 need WARNS=4
- others can be compiled with WARNS=5

Discussed on tech-kern.
 1.2 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.1 29-Dec-2013  pgoyette branches: 1.1.4; 1.1.6; 1.1.10; 1.1.36;
Modularize net/zlib so it can be used by the vnd module (and, eventually,
by an opencrypto module).
 1.1.36.2 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.1.36.1 10-Jun-2019  christos Sync with HEAD
 1.1.10.2 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.1.10.1 29-Dec-2013  tls file Makefile was added on branch tls-maxphys on 2014-08-20 00:04:34 +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 29-Dec-2013  yamt file Makefile was added on branch yamt-pagecache on 2014-05-22 11:41:08 +0000
 1.1.4.2 18-May-2014  rmind sync with head
 1.1.4.1 29-Dec-2013  rmind file Makefile was added on branch rmind-smpnet on 2014-05-18 17:46:12 +0000

RSS XML Feed