From: Juan Quintela <quintela@redhat.com>
To: David Woodhouse <dwmw2@infradead.org>
Cc: "Peter Maydell" <peter.maydell@linaro.org>,
qemu-devel@nongnu.org, "Paolo Bonzini" <pbonzini@redhat.com>,
"Paul Durrant" <paul@xen.org>,
"Joao Martins" <joao.m.martins@oracle.com>,
"Ankur Arora" <ankur.a.arora@oracle.com>,
"Philippe Mathieu-Daudé" <philmd@linaro.org>,
"Thomas Huth" <thuth@redhat.com>,
"Alex Bennée" <alex.bennee@linaro.org>,
"Dr . David Alan Gilbert" <dgilbert@redhat.com>,
"Claudio Fontana" <cfontana@suse.de>,
"Julien Grall" <julien@xen.org>,
"Michael S. Tsirkin" <mst@redhat.com>,
"Marcel Apfelbaum" <marcel.apfelbaum@gmail.com>,
armbru@redhat.com, "Stefano Stabellini" <sstabellini@kernel.org>,
vikram.garhwal@amd.com
Subject: Re: [RFC PATCH v11bis 00/26] Emulated XenStore and PV backend support
Date: Thu, 16 Feb 2023 15:02:46 +0100 [thread overview]
Message-ID: <871qmpk8s9.fsf@secure.mitica> (raw)
In-Reply-To: <ca90895e752c860d4e7251d52bac6ee572b3874c.camel@infradead.org> (David Woodhouse's message of "Thu, 16 Feb 2023 14:51:01 +0100")
David Woodhouse <dwmw2@infradead.org> wrote:
> --=-jDk4SYxkcOAZoZa6DCVr
> Content-Type: text/plain; charset="UTF-8"
> Content-Transfer-Encoding: quoted-printable
>
> On Thu, 2023-02-16 at 11:49 +0100, Juan Quintela wrote:
>> David Woodhouse <dwmw2@infradead.org> wrote:
>> > The non-RFC patch submisson=C2=B9 is just the basic platform support fo=
> r Xen
>> > on KVM. This RFC series is phase 2, adding an internal XenStore and
>> > hooking up the PV back end drivers to that and the emulated grant table=
> s
>> > and event channels.
>> >=20
>> > With this, we can boot a Xen guest with PV disk, under KVM. Full suppor=
> t
>> > for migration isn't there yet because it's actually missing in the PV
>> > back end drivers in the first place (perhaps because upstream Xen doesn=
> 't
>> > yet have guest transparent live migration support anyway). I'm assuming
>> > that when the first round is merged and we drop the [RFC] from this set=
> ,
>> > that won't be a showstopper for now?
>> >=20
>> > I'd be particularly interested in opinions on the way I implemented
>> > serialization for the XenStore, by creating a GByteArray and then dumpi=
> ng
>> > it with VMSTATE_VARRAY_UINT32_ALLOC().
>>=20
>> And I was wondering why I was CC'd in the whole series O:-)
>>=20
>
> Indeed, Philippe M-D added you to Cc when discussing migrations on the
> first RFC submission back in December, and you've been included ever
> since.
>
>
>> How big is the xenstore?
>> I mean typical size and maximun size.
>>=20
>
> Booting a simple instance with a single disk:
>
> $ scripts/analyze-migration.py -f foo | grep impl_state_size
> "impl_state_size": "0x00000634",
>
> Theoretical maximum is about 1000 nodes @2KiB, so around 2MiB.
>
>> If it is suficientely small (i.e. in the single unit megabytes), you can
>> send it as a normal device at the end of migration.
>>=20
>
> Right now it's part of the xen_xenstore device. Most of that is fairly
> simple and it's just the impl_state that's slightly different.
>
>
>> If it is bigger, I think that you are going to have to enter Migration
>> iteration stage, and have some kind of dirty bitmap to know what entries
>> are on the target and what not.
>>=20
>
> We have COW and transactions; that isn't an impossibility; I think we
> can avoid that complexity though.
It is relatively small. I will go with migrating at the end of
migration for now. Later we can measure if we need to improve
performance there.
Later, Juan.
next prev parent reply other threads:[~2023-02-16 14:03 UTC|newest]
Thread overview: 31+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-02-16 9:44 [RFC PATCH v11bis 00/26] Emulated XenStore and PV backend support David Woodhouse
2023-02-16 9:44 ` [RFC PATCH v11bis 01/26] hw/xen: Add xenstore wire implementation and implementation stubs David Woodhouse
2023-02-16 9:44 ` [RFC PATCH v11bis 02/26] hw/xen: Add basic XenStore tree walk and write/read/directory support David Woodhouse
2023-02-16 9:44 ` [RFC PATCH v11bis 03/26] hw/xen: Implement XenStore watches David Woodhouse
2023-02-16 9:44 ` [RFC PATCH v11bis 04/26] hw/xen: Implement XenStore transactions David Woodhouse
2023-02-16 9:44 ` [RFC PATCH v11bis 05/26] hw/xen: Watches on " David Woodhouse
2023-02-16 9:44 ` [RFC PATCH v11bis 06/26] xenstore perms WIP David Woodhouse
2023-02-16 9:44 ` [RFC PATCH v11bis 07/26] hw/xen: Implement core serialize/deserialize methods for xenstore_impl David Woodhouse
2023-02-16 9:44 ` [RFC PATCH v11bis 08/26] hw/xen: Create initial XenStore nodes David Woodhouse
2023-02-16 9:44 ` [RFC PATCH v11bis 09/26] hw/xen: Add evtchn operations to allow redirection to internal emulation David Woodhouse
2023-02-16 9:44 ` [RFC PATCH v11bis 10/26] hw/xen: Add gnttab " David Woodhouse
2023-02-16 9:44 ` [RFC PATCH v11bis 11/26] hw/xen: Pass grant ref to gnttab unmap operation David Woodhouse
2023-02-16 9:44 ` [RFC PATCH v11bis 12/26] hw/xen: Add foreignmem operations to allow redirection to internal emulation David Woodhouse
2023-02-16 9:44 ` [RFC PATCH v11bis 13/26] hw/xen: Add xenstore " David Woodhouse
2023-02-16 9:44 ` [RFC PATCH v11bis 14/26] hw/xen: Move xenstore_store_pv_console_info to xen_console.c David Woodhouse
2023-02-16 9:44 ` [RFC PATCH v11bis 15/26] hw/xen: Use XEN_PAGE_SIZE in PV backend drivers David Woodhouse
2023-02-16 9:44 ` [RFC PATCH v11bis 16/26] hw/xen: Rename xen_common.h to xen_native.h David Woodhouse
2023-02-16 9:44 ` [RFC PATCH v11bis 17/26] hw/xen: Build PV backend drivers for CONFIG_XEN_BUS David Woodhouse
2023-02-16 9:44 ` [RFC PATCH v11bis 18/26] hw/xen: Avoid crash when backend watch fires too early David Woodhouse
2023-02-16 9:44 ` [RFC PATCH v11bis 19/26] hw/xen: Only advertise ring-page-order for xen-block if gnttab supports it David Woodhouse
2023-02-16 9:44 ` [RFC PATCH v11bis 20/26] hw/xen: Hook up emulated implementation for event channel operations David Woodhouse
2023-02-16 9:44 ` [RFC PATCH v11bis 21/26] hw/xen: Add emulated implementation of grant table operations David Woodhouse
2023-02-16 9:44 ` [RFC PATCH v11bis 22/26] hw/xen: Add emulated implementation of XenStore operations David Woodhouse
2023-02-16 9:44 ` [RFC PATCH v11bis 23/26] hw/xen: Map guest XENSTORE_PFN grant in emulated Xenstore David Woodhouse
2023-02-16 9:44 ` [RFC PATCH v11bis 24/26] hw/xen: Implement soft reset for emulated gnttab David Woodhouse
2023-02-16 9:44 ` [RFC PATCH v11bis 25/26] hw/xen: Subsume xen_be_register_common() into xen_be_init() David Woodhouse
2023-02-16 9:44 ` [RFC PATCH v11bis 26/26] i386/xen: Initialize Xen backends from pc_basic_device_init() for emulation David Woodhouse
2023-02-16 10:49 ` [RFC PATCH v11bis 00/26] Emulated XenStore and PV backend support Juan Quintela
2023-02-16 13:51 ` David Woodhouse
2023-02-16 14:02 ` Juan Quintela [this message]
2023-02-16 15:33 ` David Woodhouse
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=871qmpk8s9.fsf@secure.mitica \
--to=quintela@redhat.com \
--cc=alex.bennee@linaro.org \
--cc=ankur.a.arora@oracle.com \
--cc=armbru@redhat.com \
--cc=cfontana@suse.de \
--cc=dgilbert@redhat.com \
--cc=dwmw2@infradead.org \
--cc=joao.m.martins@oracle.com \
--cc=julien@xen.org \
--cc=marcel.apfelbaum@gmail.com \
--cc=mst@redhat.com \
--cc=paul@xen.org \
--cc=pbonzini@redhat.com \
--cc=peter.maydell@linaro.org \
--cc=philmd@linaro.org \
--cc=qemu-devel@nongnu.org \
--cc=sstabellini@kernel.org \
--cc=thuth@redhat.com \
--cc=vikram.garhwal@amd.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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.