All of lore.kernel.org
 help / color / mirror / Atom feed
From: "KONRAD Frédéric" <fred.konrad@greensocs.com>
To: Anthony Liguori <aliguori@us.ibm.com>
Cc: kwolf@redhat.com, peter.maydell@linaro.org,
	e.voevodin@samsung.com, mst@redhat.com,
	mark.burton@greensocs.com, qemu-devel@nongnu.org, agraf@suse.de,
	amit.shah@redhat.com, aneesh.kumar@linux.vnet.ibm.com,
	stefanha@redhat.com, cornelia.huck@de.ibm.com,
	pbonzini@redhat.com, afaerber@suse.de
Subject: Re: [Qemu-devel] [PATCH 00/61] Virtio refactoring.
Date: Tue, 08 Jan 2013 14:40:57 +0100	[thread overview]
Message-ID: <50EC21E9.9030106@greensocs.com> (raw)
In-Reply-To: <874nisu7tp.fsf@codemonkey.ws>

On 07/01/2013 20:11, Anthony Liguori wrote:
> fred.konrad@greensocs.com writes:
>
>> From: KONRAD Frederic <fred.konrad@greensocs.com>
>>
>> Here is the full series for virtio-refactoring.
>>
>> You can clone that from here :
>> git.greensocs.com/home/greensocs/git/qemu_virtio.git virtio_refactoring
>>
>> virtio-mmio parts is not included but you can clone them from here :
>> git.greensocs.com/home/greensocs/git/qemu_virtio.git virtio_refactoring_mmio
>>
>> I think that the old VirtioBindings can be fixed later as nothing use interface
>> now and I didn't find any example in the code.
>>
>> Also I didn't try all the devices.
> I appreciate the thoroughness here but 66 patches is too much all at
> once.  Can this be done in chunks or more reasonable patch sizes?  It
> would make review and committing a lot easier.
I made little step to make review easier.

I can cut the series between each devices.
Or do you prefer fusionning some step ?

Fred

> Regards,
>
> Anthony Liguori
>
>> Thanks,
>>
>> Fred
>>
>> Changes between v9:
>>      * Refactored all the remaining devices with the same way as virtio-blk.
>>      * Moved the virtio device's structure in the header.
>>      * Fixed the init with only one allocation.
>>      * Fixed the indentation and code style errors.
>>      * s390 device's are refactored the same way as pci one.
>>      * Moved max_dev from BusState to BusClass.
>>
>> Changes v8 -> v9:
>>      * Modified virtio-bus.c function name. (virtio_device_ prefix.)
>>      * Removed qdev_create(..) in virtio-blk-x, object_new
>>        + object_property_add_child used instead.
>>
>> Changes v7 -> v8:
>>      * Moved virtio-blk-pci PCI IDs to "Add the virtio-blk device.".
>>      * virtio : Added virtio_device_init which init children and plug the device.
>>      * virtio : Added virtio_common_cleanup in the same way as
>>        virtio_common_init.
>>      * virtio-blk : Moved virtio_plug_device to virtio-device init.
>>      * virtio-blk : Inline the virtio_blk_exit function in
>>        virtio_blk_device_exit and use virtio_common_cleanup.
>>      * virtio-s390-bus : Added virtio-s390-bus.
>>      * virtio-s390-device : Added a virtio-s390-bus.
>>      * virtio-blk-s390 : Switched to the new API.
>>      * virtio : removed function pointer.
>>      * virtio : removed VirtinBindings.
>>      * virtio : cleaned up init and exit function.
>>
>> Changes v6 -> v7:
>>      * virtio-bus : Added virtio-bus-reset.
>>      * virtio-pci : Fixed virtio-pci-exit.
>>      * virtio-pci : Added virtio-pci-rst.
>>      * virtio-pci : Added VirtioPCIClass filled with an init function.
>>      * virtio-blk : Added virtio_blk_set_conf.
>>      * virtio-blk : QOM casts.
>>      * virtio-blk-pci : Switched to the new API.
>>
>> Changes v5 -> v6:
>>      * Renamed virtio_common_init_ to virtio_init, modify virtio_common_init to
>>        allocate and call virtio_init. Drop the unused structure size parameters.
>>      * Renamed init/exit callback in VirtioBusClass.
>>      * Renamed virtio_blk_init virtio_blk_common_init.
>>      * Modified virtio_blk_init to call virtio_blk_common_init.
>>
>> Changes v4 -> v5:
>>      * use ERROR_CLASS_GENERIC_ERROR in place of creating a new error type for
>>        the maximum device limitation. ( Peter )
>>      * Removed bus_in_use function. We assume that the virtio-bus is not in use,
>>        when plugin in. ( Peter )
>>      * Added virtio_bus_destroy_device().
>>      * Implemented the exit function of virtio-pci.
>>      * Implemented the init callback for virtio-pci ( must be modified, it still
>>        access vdev directly. ).
>>      * Implemented the exit callback for virtio-pci.
>>      * Started virtio-device refactoring.
>>      * Started virtio-blk refactoring.
>>
>> Changes v3 -> v4:
>>      * Added virtio-bus.o in Makefile.objs ( accidentally dropped from v3 ).
>>      * *const* TypeInfo in virtio-bus.
>>      * Introduced virtio-pci-bus.
>>      * Reintroduced virtio-pci.
>>      * Introduced virtio-device.
>>      * Started virtio-blk refactoring.
>>      * Added an error type in qerror.h for the "bus full" error.
>>
>> Changes v2 -> v3:
>>      * Added VirtioBusClass.
>>      * Renamed VirtioBus -> VirtioBusState.
>>      * Renamed qbus -> parent_obj.
>>      * Plug the device only in a non-full bus.
>>
>> Changes v1 -> v2:
>>      * All the little fix you suggest ( License, Debug printf, naming convention,
>>        ...)
>>      * Added get_virtio_device_id(), and remove the pci_id* from the VirtioBus
>>        structure.
>>      * Added virtio_bus_reset().
>>      * Added cast macros VIRTIO_BUS.
>>      * Added virtio_bus_plug_device.
>>      * Replaced the old-style "bus->qbus" by BUS() macro.
>>
>> KONRAD Frederic (61):
>>    qdev : add a maximum device allowed field for the bus.
>>    virtio-bus : introduce virtio-bus
>>    virtio-pci-bus : introduce virtio-pci-bus.
>>    virtio-pci : refactor virtio-pci device.
>>    virtio-device : refactor virtio-device.
>>    virtio-s390-bus : add virtio-s390-bus.
>>    virtio-s390-device : create a virtio-s390-bus during init.
>>    virtio-blk : show VirtIOBlock structure.
>>    virtio-blk : don't use pointer for configuration.
>>    virtio-blk : add the virtio-blk device.
>>    virtio-blk-pci : switch to new API.
>>    virtio-blk-s390 : switch to the new API.
>>    virtio-blk : cleanup : use QOM cast.
>>    virtio-blk : cleanup : remove qdev field.
>>    virtio-net : show the VirtIONet structure.
>>    virtio-net : add the virtio-net device.
>>    virtio-net-pci : switch to the new API.
>>    virtio-net-s390 : switch to the new API.
>>    virtio-net : cleanup : use QOM cast.
>>    virtio-net : cleanup : init and exit function.
>>    virtio-net : cleanup : remove qdev field.
>>    virtio-scsi : show the VirtIOSCSI structure.
>>    virtio-scsi : don't use pointer for configuration.
>>    virtio-scsi : allocate cmd_vqs array separately.
>>    virtio-scsi : moving host_features from properties to transport
>>      properties.
>>    virtio-scsi : add the virtio-scsi device.
>>    virtio-scsi-pci : switch to new API.
>>    virtio-scsi-s390 : switch to the new API.
>>    virtio-scsi : cleanup : use QOM casts.
>>    virtio-scsi : cleanup : init and exit functions.
>>    virtio-scsi : cleanup : remove qdev field.
>>    virtio-balloon : show the VirtIOBalloon structure.
>>    virtio-balloon : add the virtio-balloon device.
>>    virtio-balloon-pci : switch to the new API.
>>    virtio-balloon : cleanup : init and exit function.
>>    virtio-balloon : cleanup : QOM casts.
>>    virtio-balloon : cleanup : remove qdev field.
>>    virtio-rng : show the VirtIORNG structure.
>>    virtio-rng : don't use pointer for configuration.
>>    virtio-rng : add virtio-rng device.
>>    virtio-rng-s390 : switch to the new API.
>>    virtio-rng-pci : switch to the new API.
>>    virtio-rng.c : cleanup : init and exit functions.
>>    virtio-rng.c : cleanup : remove qdev field.
>>    virtio-rng.c : cleanup : use QOM casts.
>>    virtio-serial : show structures.
>>    virtio-serial : add the virtio-serial device.
>>    virtio-serial-pci : switch to the new API.
>>    virtio-serial-s390 : switch to the new API.
>>    virtio-serial : cleanup : init and exit functions.
>>    virtio-serial : cleanup : use QOM casts.
>>    virtio-serial : cleanup : remove qdev field.
>>    virtio-9p : add the virtio-9p device.
>>    virtio-9p-pci : switch to the new API.
>>    virtio-9p : cleanup : init function.
>>    virtio-9p : cleanup : QOM casts.
>>    virtio : remove the function pointer.
>>    virtio-pci : cleanup : init, exit and reset functions.
>>    s390-virtio-bus : cleanup
>>    virtio : remove virtiobindings.
>>    virtio : cleanup : init and exit function.
>>
>>   hw/9pfs/virtio-9p-device.c | 144 ++++++----
>>   hw/9pfs/virtio-9p.c        |   2 +-
>>   hw/9pfs/virtio-9p.h        |  27 +-
>>   hw/Makefile.objs           |   1 +
>>   hw/qdev-core.h             |   2 +
>>   hw/qdev-monitor.c          |  12 +
>>   hw/s390-virtio-bus.c       | 221 +++++++++------
>>   hw/s390-virtio-bus.h       |  78 ++++-
>>   hw/vhost.c                 |  38 ++-
>>   hw/virtio-balloon.c        | 111 ++++----
>>   hw/virtio-balloon.h        |  14 +
>>   hw/virtio-blk.c            | 148 +++++-----
>>   hw/virtio-blk.h            |  42 +++
>>   hw/virtio-bus.c            | 161 +++++++++++
>>   hw/virtio-bus.h            |  94 +++++++
>>   hw/virtio-net.c            | 270 +++++++++---------
>>   hw/virtio-net.h            |  58 ++++
>>   hw/virtio-pci.c            | 689 +++++++++++++++++++++++++--------------------
>>   hw/virtio-pci.h            | 131 ++++++++-
>>   hw/virtio-rng.c            | 143 ++++++----
>>   hw/virtio-rng.h            |  33 +++
>>   hw/virtio-scsi.c           | 139 +++++----
>>   hw/virtio-scsi.h           |  31 +-
>>   hw/virtio-serial-bus.c     | 199 +++++++------
>>   hw/virtio-serial.h         |  50 ++++
>>   hw/virtio.c                | 156 ++++++----
>>   hw/virtio.h                |  52 ++--
>>   27 files changed, 2018 insertions(+), 1028 deletions(-)
>>   create mode 100644 hw/virtio-bus.c
>>   create mode 100644 hw/virtio-bus.h
>>
>> -- 
>> 1.7.11.7

  reply	other threads:[~2013-01-08 13:41 UTC|newest]

Thread overview: 89+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-01-07 18:40 [Qemu-devel] [PATCH 00/61] Virtio refactoring fred.konrad
2013-01-07 18:40 ` [Qemu-devel] [PATCH 01/61] qdev : add a maximum device allowed field for the bus fred.konrad
2013-01-08 17:05   ` Peter Maydell
2013-01-07 18:40 ` [Qemu-devel] [PATCH 02/61] virtio-bus : introduce virtio-bus fred.konrad
2013-01-08 17:09   ` Peter Maydell
2013-01-07 18:40 ` [Qemu-devel] [PATCH 03/61] virtio-pci-bus : introduce virtio-pci-bus fred.konrad
2013-01-08 18:08   ` Peter Maydell
2013-01-09  8:37     ` KONRAD Frédéric
2013-01-09  9:14       ` KONRAD Frédéric
2013-01-09 14:53         ` Peter Maydell
2013-01-09 14:55           ` KONRAD Frédéric
2013-01-07 18:40 ` [Qemu-devel] [PATCH 04/61] virtio-pci : refactor virtio-pci device fred.konrad
2013-01-08 17:54   ` Peter Maydell
2013-01-09  8:45     ` KONRAD Frédéric
2013-01-09 14:33       ` Peter Maydell
2013-01-07 18:40 ` [Qemu-devel] [PATCH 05/61] virtio-device : refactor virtio-device fred.konrad
2013-01-07 18:40 ` [Qemu-devel] [PATCH 06/61] virtio-s390-bus : add virtio-s390-bus fred.konrad
2013-01-07 18:40 ` [Qemu-devel] [PATCH 07/61] virtio-s390-device : create a virtio-s390-bus during init fred.konrad
2013-01-07 18:40 ` [Qemu-devel] [PATCH 08/61] virtio-blk : show VirtIOBlock structure fred.konrad
2013-01-08 16:18   ` Peter Maydell
2013-01-07 18:40 ` [Qemu-devel] [PATCH 09/61] virtio-blk : don't use pointer for configuration fred.konrad
2013-01-07 18:40 ` [Qemu-devel] [PATCH 10/61] virtio-blk : add the virtio-blk device fred.konrad
2013-01-07 18:40 ` [Qemu-devel] [PATCH 11/61] virtio-blk-pci : switch to new API fred.konrad
2013-01-07 18:40 ` [Qemu-devel] [PATCH 12/61] virtio-blk-s390 : switch to the " fred.konrad
2013-01-07 18:40 ` [Qemu-devel] [PATCH 13/61] virtio-blk : cleanup : use QOM cast fred.konrad
2013-01-07 18:40 ` [Qemu-devel] [PATCH 14/61] virtio-blk : cleanup : remove qdev field fred.konrad
2013-01-07 18:40 ` [Qemu-devel] [PATCH 15/61] virtio-net : show the VirtIONet structure fred.konrad
2013-01-07 18:40 ` [Qemu-devel] [PATCH 16/61] virtio-net : add the virtio-net device fred.konrad
2013-01-07 18:40 ` [Qemu-devel] [PATCH 17/61] virtio-net-pci : switch to the new API fred.konrad
2013-01-07 18:40 ` [Qemu-devel] [PATCH 18/61] virtio-net-s390 " fred.konrad
2013-01-07 18:40 ` [Qemu-devel] [PATCH 19/61] virtio-net : cleanup : use QOM cast fred.konrad
2013-01-07 21:16   ` Michael S. Tsirkin
2013-01-07 21:17     ` Anthony Liguori
2013-01-07 21:33       ` Michael S. Tsirkin
2013-01-07 21:53         ` Anthony Liguori
2013-01-07 18:40 ` [Qemu-devel] [PATCH 20/61] virtio-net : cleanup : init and exit function fred.konrad
2013-01-07 18:40 ` [Qemu-devel] [PATCH 21/61] virtio-net : cleanup : remove qdev field fred.konrad
2013-01-07 18:40 ` [Qemu-devel] [PATCH 22/61] virtio-scsi : show the VirtIOSCSI structure fred.konrad
2013-01-07 18:40 ` [Qemu-devel] [PATCH 23/61] virtio-scsi : don't use pointer for configuration fred.konrad
2013-01-07 18:40 ` [Qemu-devel] [PATCH 24/61] virtio-scsi : allocate cmd_vqs array separately fred.konrad
2013-01-07 18:40 ` [Qemu-devel] [PATCH 25/61] virtio-scsi : moving host_features from properties to transport properties fred.konrad
2013-01-07 18:40 ` [Qemu-devel] [PATCH 26/61] virtio-scsi : add the virtio-scsi device fred.konrad
2013-01-07 18:40 ` [Qemu-devel] [PATCH 27/61] virtio-scsi-pci : switch to new API fred.konrad
2013-01-07 18:40 ` [Qemu-devel] [PATCH 28/61] virtio-scsi-s390 : switch to the " fred.konrad
2013-01-07 18:40 ` [Qemu-devel] [PATCH 29/61] virtio-scsi : cleanup : use QOM casts fred.konrad
2013-01-07 18:40 ` [Qemu-devel] [PATCH 30/61] virtio-scsi : cleanup : init and exit functions fred.konrad
2013-01-07 18:40 ` [Qemu-devel] [PATCH 31/61] virtio-scsi : cleanup : remove qdev field fred.konrad
2013-01-07 18:40 ` [Qemu-devel] [PATCH 32/61] virtio-balloon : show the VirtIOBalloon structure fred.konrad
2013-01-07 18:40 ` [Qemu-devel] [PATCH 33/61] virtio-balloon : add the virtio-balloon device fred.konrad
2013-01-07 18:40 ` [Qemu-devel] [PATCH 34/61] virtio-balloon-pci : switch to the new API fred.konrad
2013-01-07 18:40 ` [Qemu-devel] [PATCH 35/61] virtio-balloon : cleanup : init and exit function fred.konrad
2013-01-07 18:40 ` [Qemu-devel] [PATCH 36/61] virtio-balloon : cleanup : QOM casts fred.konrad
2013-01-07 18:40 ` [Qemu-devel] [PATCH 37/61] virtio-balloon : cleanup : remove qdev field fred.konrad
2013-01-07 18:40 ` [Qemu-devel] [PATCH 38/61] virtio-rng : show the VirtIORNG structure fred.konrad
2013-01-07 18:40 ` [Qemu-devel] [PATCH 39/61] virtio-rng : don't use pointer for configuration fred.konrad
2013-01-07 18:40 ` [Qemu-devel] [PATCH 40/61] virtio-rng : add virtio-rng device fred.konrad
2013-01-07 18:40 ` [Qemu-devel] [PATCH 41/61] virtio-rng-s390 : switch to the new API fred.konrad
2013-01-07 18:40 ` [Qemu-devel] [PATCH 42/61] virtio-rng-pci " fred.konrad
2013-01-07 18:40 ` [Qemu-devel] [PATCH 43/61] virtio-rng.c : cleanup : init and exit functions fred.konrad
2013-01-07 18:40 ` [Qemu-devel] [PATCH 44/61] virtio-rng.c : cleanup : remove qdev field fred.konrad
2013-01-07 18:40 ` [Qemu-devel] [PATCH 45/61] virtio-rng.c : cleanup : use QOM casts fred.konrad
2013-01-07 18:40 ` [Qemu-devel] [PATCH 46/61] virtio-serial : show structures fred.konrad
2013-01-07 18:41 ` [Qemu-devel] [PATCH 47/61] virtio-serial : add the virtio-serial device fred.konrad
2013-01-07 18:41 ` [Qemu-devel] [PATCH 48/61] virtio-serial-pci : switch to the new API fred.konrad
2013-01-07 18:41 ` [Qemu-devel] [PATCH 49/61] virtio-serial-s390 " fred.konrad
2013-01-07 18:41 ` [Qemu-devel] [PATCH 50/61] virtio-serial : cleanup : init and exit functions fred.konrad
2013-01-07 18:41 ` [Qemu-devel] [PATCH 51/61] virtio-serial : cleanup : use QOM casts fred.konrad
2013-01-07 18:41 ` [Qemu-devel] [PATCH 52/61] virtio-serial : cleanup : remove qdev field fred.konrad
2013-01-07 18:41 ` [Qemu-devel] [PATCH 53/61] virtio-9p : add the virtio-9p device fred.konrad
2013-01-07 18:41 ` [Qemu-devel] [PATCH 54/61] virtio-9p-pci : switch to the new API fred.konrad
2013-01-07 18:41 ` [Qemu-devel] [PATCH 55/61] virtio-9p : cleanup : init function fred.konrad
2013-01-07 18:41 ` [Qemu-devel] [PATCH 56/61] virtio-9p : cleanup : QOM casts fred.konrad
2013-01-07 18:41 ` [Qemu-devel] [PATCH 57/61] virtio : remove the function pointer fred.konrad
2013-01-09 20:40   ` Blue Swirl
2013-01-09 21:44     ` KONRAD Frédéric
2013-01-12  9:50       ` Blue Swirl
2013-01-07 18:41 ` [Qemu-devel] [PATCH 58/61] virtio-pci : cleanup : init, exit and reset functions fred.konrad
2013-01-07 18:41 ` [Qemu-devel] [PATCH 59/61] s390-virtio-bus : cleanup fred.konrad
2013-01-07 18:41 ` [Qemu-devel] [PATCH 60/61] virtio : remove virtiobindings fred.konrad
2013-01-07 18:41 ` [Qemu-devel] [PATCH 61/61] virtio : cleanup : init and exit function fred.konrad
2013-01-07 19:11 ` [Qemu-devel] [PATCH 00/61] Virtio refactoring Anthony Liguori
2013-01-08 13:40   ` KONRAD Frédéric [this message]
2013-01-08 15:54   ` Peter Maydell
2013-01-08 16:22     ` Anthony Liguori
2013-01-08 16:25       ` Peter Maydell
2013-01-07 20:04 ` Michael S. Tsirkin
2013-01-07 20:15   ` Anthony Liguori
2013-01-08 14:21 ` Peter Maydell
2013-01-08 14:33   ` KONRAD Frédéric

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=50EC21E9.9030106@greensocs.com \
    --to=fred.konrad@greensocs.com \
    --cc=afaerber@suse.de \
    --cc=agraf@suse.de \
    --cc=aliguori@us.ibm.com \
    --cc=amit.shah@redhat.com \
    --cc=aneesh.kumar@linux.vnet.ibm.com \
    --cc=cornelia.huck@de.ibm.com \
    --cc=e.voevodin@samsung.com \
    --cc=kwolf@redhat.com \
    --cc=mark.burton@greensocs.com \
    --cc=mst@redhat.com \
    --cc=pbonzini@redhat.com \
    --cc=peter.maydell@linaro.org \
    --cc=qemu-devel@nongnu.org \
    --cc=stefanha@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.