From: Peter Xu <peterx@redhat.com>
To: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>
Cc: Peter Maydell <peter.maydell@linaro.org>,
Alexandr Moshkov <dtalexundeer@yandex-team.ru>,
qemu-devel@nongnu.org,
"yc-core@yandex-team.ru" <yc-core@yandex-team.ru>,
Fabiano Rosas <farosas@suse.de>
Subject: Re: [PATCH v2] vmstate: fix subsection load name check
Date: Thu, 12 Mar 2026 14:13:06 -0400 [thread overview]
Message-ID: <abMCMrRxdAWCc_hv@x1.local> (raw)
In-Reply-To: <022c929e-ddda-4f74-8786-d01994107415@yandex-team.ru>
On Thu, Mar 12, 2026 at 07:34:34PM +0300, Vladimir Sementsov-Ogievskiy wrote:
> Hmm. Probably, that this is the subsection, that exist only in our downstream.
> I don't know, was it mentioned clearly before, sorry if not.
Ah.. Looks like it was not mentioned in the latest version posted:
https://lore.kernel.org/all/20260312102626.891359-1-dtalexundeer@yandex-team.ru/
Let's always mention this, because it's important piece of info, e.g. to
know upstream has yet no reproducer.
> This subsection just not exist in master, and we are not going to upstream it.
> So, for upstream it's a "theoretical" bug in a protocol, which may be triggered in
> some future moment. And that's why there is not specific case in commit message
> but only assumption "Let's say there is a vmstate ...".
In this case, for upstream we almost only lose but yet unknown gain with
this fix then, because we stop throwing useful info for unknown new
subsections, as PeterM pointed out:
https://lore.kernel.org/all/CAFEAcA_mzXDdz_xjPnZ9Kc4K01Aoss_OH_qEoL3G33KdsnHrLw@mail.gmail.com/
But I agree it is a potential issue, if we cannot justify QEMU can never
hit it.
Sending "how many subsections are there" is one viable option as you said,
but it only solves this small problem, and knowing that number requires src
QEMU looping over the subsections twice so a bit awkward (first time we
need to kickoff ".needed()" hooks to do the counting; not all will be sent).
The other way is to provide level information somehow in the stream.
Say, we could attach START/END markers for each VMSD to be dumped. That
may be able to help in other cases too, e.g. when we accidentally grow some
VMSD fields breaking migration, then IIUC dest QEMU can provide a more
accurate error message when it knows the bound of current VMSD that is
being loaded.
But I'm also not sure if this is worth it yet to fix an imaginary problem.
--
Peter Xu
next prev parent reply other threads:[~2026-03-12 18:13 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-03-02 7:06 [PATCH v2] vmstate: fix subsection load name check Alexandr Moshkov
2026-03-02 17:36 ` Peter Xu
2026-03-06 13:46 ` Fabiano Rosas
2026-03-10 5:32 ` Alexandr Moshkov
2026-03-10 13:27 ` Alexandr Moshkov
2026-03-10 13:39 ` Peter Maydell
2026-03-10 18:00 ` Peter Xu
2026-03-11 6:53 ` Vladimir Sementsov-Ogievskiy
2026-03-11 15:05 ` Peter Xu
2026-03-12 6:30 ` Vladimir Sementsov-Ogievskiy
2026-03-12 15:34 ` Peter Xu
2026-03-12 16:34 ` Vladimir Sementsov-Ogievskiy
2026-03-12 18:13 ` Peter Xu [this message]
2026-03-12 18:27 ` Peter Maydell
2026-03-12 19:25 ` Peter Xu
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=abMCMrRxdAWCc_hv@x1.local \
--to=peterx@redhat.com \
--cc=dtalexundeer@yandex-team.ru \
--cc=farosas@suse.de \
--cc=peter.maydell@linaro.org \
--cc=qemu-devel@nongnu.org \
--cc=vsementsov@yandex-team.ru \
--cc=yc-core@yandex-team.ru \
/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.