All of lore.kernel.org
 help / color / mirror / Atom feed
From: Fabiano Rosas <farosas@suse.de>
To: quintela@redhat.com
Cc: qemu-devel@nongnu.org, "Peter Xu" <peterx@redhat.com>,
	"Leonardo Bras" <leobras@redhat.com>,
	"Marc-André Lureau" <marcandre.lureau@redhat.com>,
	"Thomas Huth" <thuth@redhat.com>, "John Snow" <jsnow@redhat.com>,
	"Cleber Rosa" <crosa@redhat.com>
Subject: Re: [PATCH v2 4/6] migration: Fix analyze-migration.py when ignore-shared is used
Date: Wed, 11 Oct 2023 10:32:53 -0300	[thread overview]
Message-ID: <87sf6h1dyy.fsf@suse.de> (raw)
In-Reply-To: <87v8bd9tsr.fsf@secure.mitica>

Juan Quintela <quintela@redhat.com> writes:

> Fabiano Rosas <farosas@suse.de> wrote:
>> The script is currently broken when the x-ignore-shared capability is
>> used:
>>
>> Traceback (most recent call last):
>>   File "./scripts/analyze-migration.py", line 656, in <module>
>>     dump.read(dump_memory = args.memory)
>>   File "./scripts/analyze-migration.py", line 593, in read
>>     section.read()
>>   File "./scripts/analyze-migration.py", line 163, in read
>>     self.name = self.file.readstr(len = namelen)
>>   File "./scripts/analyze-migration.py", line 53, in readstr
>>     return self.readvar(len).decode('utf-8')
>> UnicodeDecodeError: 'utf-8' codec can't decode byte 0x82 in position 55: invalid start byte
>>
>> We're currently adding data to the middle of the ram section depending
>> on the presence of the capability. As a consequence, any code loading
>> the ram section needs to know about capabilities so it can interpret
>> the stream.
>>
>> Skip the byte that's added when x-ignore-shared is used to fix the
>> script.
>>
>> Signed-off-by: Fabiano Rosas <farosas@suse.de>
>
> Reviewed-by: Juan Quintela <quintela@redhat.com>
>
>> @@ -582,6 +586,7 @@ def read(self, desc_only = False, dump_memory = False, write_memory = False):
>>                  config_desc = self.vmsd_desc.get('configuration')
>>                  section = ConfigurationSection(file, config_desc)
>>                  section.read()
>> +                ramargs['ignore_shared'] = section.has_capability('x-ignore-shared')
>
> should we consider s/x-ignore-shared/ignore-shared/?
>

We can consider s/ignore-shared/x-ignore-shared/ if that's what you
mean. The way you suggested doesn't work because the cap name comes from
QEMU with the "x-" part in it.

If you meant filtering the x out when parsing the capabilities in this
script, I think that would cause a sort of a UX issue because we need to
use x-ignore-shared to set the cap in QMP/HMP.


  reply	other threads:[~2023-10-11 13:34 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-10-09 18:43 [PATCH v2 0/6] scripts/migration: Fix analyze-migration.py and add a test Fabiano Rosas
2023-10-09 18:43 ` [PATCH v2 1/6] migration: Add the configuration vmstate to the json writer Fabiano Rosas
2023-10-11 13:12   ` Juan Quintela
2023-10-11 13:33     ` Fabiano Rosas
2023-10-09 18:43 ` [PATCH v2 2/6] migration: Fix analyze-migration.py 'configuration' parsing Fabiano Rosas
2023-10-11 13:16   ` Juan Quintela
2023-10-09 18:43 ` [PATCH v2 3/6] migration: Add capability parsing to analyze-migration.py Fabiano Rosas
2023-10-11 13:22   ` Juan Quintela
2023-10-09 18:43 ` [PATCH v2 4/6] migration: Fix analyze-migration.py when ignore-shared is used Fabiano Rosas
2023-10-11 13:23   ` Juan Quintela
2023-10-11 13:32     ` Fabiano Rosas [this message]
2023-10-11 14:10       ` Juan Quintela
2023-10-09 18:43 ` [PATCH v2 5/6] migration: Fix analyze-migration read operation signedness Fabiano Rosas
2023-10-11 13:24   ` Juan Quintela
2023-10-09 18:43 ` [PATCH v2 6/6] tests/qtest/migration: Add a test for the analyze-migration script Fabiano Rosas
2023-10-10  7:11   ` Thomas Huth
2023-10-11 13:28   ` Juan Quintela
2023-10-11 13:35     ` Fabiano Rosas
2023-10-10 20:27 ` [PATCH v2 0/6] scripts/migration: Fix analyze-migration.py and add a test Fabiano Rosas

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=87sf6h1dyy.fsf@suse.de \
    --to=farosas@suse.de \
    --cc=crosa@redhat.com \
    --cc=jsnow@redhat.com \
    --cc=leobras@redhat.com \
    --cc=marcandre.lureau@redhat.com \
    --cc=peterx@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=quintela@redhat.com \
    --cc=thuth@redhat.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.