ufs_gro_genealogy: use vcache_get() to lookup DOTDOT.
In COMPAT_DKWEDGE, attempt to open the label as specified in the NAME= entry.
This works for BSD disklabels, providing full compatibility. Merge some
duplicated code. This means that at least for BSD labels, we can handle
both pre and post- autodiscover kernels with the same fstab.
ufs_mknod: use vcache_get() to reload the new node.
ext2fs_gro_genealogy: use vcache_get() to lookup DOTDOT.
ext2fs_mknod: use vcache_get() to reload the new node.
Remove ufs_checkpath() and ufs_readdotdot().  These are relics
from the pre-genfs_rename era.
Remove ulfs_checkpath() and ulfs_readdotdot().  These are relics
from the pre-genfs_rename era.
Change layerfs from hashlist to vcache.
Make VI_LOCKSHARE public again.

Ride 6.99.43
Use broadcast after freeing a cache entry.  A waiter may not
use a cache entry after wakeup leading to possible deadlock.
Remove ext2fs_checkpath().  It is a relic from the pre-genfs_rename era.
pcu: replace xcall(9) used for messaging with ipi(9).  This provides
a better performance of the PCU (e.g. FPU) state synchronisation.
pcu(9) man page: correct PCU_REENABLE description, add pcu_discard_all(),
improve some wording.
Do not crash if subclassp == NULL, seen while attaching rstx(4) which
match PCI_CLASS_UNDEFINED class.
MI IPI interface:
- Implement support for the asynchronous IPI calls.
- Rework synchronous IPI code to reuse the asynchronous mechanism.
- Add ipi(9) manual page; needs wizd(8).

Note: MD code can now provide a low level primitive for the ipi(9) and
reuse this interface instead of open-coding.  Portmasters are encouraged
to convert.  Ride 6.99.43!
softint: implement softint_schedule_cpu() to trigger software interrupts
on the remote CPUs and add SOFTINT_RCPU flag to indicate whether this is
going to be used; implemented using asynchronous IPIs.
Sort SEE ALSO. Wording improvements. Remove unnecessary Pp.
Happy Towel Day!
Add GeForce GT 640M.
Regen for GeForce GT 640M.
Call biodone() in the bdev_strategy() error via a pointer.  Decouples
subr_devsw from VFS -- not that I/O buffers are _VFS_ entities -- and
eliminates the last weak alias from librump, which means things now
fully work on glibc (w/o LD_DYNAMIC_WEAK) and musl.

The whole code path is suspect anyway, since nothing prevents the device
from escaping after the lookup, suggesting that the whole error path
should be handled by the caller, but oh well.