[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Minios-devel] [UNIKRAFT PATCH v2 0/7] plat/drivers: Improve virtio support in Unikraft



Introduces the basic building blocks for the working with virtio devices in 
Unikraft for the KVM Platform. We introduce a virtio bus to bridge the virtio
device with the virtio device driver. We introduces a virtio PCI driver
implementation to scan the virtio device on the PCI bus. The virtio PCI 
driver operates in legacy mode.

This patch also introduces a virtqueue abstraction to interact with the virtio
ring. The virtqueue layer supports creation and deletion operations on the 
virtqueue, enqueuing and dequeuing descriptor into the virtio ring as well as 
support handling interrupts on the virtio ring.

Changes since v1:
* Renamed virtio.h to virtio_bus.h
* Fixed changes on different commit to its original commit.
* Fixed some error message.
* Fixed some comments

Sharan Santhanam (7):
  plat/driver: Remove the virtio-ring implementation
  plat/common: Introduce virtio standard header
  plat/drivers: Introduce the virtio bus
  plat/drivers: Introduce virtio PCI device
  plat/drivers: Reintroduce the virtio ring
  plat/drivers: Interrupt handling for virtio-ring
  plat/drivers: Add & Remove buffer from virtio-ring

 plat/common/include/pci/virtio/virtio_pci.h  |  66 ----
 plat/common/include/pci/virtio/virtio_ring.h | 276 ---------------
 plat/drivers/include/virtio/virtio_bus.h     | 327 ++++++++++++++++++
 plat/drivers/include/virtio/virtio_config.h  | 259 ++++++++++++++
 plat/drivers/include/virtio/virtio_ids.h     |  64 ++++
 plat/drivers/include/virtio/virtio_pci.h     |  74 ++++
 plat/drivers/include/virtio/virtio_ring.h    | 196 +++++++++++
 plat/drivers/include/virtio/virtio_types.h   |  62 ++++
 plat/drivers/include/virtio/virtqueue.h      | 239 +++++++++++++
 plat/drivers/virtio/virtio_bus.c             | 226 ++++++++++++
 plat/drivers/virtio/virtio_pci.c             | 436 +++++++++++++++++++++++
 plat/drivers/virtio/virtio_ring.c            | 496 ++++++++++++++++++++-------
 plat/kvm/Config.uk                           |  24 +-
 plat/kvm/Makefile.uk                         |  17 +-
 14 files changed, 2289 insertions(+), 473 deletions(-)
 delete mode 100644 plat/common/include/pci/virtio/virtio_pci.h
 delete mode 100644 plat/common/include/pci/virtio/virtio_ring.h
 create mode 100644 plat/drivers/include/virtio/virtio_bus.h
 create mode 100644 plat/drivers/include/virtio/virtio_config.h
 create mode 100644 plat/drivers/include/virtio/virtio_ids.h
 create mode 100644 plat/drivers/include/virtio/virtio_pci.h
 create mode 100644 plat/drivers/include/virtio/virtio_ring.h
 create mode 100644 plat/drivers/include/virtio/virtio_types.h
 create mode 100644 plat/drivers/include/virtio/virtqueue.h
 create mode 100644 plat/drivers/virtio/virtio_bus.c
 create mode 100644 plat/drivers/virtio/virtio_pci.c

-- 
2.7.4


_______________________________________________
Minios-devel mailing list
Minios-devel@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/mailman/listinfo/minios-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.