2
0
mirror of https://github.com/edk2-porting/linux-next.git synced 2024-12-22 12:14:01 +08:00
linux-next/drivers/virtio
Rusty Russell 0a8a69dd77 Virtio helper routines for a descriptor ringbuffer implementation
These helper routines supply most of the virtqueue_ops for hypervisors
which want to use a ring for virtio.  Unlike the previous lguest
implementation:

1) The rings are variable sized (2^n-1 elements).
2) They have an unfortunate limit of 65535 bytes per sg element.
3) The page numbers are always 64 bit (PAE anyone?)
4) They no longer place used[] on a separate page, just a separate
   cacheline.
5) We do a modulo on a variable.  We could be tricky if we cared.
6) Interrupts and notifies are suppressed using flags within the rings.

Users need only get the ring pages and provide a notify hook (KVM
wants the guest to allocate the rings, lguest does it sanely).

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Cc: Dor Laor <dor.laor@qumranet.com>
2007-10-23 15:49:55 +10:00
..
config.c Virtio interface 2007-10-23 15:49:54 +10:00
Kconfig Virtio helper routines for a descriptor ringbuffer implementation 2007-10-23 15:49:55 +10:00
Makefile Virtio helper routines for a descriptor ringbuffer implementation 2007-10-23 15:49:55 +10:00
virtio_ring.c Virtio helper routines for a descriptor ringbuffer implementation 2007-10-23 15:49:55 +10:00
virtio.c Module autoprobing support for virtio drivers. 2007-10-23 15:49:55 +10:00