[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v4 5/8] vhost-user.rst: Migrating back-end-internal state
|
From: |
Stefan Hajnoczi |
|
Subject: |
Re: [PATCH v4 5/8] vhost-user.rst: Migrating back-end-internal state |
|
Date: |
Thu, 5 Oct 2023 13:46:08 -0400 |
On Wed, Oct 04, 2023 at 02:59:01PM +0200, Hanna Czenczek wrote:
> For vhost-user devices, qemu can migrate the virtio state, but not the
> back-end's internal state. To do so, we need to be able to transfer
> this internal state between front-end (qemu) and back-end.
>
> At this point, this new feature is added for the purpose of virtio-fs
> migration. Because virtiofsd's internal state will not be too large, we
> believe it is best to transfer it as a single binary blob after the
> streaming phase.
>
> These are the additions to the protocol:
> - New vhost-user protocol feature VHOST_USER_PROTOCOL_F_DEVICE_STATE
> - SET_DEVICE_STATE_FD function: Front-end and back-end negotiate a file
> descriptor over which to transfer the state.
> - CHECK_DEVICE_STATE: After the state has been transferred through the
> file descriptor, the front-end invokes this function to verify
> success. There is no in-band way (through the file descriptor) to
> indicate failure, so we need to check explicitly.
>
> Once the transfer FD has been established via SET_DEVICE_STATE_FD
> (which includes establishing the direction of transfer and migration
> phase), the sending side writes its data into it, and the reading side
> reads it until it sees an EOF. Then, the front-end will check for
> success via CHECK_DEVICE_STATE, which on the destination side includes
> checking for integrity (i.e. errors during deserialization).
>
> Signed-off-by: Hanna Czenczek <hreitz@redhat.com>
> ---
> docs/interop/vhost-user.rst | 172 ++++++++++++++++++++++++++++++++++++
> 1 file changed, 172 insertions(+)
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
signature.asc
Description: PGP signature
[PATCH v4 4/8] vhost-user.rst: Introduce suspended state, Hanna Czenczek, 2023/10/04
[PATCH v4 5/8] vhost-user.rst: Migrating back-end-internal state, Hanna Czenczek, 2023/10/04
- Re: [PATCH v4 5/8] vhost-user.rst: Migrating back-end-internal state,
Stefan Hajnoczi <=
[PATCH v4 2/8] vhost-user.rst: Improve [GS]ET_VRING_BASE doc, Hanna Czenczek, 2023/10/04
- Re: [PATCH v4 2/8] vhost-user.rst: Improve [GS]ET_VRING_BASE doc, Stefan Hajnoczi, 2023/10/05
- Re: [Virtio-fs] [PATCH v4 2/8] vhost-user.rst: Improve [GS]ET_VRING_BASE doc, Hanna Czenczek, 2023/10/06
- Re: [Virtio-fs] [PATCH v4 2/8] vhost-user.rst: Improve [GS]ET_VRING_BASE doc, Michael S. Tsirkin, 2023/10/06
- Re: [Virtio-fs] [PATCH v4 2/8] vhost-user.rst: Improve [GS]ET_VRING_BASE doc, Hanna Czenczek, 2023/10/06
- Re: [Virtio-fs] [PATCH v4 2/8] vhost-user.rst: Improve [GS]ET_VRING_BASE doc, Hanna Czenczek, 2023/10/06
- Re: [Virtio-fs] [PATCH v4 2/8] vhost-user.rst: Improve [GS]ET_VRING_BASE doc, Michael S. Tsirkin, 2023/10/07
- Re: [Virtio-fs] [PATCH v4 2/8] vhost-user.rst: Improve [GS]ET_VRING_BASE doc, Michael S. Tsirkin, 2023/10/07
[PATCH v4 6/8] vhost-user: Interface for migration state transfer, Hanna Czenczek, 2023/10/04