All of lore.kernel.org
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH for-4.0 0/6] vhost-user-blk: Add support for backend reconnecting
@ 2018-12-06  6:35 elohimes
  2018-12-06  6:35 ` [Qemu-devel] [PATCH for-4.0 1/6] char-socket: Enable "wait" option for client mode elohimes
                   ` (9 more replies)
  0 siblings, 10 replies; 44+ messages in thread
From: elohimes @ 2018-12-06  6:35 UTC (permalink / raw)
  To: mst, marcandre.lureau
  Cc: qemu-devel, zhangyu31, chaiwen, nixun, lilin24, Xie Yongji

From: Xie Yongji <xieyongji@baidu.com>

This patchset is aimed at supporting qemu to reconnect
vhost-user-blk backend after vhost-user-blk backend crash or
restart.

The patch 1 tries to implenment the sync connection for
"reconnect socket".

The patch 2 introduces a new message VHOST_USER_SET_VRING_INFLIGHT
to support offering shared memory to backend to record
its inflight I/O.

The patch 3,4 are the corresponding libvhost-user patches of
patch 2. Make libvhost-user support VHOST_USER_SET_VRING_INFLIGHT.

The patch 5 supports vhost-user-blk to reconnect backend when
connection closed.

The patch 6 tells qemu that we support reconnecting now.

To use it, we could start qemu with:

qemu-system-x86_64 \
        -chardev socket,id=char0,path=/path/vhost.socket,reconnect=1,wait \
        -device vhost-user-blk-pci,chardev=char0 \

and start vhost-user-blk backend with:

vhost-user-blk -b /path/file -s /path/vhost.socket

Then we can restart vhost-user-blk at any time during VM running.

Xie Yongji (6):
  char-socket: Enable "wait" option for client mode
  vhost-user: Add shared memory to record inflight I/O
  libvhost-user: Introduce vu_queue_map_desc()
  libvhost-user: Support recording inflight I/O in shared memory
  vhost-user-blk: Add support for reconnecting backend
  contrib/vhost-user-blk: enable inflight I/O recording

 chardev/char-socket.c                   |   5 +-
 contrib/libvhost-user/libvhost-user.c   | 215 ++++++++++++++++++++----
 contrib/libvhost-user/libvhost-user.h   |  19 +++
 contrib/vhost-user-blk/vhost-user-blk.c |   3 +-
 hw/block/vhost-user-blk.c               | 169 +++++++++++++++++--
 hw/virtio/vhost-user.c                  |  69 ++++++++
 hw/virtio/vhost.c                       |   8 +
 include/hw/virtio/vhost-backend.h       |   4 +
 include/hw/virtio/vhost-user-blk.h      |   4 +
 include/hw/virtio/vhost-user.h          |   8 +
 10 files changed, 452 insertions(+), 52 deletions(-)

-- 
2.17.1

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

end of thread, other threads:[~2018-12-15 11:34 UTC | newest]

Thread overview: 44+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-12-06  6:35 [Qemu-devel] [PATCH for-4.0 0/6] vhost-user-blk: Add support for backend reconnecting elohimes
2018-12-06  6:35 ` [Qemu-devel] [PATCH for-4.0 1/6] char-socket: Enable "wait" option for client mode elohimes
2018-12-06  7:23   ` Marc-André Lureau
2018-12-06  7:53     ` Yongji Xie
2018-12-06  9:31   ` Yury Kotov
2018-12-06  6:35 ` [Qemu-devel] [PATCH for-4.0 2/6] vhost-user: Add shared memory to record inflight I/O elohimes
2018-12-06  7:19   ` Marc-André Lureau
2018-12-06  7:22     ` Yongji Xie
2018-12-06  6:35 ` [Qemu-devel] [PATCH for-4.0 3/6] libvhost-user: Introduce vu_queue_map_desc() elohimes
2018-12-06  7:16   ` Marc-André Lureau
2018-12-06  6:35 ` [Qemu-devel] [PATCH for-4.0 4/6] libvhost-user: Support recording inflight I/O in shared memory elohimes
2018-12-06  6:35 ` [Qemu-devel] [PATCH for-4.0 5/6] vhost-user-blk: Add support for reconnecting backend elohimes
2018-12-06 12:21   ` Yury Kotov
2018-12-06 13:26     ` Yongji Xie
2018-12-06  6:35 ` [Qemu-devel] [PATCH for-4.0 6/6] contrib/vhost-user-blk: enable inflight I/O recording elohimes
2018-12-06  7:23 ` [Qemu-devel] [PATCH for-4.0 0/6] vhost-user-blk: Add support for backend reconnecting Marc-André Lureau
2018-12-06  7:43   ` Yongji Xie
2018-12-06  9:21 ` Yury Kotov
2018-12-06  9:41   ` Yongji Xie
2018-12-06  9:52     ` Yury Kotov
2018-12-06 10:35       ` Yongji Xie
2018-12-06 13:57 ` Jason Wang
2018-12-06 13:59   ` Michael S. Tsirkin
2018-12-10  9:32     ` Jason Wang
2018-12-12  2:48       ` Yongji Xie
2018-12-12  3:00         ` Jason Wang
2018-12-12  3:21           ` Yongji Xie
2018-12-12  4:06             ` Jason Wang
2018-12-12  6:41               ` Yongji Xie
2018-12-12  7:47                 ` Jason Wang
2018-12-12  9:18                   ` Yongji Xie
2018-12-13  2:58                     ` Jason Wang
2018-12-13  3:41                       ` Yongji Xie
2018-12-13 14:56                         ` Michael S. Tsirkin
2018-12-14  4:36                           ` Jason Wang
2018-12-14 13:31                             ` Michael S. Tsirkin
2018-12-06 14:00   ` Jason Wang
2018-12-07  8:56   ` Yongji Xie
2018-12-13 14:45 ` Michael S. Tsirkin
2018-12-14  1:56   ` Yongji Xie
2018-12-14  2:20     ` Michael S. Tsirkin
2018-12-14  2:33       ` Yongji Xie
2018-12-14 21:23         ` Michael S. Tsirkin
2018-12-15 11:34           ` Yongji Xie

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.