Change smbfs from hashlist to vcache.
- Use (parent_vnode, name, name_len) as key.
- Change smbfs_nget() to return a referenced but unlocked vnode and
  adapt smbfs_setroot(), smbfs_create(), smbfs_mkdir() and smbfs_lookup().
Add a test program for basic fenv.h rounding mode/exception mask testing.
Add new test program
Debug info for new test program
Stop useless disklabel warning if there are wedges, using GPT partition.
Fix PR kern/47989.

XXX: Pullup 6 and 7 (maybe 5)
add some A80 daudio and display regs
add A80 R_DAUDIO irq
add A80 debe, tcon, hdmi, daudio
add support for re-using a display mode setup by the bootloader
enable awindebe, genfb, wsdisplay
actually initialize mode.vdisplay
PR/49428: Travis Paul: Document x option.
Use Nx.
fix the midi_if documentation to properly describe the locks that will
be held during various operations.
various umidi clean ups:
- move the contents of umidi{reg,var}.h into umidi.c directly as they
  are not referenced by any other file.
- remove the useless include of umidi{reg,var}.h from umidi_quirks.c.
- add reference counting and wait/broadcast support to the IO paths.
- fix the error handling in midi_attach() and midi_open().
- sprinkle KASSERT() in several places.
- drop the local interrupt lock before calling into various parts of
  the USB code.  fixes lockdebug issues, and likely hangs.
- rename "binded" member as "bound".

with these most of the panics and problems i've seen are gone.  there
is still one lockdebug panic to deal with that happens when unplugging
umidi while midiplay(1) is running.
read chip ID from SRAM ver reg on A80; the chip ID is 0x1639
avoid shadowing of log2 on some platforms.
avoid shadowing of recv.
various clean ups for midi and sequencer:

midi specific:
- add reference counting for midi operations, and ensure that
  detach waits for other threads to complete before tearing
  down the device completely.
- in detach, halt midi callouts before destroying them
- re-check sc->dying after sleeping in midiread()
- in real_writebytes(), make sure we're open and not dying
- make sure we drop the interrupt lock before calling any code
  that may want to check thread locks.  this is now safe due to
  the above changes.

sequencer specific:
- avoid caching the midi softc in the sequencer softc.  instead,
  every time we want to use it, look it up again and make sure
  it still exists.

this fixes various crashes i've seen in the usb midi code when
detaching the umidi while it is active.
Do not warn about relative path because of trailing slash

libpuffs calls realpath() to obtain an absolute path to use for mounting.
If the obtained path is different from the one given by the caller, a
warning is issued. This included the situation where the path passed by
the caller just have trailing slashes, a situation where we just want them
to be striped without a warning.