All of lore.kernel.org
 help / color / mirror / Atom feed
From: Juan Quintela <quintela@redhat.com>
To: "Michael S. Tsirkin" <mst@redhat.com>
Cc: marcandre.lureau@redhat.com,  qemu-devel@nongnu.org,
	 Peter Xu <peterx@redhat.com>,
	 Samuel Thibault <samuel.thibault@ens-lyon.org>,
	Kevin Wolf <kwolf@redhat.com>,  Fabiano Rosas <farosas@suse.de>,
	Leonardo Bras <leobras@redhat.com>,
	 qemu-block@nongnu.org,  Hanna Reitz <hreitz@redhat.com>,
	 Jason Wang <jasowang@redhat.com>,  John Snow <jsnow@redhat.com>
Subject: Re: [PATCH v3 0/6] migration: check required entries and sections are loaded
Date: Tue, 07 Nov 2023 13:03:44 +0100	[thread overview]
Message-ID: <87zfzpkbxb.fsf@secure.mitica> (raw)
In-Reply-To: <20231106124405-mutt-send-email-mst@kernel.org> (Michael S. Tsirkin's message of "Mon, 6 Nov 2023 12:44:53 -0500")

"Michael S. Tsirkin" <mst@redhat.com> wrote:
> On Mon, Nov 06, 2023 at 03:35:54PM +0400, marcandre.lureau@redhat.com wrote:
>> From: Marc-André Lureau <marcandre.lureau@redhat.com>
>> 
>> Hi,
>> 
>> Surprisingly, the migration code doesn't check that required migration entries
>> and subsections are loaded. Either optional or required sections are both
>> ignored when missing. According to the documentation a "newer QEMU that knows
>> about a subsection can (with care) load a stream from an older QEMU that didn't
>> send the subsection". I propose this behaviour to be limited to "optional"
>> sections only.
>> 
>> This series has a few preliminary fixes, add new checks that entries are
>> loaded once and required ones have been loaded, add some tests and
>> documentation update.
>> 
>> thanks
>
> I think this kind of thing is better deferred to the next release -
> unless you have something specific in mind this fixes?

I agree with you.

Later, Juan.

>> v3:
>>  - rebased, drop RFC status
>>  - switch from tracepoint + returning an error to report for missing
>>    subsections, as we worry about potential regressions
>>  - add r-b tags
>> 
>> v2:
>>  - add "migration: rename vmstate_save_needed->vmstate_section_needed"
>>  - add "migration: set file error on subsection loading"
>>  - add subsection tests
>>  - update the documentation
>> 
>> Marc-André Lureau (6):
>>   block/fdc: 'phase' is not needed on load
>>   virtio: make endian_needed() work during loading
>>   migration: check required subsections are loaded, once
>>   migration: check required entries are loaded, once
>>   test-vmstate: add some subsection tests
>>   docs/migration: reflect the changes about needed subsections
>> 
>>  docs/devel/migration.rst  |  17 +++---
>>  hw/block/fdc.c            |   5 ++
>>  hw/virtio/virtio.c        |   6 +-
>>  migration/savevm.c        |  43 ++++++++++++++
>>  migration/vmstate.c       |  40 ++++++++++++-
>>  tests/unit/test-vmstate.c | 116 ++++++++++++++++++++++++++++++++++++++
>>  6 files changed, 215 insertions(+), 12 deletions(-)
>> 
>> -- 
>> 2.41.0



  reply	other threads:[~2023-11-07 12:04 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-11-06 11:35 [PATCH v3 0/6] migration: check required entries and sections are loaded marcandre.lureau
2023-11-06 11:35 ` [PATCH v3 1/6] block/fdc: 'phase' is not needed on load marcandre.lureau
2023-11-06 11:35 ` [PATCH v3 2/6] virtio: make endian_needed() work during loading marcandre.lureau
2023-11-06 11:35 ` [PATCH v3 3/6] migration: check required subsections are loaded, once marcandre.lureau
2023-11-06 11:35 ` [PATCH v3 4/6] migration: check required entries " marcandre.lureau
2023-11-06 11:35 ` [PATCH v3 5/6] test-vmstate: add some subsection tests marcandre.lureau
2023-11-06 11:36 ` [PATCH v3 6/6] docs/migration: reflect the changes about needed subsections marcandre.lureau
2023-11-06 17:44 ` [PATCH v3 0/6] migration: check required entries and sections are loaded Michael S. Tsirkin
2023-11-07 12:03   ` Juan Quintela [this message]
2023-12-25 15:56 ` Michael S. Tsirkin

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=87zfzpkbxb.fsf@secure.mitica \
    --to=quintela@redhat.com \
    --cc=farosas@suse.de \
    --cc=hreitz@redhat.com \
    --cc=jasowang@redhat.com \
    --cc=jsnow@redhat.com \
    --cc=kwolf@redhat.com \
    --cc=leobras@redhat.com \
    --cc=marcandre.lureau@redhat.com \
    --cc=mst@redhat.com \
    --cc=peterx@redhat.com \
    --cc=qemu-block@nongnu.org \
    --cc=qemu-devel@nongnu.org \
    --cc=samuel.thibault@ens-lyon.org \
    /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.