[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: migration: broken snapshot saves appear on s390 when small fields in
From: |
Claudio Fontana |
Subject: |
Re: migration: broken snapshot saves appear on s390 when small fields in migration stream removed |
Date: |
Mon, 13 Jul 2020 11:11:42 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.4.1 |
Hi Paolo,
On 7/12/20 6:11 PM, Paolo Bonzini wrote:
> On 12/07/20 12:00, Claudio Fontana wrote:
>> Note: only the === -blockdev with a backing file === part of test 267 fails.
>> -blockdev with NBD is ok, like all the rest.
>>
>>
>> Interesting facts about s390 in particular: its save/load code includes the
>> transfer of "storage keys",
>> which include a buffer of 32768 bytes of keydata in the stream.
>>
>> The code (hw/s390x/s390-skeys.c),
>> is modeled similarly to RAM transfer (like in migration/ram.c), with an EOS
>> (end of stream) marker.
>>
>> Countrary to RAM transfer code though, after qemu_put_be64(f, EOS), the s390
>> code does not qemu_fflush(f).
>
> 1) Are there unexpected differences in the migration stream? That is,
> you could modify qcow2.c to fopen/fwrite/fclose the bytes as they're
> written and read, and see if something does not match.
I hooked qcow2_co_pwritev_task and qcow2_co_preadv_task to also write to an
external file using your suggestion.
I am seeing very interesting differences with and without the reproducer patch
(ie, forcing icount_state_needed to 0 or not):
* without the reproducer patch, everything past the s390-skeys data field is in
order: there is the EOS, and then the next idstr follows ("cpu_common").
* with the reproducer patch, every single byte past the s390-skeys data field
is ZERO. There is no EOS, there is no next idstr "cpu_common", there is
absolutely nothing else than zeroes until the end of the file.
>
> 2) If it matches, are there unexpected differences other than the lack
> of icount section when you apply the reproducer patch?
they do not match at all.
>
> The fflush part makes me put more hope in the first, but both could help
> you debug it.
>
> Thanks,
>
> Paolo
>
Thanks,
Claudio
- migration: broken snapshot saves appear on s390 when small fields in migration stream removed, Claudio Fontana, 2020/07/12
- Re: migration: broken snapshot saves appear on s390 when small fields in migration stream removed, Paolo Bonzini, 2020/07/12
- Re: migration: broken snapshot saves appear on s390 when small fields in migration stream removed,
Claudio Fontana <=
- Re: migration: broken snapshot saves appear on s390 when small fields in migration stream removed, Claudio Fontana, 2020/07/14
- Re: migration: broken snapshot saves appear on s390 when small fields in migration stream removed, Thomas Huth, 2020/07/14
- Re: migration: broken snapshot saves appear on s390 when small fields in migration stream removed, Claudio Fontana, 2020/07/15
- Re: migration: broken snapshot saves appear on s390 when small fields in migration stream removed, Claudio Fontana, 2020/07/15
- Re: migration: broken snapshot saves appear on s390 when small fields in migration stream removed, Claudio Fontana, 2020/07/16
- Re: migration: broken snapshot saves appear on s390 when small fields in migration stream removed, Claudio Fontana, 2020/07/20
- Re: migration: broken snapshot saves appear on s390 when small fields in migration stream removed, Claudio Fontana, 2020/07/21
- Re: migration: broken snapshot saves appear on s390 when small fields in migration stream removed, Bruce Rogers, 2020/07/27
- Re: migration: broken snapshot saves appear on s390 when small fields in migration stream removed, Vladimir Sementsov-Ogievskiy, 2020/07/28
- Re: migration: broken snapshot saves appear on s390 when small fields in migration stream removed, Vladimir Sementsov-Ogievskiy, 2020/07/28