Getting use of virtio rings correct is tricky, and a recent patch saw
an implementation of in-kernel rings (as separate from userspace).
This abstracts the business of dealing with the virtio ring layout
from the access (userspace or direct); to do this, we use function
pointers, which gcc inlines correctly.
There are patches pending to make vhost use this interface, but it's
being merged now for the CAIF virtio patches, which want it
immediately.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>