The default and only stock coredumper will continue to be the traditional
vnode dumper, which will dump to a vnode and issue a devctl notification.
With this change, one can write a kmod that injects custom handling of user
coredumps that offers richer behavior, particularly in case one wants to
add more metadata than we can tap out via devd.
The main motivation here is to pave the way for my usercore daemon to be
able to reroute coredumps before they ever touch the disk. In some cases
they may be discarded and we can avoid the overhead of writing anything, in
others they allow us to capture coredumps that would be written into an area
that's transient in nature (e.g., kyua test work directories) without having
to do more tricks to keep those alive. My WIP kmod writes the coredump into
a shmfd instead of a vnode, then installs that into ucored(8) with every
read(2) of /dev/ucore. This also allows me to capture more metadata
reliably before the process and jail disappear.