qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH 00/41] virtio: port to vmstate
@ 2009-12-02 12:03 Juan Quintela
  2009-12-02 12:03 ` [Qemu-devel] [PATCH 01/41] virtio: Teach virtio-balloon about DO_UPCAST Juan Quintela
                   ` (40 more replies)
  0 siblings, 41 replies; 96+ messages in thread
From: Juan Quintela @ 2009-12-02 12:03 UTC (permalink / raw)
  To: qemu-devel; +Cc: mst

Hi

this patch series run on top of my previous vmstate cleanups and fixes.
It ports virtio* and msix at the same time (msix and virtio-pci are too entangled
to do it separately).  It contains:

- Use DO_UPCAST instead of local function for doing the casts
- virtio: add a type field (pci and syborg by now).
- strange pci bindings for virtio are gone (i.e. config and queues are handled
  explicitely for pci, the ones that used them).
- virtio-net: make vlans to use uint8_t instead of uint32_t array, that
  makes it work through big_endian/low endian migrations.  This needs testing
  from people that use the feature.
- virtio-blk: It has no hope for migration between 32/64bits hosts or
  big-endian/little-endian.  It sends a structure with memcpy that contains:
  - target_phys_addr_t (32 or 64 bits depending on host/guest)
  - void *             (again it depends on host)
  - size_t             (it depends on host again)
  I didn't changed it, but we should.
- virtio-blk: change the list of requests to QLIST.  I also needed a
  QLIST_COPY_HEAD to not have to break the abstraction, created it.

Later, Juan.

Juan Quintela (40):
  virtio: Teach virtio-balloon about DO_UPCAST
  virtio: Teach virtio-blk about DO_UPCAST
  virtio: Teach virtio-console about DO_UPCAST
  virtio: Teach virtio-net about DO_UPCAST
  virtio-console: Remove useless casts
  virtio: Use DO_UPCAST instead of a cast
  virtio-pci: Remove duplicate test
  msix: Store sizes that we send/receive
  msix: port to vmstate
  virtio: Introduce type field to distingish between PCI and Syborg
  virtio-pci: port pci config to vmstate
  msix: msix_load/save are not needed anymore
  virtio: remove save/load_config for virtio
  virtio: remove save/load_queue for virtio
  virtio: Add num_pci_queues field
  virtio: split virtio_post_load() from virtio_load()
  virtio: change config_len type to int32_t
  virtio: use the right types for VirtQueue elements
  virtio: abstract test for save/load values
  virtio: port to vmstate
  virtio-net: change tx_timer_active to uint32_t
  virtio-net: change mergeable_rx_bufs to uint32_t
  virtio-net: use type checking version of qemu_put/get-*
  virtio-net: MAC_TABLE_ENTRIES has never been bigger
  virtio-net: we know vlans size at compile time, make it static
  virtio-net: abstract vlans operations
  virtio-net: make vlan operations on uint8_t, not uint32_t
  virtio-net: in_use and first_multi only handle unsigned values
  virtio-net: use save/load type chek functions for has_vent_hdr
  virtio-net: we know macs size at compile time, make it static
  virtio-net: split virtio_net_post_load
  virtio-net: port to vmstate
  virtio-console: port to vmstate
  virtio-balloon: port to vmstate
  virtio-blk: change rq type to VirtIOBlockReq
  QLIST: Introduce QLIST_COPY_HEAD
  virtio-blk: use QLIST for the list of requests
  virtio-blk: add VirtIOBlokReqHead type
  virtio-blk: port to vmstate
  virtio: virtio_save/load are not used anymore

Michael S. Tsirkin (1):
  qemu/pci: document msix_entries_nr field

 hw/hw.h             |   10 +++
 hw/msix.c           |   37 ++++++---
 hw/msix.h           |    3 +-
 hw/pci.h            |    6 +-
 hw/syborg_virtio.c  |    1 +
 hw/virtio-balloon.c |   53 +++++---------
 hw/virtio-blk.c     |  101 +++++++++++++++----------
 hw/virtio-console.c |   43 ++++-------
 hw/virtio-net.c     |  207 +++++++++++++++++++++++++--------------------------
 hw/virtio-pci.c     |   80 ++++++++++---------
 hw/virtio.c         |  138 ++++++++++++++++++++++------------
 hw/virtio.h         |   24 ++++--
 qemu-queue.h        |    4 +
 13 files changed, 390 insertions(+), 317 deletions(-)

^ permalink raw reply	[flat|nested] 96+ messages in thread

end of thread, other threads:[~2009-12-04 18:21 UTC | newest]

Thread overview: 96+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-12-02 12:03 [Qemu-devel] [PATCH 00/41] virtio: port to vmstate Juan Quintela
2009-12-02 12:03 ` [Qemu-devel] [PATCH 01/41] virtio: Teach virtio-balloon about DO_UPCAST Juan Quintela
2009-12-02 18:40   ` [Qemu-devel] " Michael S. Tsirkin
2009-12-02 12:04 ` [Qemu-devel] [PATCH 02/41] virtio: Teach virtio-blk " Juan Quintela
2009-12-02 12:04 ` [Qemu-devel] [PATCH 03/41] virtio: Teach virtio-console " Juan Quintela
2009-12-02 12:04 ` [Qemu-devel] [PATCH 04/41] virtio: Teach virtio-net " Juan Quintela
2009-12-02 12:04 ` [Qemu-devel] [PATCH 05/41] virtio-console: Remove useless casts Juan Quintela
2009-12-02 12:04 ` [Qemu-devel] [PATCH 06/41] virtio: Use DO_UPCAST instead of a cast Juan Quintela
2009-12-02 13:41   ` [Qemu-devel] " Michael S. Tsirkin
2009-12-02 18:19     ` Juan Quintela
2009-12-02 18:19       ` Michael S. Tsirkin
2009-12-02 18:42         ` Juan Quintela
2009-12-02 18:44           ` Michael S. Tsirkin
2009-12-02 19:03             ` Juan Quintela
2009-12-03  9:48               ` Michael S. Tsirkin
2009-12-03 11:56                 ` Juan Quintela
2009-12-03 12:04                   ` Michael S. Tsirkin
2009-12-03 12:55                     ` Juan Quintela
2009-12-03 13:39                       ` Avi Kivity
2009-12-02 12:04 ` [Qemu-devel] [PATCH 07/41] virtio-pci: Remove duplicate test Juan Quintela
2009-12-02 12:04 ` [Qemu-devel] [PATCH 08/41] msix: Store sizes that we send/receive Juan Quintela
2009-12-02 13:39   ` [Qemu-devel] " Michael S. Tsirkin
2009-12-02 12:04 ` [Qemu-devel] [PATCH 09/41] msix: port to vmstate Juan Quintela
2009-12-02 12:04 ` [Qemu-devel] [PATCH 10/41] qemu/pci: document msix_entries_nr field Juan Quintela
2009-12-02 12:04 ` [Qemu-devel] [PATCH 11/41] virtio: Introduce type field to distingish between PCI and Syborg Juan Quintela
2009-12-02 18:42   ` [Qemu-devel] " Michael S. Tsirkin
2009-12-02 12:04 ` [Qemu-devel] [PATCH 12/41] virtio-pci: port pci config to vmstate Juan Quintela
2009-12-02 14:39   ` [Qemu-devel] " Michael S. Tsirkin
2009-12-02 12:04 ` [Qemu-devel] [PATCH 13/41] msix: msix_load/save are not needed anymore Juan Quintela
2009-12-02 12:04 ` [Qemu-devel] [PATCH 14/41] virtio: remove save/load_config for virtio Juan Quintela
2009-12-02 12:04 ` [Qemu-devel] [PATCH 15/41] virtio: remove save/load_queue " Juan Quintela
2009-12-02 14:43   ` [Qemu-devel] " Michael S. Tsirkin
2009-12-02 18:22     ` Juan Quintela
2009-12-02 18:27       ` Michael S. Tsirkin
2009-12-02 18:50         ` Juan Quintela
2009-12-02 18:57           ` Michael S. Tsirkin
2009-12-02 12:04 ` [Qemu-devel] [PATCH 16/41] virtio: Add num_pci_queues field Juan Quintela
2009-12-02 14:46   ` [Qemu-devel] " Michael S. Tsirkin
2009-12-02 12:04 ` [Qemu-devel] [PATCH 17/41] virtio: split virtio_post_load() from virtio_load() Juan Quintela
2009-12-02 12:04 ` [Qemu-devel] [PATCH 18/41] virtio: change config_len type to int32_t Juan Quintela
2009-12-02 12:04 ` [Qemu-devel] [PATCH 19/41] virtio: use the right types for VirtQueue elements Juan Quintela
2009-12-02 13:47   ` [Qemu-devel] " Michael S. Tsirkin
2009-12-02 18:24     ` Juan Quintela
2009-12-02 18:24       ` Michael S. Tsirkin
2009-12-02 12:04 ` [Qemu-devel] [PATCH 20/41] virtio: abstract test for save/load values Juan Quintela
2009-12-02 13:53   ` [Qemu-devel] " Michael S. Tsirkin
2009-12-02 12:04 ` [Qemu-devel] [PATCH 21/41] virtio: port to vmstate Juan Quintela
2009-12-02 18:22   ` [Qemu-devel] " Michael S. Tsirkin
2009-12-02 12:04 ` [Qemu-devel] [PATCH 22/41] virtio-net: change tx_timer_active to uint32_t Juan Quintela
2009-12-02 12:04 ` [Qemu-devel] [PATCH 23/41] virtio-net: change mergeable_rx_bufs " Juan Quintela
2009-12-02 12:04 ` [Qemu-devel] [PATCH 24/41] virtio-net: use type checking version of qemu_put/get-* Juan Quintela
2009-12-02 12:04 ` [Qemu-devel] [PATCH 25/41] virtio-net: MAC_TABLE_ENTRIES has never been bigger Juan Quintela
2009-12-02 12:04 ` [Qemu-devel] [PATCH 26/41] virtio-net: we know vlans size at compile time, make it static Juan Quintela
2009-12-02 12:04 ` [Qemu-devel] [PATCH 27/41] virtio-net: abstract vlans operations Juan Quintela
2009-12-02 14:49   ` [Qemu-devel] " Michael S. Tsirkin
2009-12-02 18:26     ` Juan Quintela
2009-12-02 18:29       ` Michael S. Tsirkin
2009-12-02 18:53         ` Juan Quintela
2009-12-02 12:04 ` [Qemu-devel] [PATCH 28/41] virtio-net: make vlan operations on uint8_t, not uint32_t Juan Quintela
2009-12-02 14:50   ` [Qemu-devel] " Michael S. Tsirkin
2009-12-02 12:04 ` [Qemu-devel] [PATCH 29/41] virtio-net: in_use and first_multi only handle unsigned values Juan Quintela
2009-12-02 14:52   ` [Qemu-devel] " Michael S. Tsirkin
2009-12-02 18:30     ` Juan Quintela
2009-12-02 18:32       ` Michael S. Tsirkin
2009-12-02 18:55         ` Juan Quintela
2009-12-02 18:58           ` Michael S. Tsirkin
2009-12-02 12:04 ` [Qemu-devel] [PATCH 30/41] virtio-net: use save/load type chek functions for has_vent_hdr Juan Quintela
2009-12-02 12:04 ` [Qemu-devel] [PATCH 31/41] virtio-net: we know macs size at compile time, make it static Juan Quintela
2009-12-02 14:54   ` [Qemu-devel] " Michael S. Tsirkin
2009-12-02 18:33     ` Juan Quintela
2009-12-02 18:48       ` Alex Williamson
2009-12-02 12:04 ` [Qemu-devel] [PATCH 32/41] virtio-net: split virtio_net_post_load Juan Quintela
2009-12-02 12:04 ` [Qemu-devel] [PATCH 33/41] virtio-net: port to vmstate Juan Quintela
2009-12-02 14:58   ` [Qemu-devel] " Michael S. Tsirkin
2009-12-02 18:38     ` Juan Quintela
2009-12-02 18:40       ` Michael S. Tsirkin
2009-12-02 19:07         ` Juan Quintela
2009-12-02 18:37   ` Michael S. Tsirkin
2009-12-02 19:18     ` Juan Quintela
2009-12-03  9:19       ` Michael S. Tsirkin
2009-12-03 12:01         ` Juan Quintela
2009-12-02 12:04 ` [Qemu-devel] [PATCH 34/41] virtio-console: " Juan Quintela
2009-12-02 12:04 ` [Qemu-devel] [PATCH 35/41] virtio-balloon: " Juan Quintela
2009-12-02 12:04 ` [Qemu-devel] [PATCH 36/41] virtio-blk: change rq type to VirtIOBlockReq Juan Quintela
2009-12-02 12:04 ` [Qemu-devel] [PATCH 37/41] QLIST: Introduce QLIST_COPY_HEAD Juan Quintela
2009-12-02 12:04 ` [Qemu-devel] [PATCH 38/41] virtio-blk: use QLIST for the list of requests Juan Quintela
2009-12-02 17:38   ` [Qemu-devel] " Michael S. Tsirkin
2009-12-02 18:56     ` Juan Quintela
2009-12-02 19:00       ` Michael S. Tsirkin
2009-12-02 12:04 ` [Qemu-devel] [PATCH 39/41] virtio-blk: add VirtIOBlokReqHead type Juan Quintela
2009-12-02 12:04 ` [Qemu-devel] [PATCH 40/41] virtio-blk: port to vmstate Juan Quintela
2009-12-02 17:54   ` [Qemu-devel] " Michael S. Tsirkin
2009-12-04 18:15     ` Anthony Liguori
2009-12-02 12:04 ` [Qemu-devel] [PATCH 41/41] virtio: virtio_save/load are not used anymore Juan Quintela
2009-12-02 18:17   ` [Qemu-devel] " Michael S. Tsirkin
2009-12-02 18:57     ` Juan Quintela

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).