[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH for-4.0 0/6] vhost-user-blk: Add support for bac
From: |
Marc-André Lureau |
Subject: |
Re: [Qemu-devel] [PATCH for-4.0 0/6] vhost-user-blk: Add support for backend reconnecting |
Date: |
Thu, 6 Dec 2018 11:23:17 +0400 |
Hi
On Thu, Dec 6, 2018 at 10:36 AM <address@hidden> wrote:
>
> From: Xie Yongji <address@hidden>
>
> 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 \
Why do you want qemu to be the client since it is actually the one
that serves and remains alive? Why make it try to reconnect regularly
when it could instead wait for a connection to come up?
>
> 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
>
>
--
Marc-André Lureau
- [Qemu-devel] [PATCH for-4.0 3/6] libvhost-user: Introduce vu_queue_map_desc(), (continued)
- [Qemu-devel] [PATCH for-4.0 3/6] libvhost-user: Introduce vu_queue_map_desc(), elohimes, 2018/12/06
- [Qemu-devel] [PATCH for-4.0 2/6] vhost-user: Add shared memory to record inflight I/O, elohimes, 2018/12/06
- [Qemu-devel] [PATCH for-4.0 4/6] libvhost-user: Support recording inflight I/O in shared memory, elohimes, 2018/12/06
- [Qemu-devel] [PATCH for-4.0 5/6] vhost-user-blk: Add support for reconnecting backend, elohimes, 2018/12/06
- [Qemu-devel] [PATCH for-4.0 6/6] contrib/vhost-user-blk: enable inflight I/O recording, elohimes, 2018/12/06
- Re: [Qemu-devel] [PATCH for-4.0 0/6] vhost-user-blk: Add support for backend reconnecting,
Marc-André Lureau <=
- Re: [Qemu-devel] [PATCH for-4.0 0/6] vhost-user-blk: Add support for backend reconnecting, Yury Kotov, 2018/12/06
- Re: [Qemu-devel] [PATCH for-4.0 0/6] vhost-user-blk: Add support for backend reconnecting, Jason Wang, 2018/12/06