qemu-devel
[Top][All Lists]
Advanced

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

[Qemu-devel] [RFC PATCH 0/3] Virtio refactoring.


From: fred . konrad
Subject: [Qemu-devel] [RFC PATCH 0/3] Virtio refactoring.
Date: Fri, 16 Nov 2012 16:35:56 +0100

Hi,

I submit this RFC to be sure I'm doing the right thing about the VirtioBus.

I push the patchset here : 

git://git.greensocs.com/qemu_virtio.git virtio_refact

What I proposed to do :

    * Introduce a new VirtioBus ( same way as scsi-bus.c ), with VirtIODevice
      interface :
         -> callback to completely abstract the VirtioDevice from VirtioPCI.
         -> for the queue, load/save the queue/config, features, ..., other ?

    * Add a VirtioBus to the VirtioPCIProxy. ( virtio-pci.c ) :
         -> moving all to the newer callback.

    * For each of the virtio-device : ( virtio-x.c )
         -> making a separate class for virtio-x which is a VirtioDevice.
         -> making a virtio-x-pci which has a virtio-x.

    * Create virtio-mmio ( virtio-mmio.c ).

What it is done in this RFC :

    * introduce VirtioBus, which can be added to Virtio transports like
      virtio-pci or virtio-mmio. I think the interface must be improved.

    * add a VirtioBus to the existing VirtioPCIProxy ( virtio-pci ), and add a
      "virtio-pci" device which can be loaded without a VirtIODevice, and create
      a VirtioBus.

    * add a "virtio-blk" device which must be connected on a virtio-bus, to try
      the virtio-bus and virtio-pci.

The info qtree return this structure :

bus: main-system-bus
  type System
  dev: i440FX-pcihost, id ""
    bus: pci.0
      type PCI
      dev: virtio-pci, id ""
        bus: virtio.0
          type VIRTIO
          dev: virtio-blk, id ""

What I must improve :

    * the Virtio-PCI still need the VirtIODevice.
    * others devices.
    * spliting virtio-x-pci to virtio-x + virtio-pci.

Did I miss something ?

Thanks,

Fred.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]