david/ipxe
Archived
1
0
This repository has been archived on 2020-12-06. You can view files and clone it, but cannot push or open issues or pull requests.
ipxe/src/drivers/bus
Stefan Hajnoczi e4419ff97c [virtio] Replace virtio-net with native iPXE driver
This patch adds a native iPXE virtio-net driver and removes the legacy
Etherboot virtio-net driver.  The main reasons for doing this are:

1. Multiple virtio-net NICs are now supported by iPXE.  The legacy
   driver kept global state and caused issues in virtual machines with
   more than one virtio-net device.

2. Faster downloads.  The native iPXE driver downloads 100 MB over
   HTTP in 12s, the legacy Etherboot driver in 37s.  This simple
   benchmark uses KVM with tap networking and the Python
   SimpleHTTPServer both running on the same host.

Changes to core virtio code reduce vring descriptors to 256 (QEMU uses
128 for virtio-blk and 256 for virtio-net) and change the opaque token
from u16 to void*.  Lowering the descriptor count reduces memory
consumption.  The void* opaque token change makes driver code simpler.

Signed-off-by: Stefan Hajnoczi <stefanha@gmail.com>
Signed-off-by: Michael Brown <mcb30@ipxe.org>
2010-07-17 17:07:14 +01:00
..
eisa.c [build] Rename gPXE to iPXE 2010-04-19 23:43:39 +01:00
isa_ids.c [build] Rename gPXE to iPXE 2010-04-19 23:43:39 +01:00
isa.c [build] Rename gPXE to iPXE 2010-04-19 23:43:39 +01:00
isapnp.c [build] Rename gPXE to iPXE 2010-04-19 23:43:39 +01:00
mca.c [build] Rename gPXE to iPXE 2010-04-19 23:43:39 +01:00
pci.c [build] Rename gPXE to iPXE 2010-04-19 23:43:39 +01:00
pcibackup.c [build] Rename gPXE to iPXE 2010-04-19 23:43:39 +01:00
pciextra.c [build] Rename gPXE to iPXE 2010-04-19 23:43:39 +01:00
virtio-pci.c [build] Rename gPXE to iPXE 2010-04-19 23:43:39 +01:00
virtio-ring.c [virtio] Replace virtio-net with native iPXE driver 2010-07-17 17:07:14 +01:00