if_vtnet - Allocate struct vtnet_tx_header entries from a queue.
* The existing code was sequentially allocating from an array of
struct vtnet_tx_header, using an appropriately sized area.
But this scheme turns out to be a very bad idea when we get out-of-order
completions in the virtqueue.
* Instead allocate struct vtnet_tx_header entries from an SLIST.
* This should avoid crashes from memory-corruption or use-after-free in
if_vtnet(9), when running in KVM on Linux, using Linux's vhost-net
in-kernel virtqueue accelerator.