[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 00/10] vhost-user: simple reconnection support
From: |
marcandre . lureau |
Subject: |
[Qemu-devel] [PATCH 00/10] vhost-user: simple reconnection support |
Date: |
Mon, 6 Jun 2016 18:44:58 +0200 |
From: Marc-André Lureau <address@hidden>
Hi,
In a previous series "RFCv2: vhost-user: shutdown and reconnection", I
proposed to add a new slave request to handle graceful shutdown, for
both qemu configuration, server or client, while keeping the guest
running with link down status.
However, for the simple case where qemu is configured as server, and
the backend processes packets in order and disconnects, it is possible
for the backend to recover after reconnection by discarding the qemu
SET_VRING_BASE value and resuming from the used->index instead. This
simplifies the reconnection support in this particular situation (it
would make sense to have the backend declare this behaviour with an
extra flag)
The guest won't be notified of link status change and queues may not
be processed in a timely manner, also qemu may assert if some
vhost-user commands are happening while the backend is disconnected.
So the reconnection must happen "quickly enough" here. In order to
keep the series relatively small, these further problems will be
addressed later.
These series demonstrates a simple reconnect support for vubr
(configured as client and qemu as server), includes some nice to
have fixes and a simple test.
rfcv3->v1:
- rebased
- added add a dummy vhost_net_get_acked_features()
implementation for !VHOST_NET
- changed vubr->tests/vhost-user-bridge in summary
- made the test silent by using a subprocess
- added s-o-b/tested-by/r-b tags
Marc-André Lureau (8):
tests/vhost-user-bridge: add client mode
tests/vhost-user-bridge: workaround stale vring base
vhost-user: disconnect on start failure
vhost-net: do not crash if backend is not present
vhost-net: save & restore vhost-user acked features
vhost-net: save & restore vring enable state
tests: append i386 tests
test: start vhost-user reconnect test
Tetsuya Mukawa (2):
vhost-user: add ability to know vhost-user backend disconnection
qemu-char: add qemu_chr_disconnect to close a fd accepted by listen fd
hw/net/vhost_net.c | 45 ++++++++++++++-
include/net/net.h | 1 +
include/net/vhost-user.h | 1 +
include/net/vhost_net.h | 3 +
include/sysemu/char.h | 7 +++
net/vhost-user.c | 32 ++++++++++-
qemu-char.c | 8 +++
tests/Makefile | 2 +-
tests/vhost-user-bridge.c | 45 +++++++++++----
tests/vhost-user-test.c | 136 ++++++++++++++++++++++++++++++++++++++++------
10 files changed, 247 insertions(+), 33 deletions(-)
--
2.7.4