Daniil Tatianin <[email protected]> wrote:
> The migration qtest all the way up to this point used to work by sheer
> luck relying on the contents of all pages from 1MiB to 100MiB to contain
> the same one value in the first byte initially.
>
> This easily breaks if we reduce the amount of RAM for the test instances
> from 150MiB to e.g 110MiB since that makes SeaBIOS dirty some of the
> pages starting at about 0x5dd2000 (~93 MiB) as it reuses those for the
> HighMemory allocator since commit dc88f9b72df ("malloc: use large
> ZoneHigh when there is enough memory").
>
> This would result in the following errors:
>     12/60 qemu:qtest+qtest-x86_64 / qtest-x86_64/migration-test               
>   ERROR           2.74s   killed by signal 6 SIGABRT
>     stderr:
>     Memory content inconsistency at 5dd2000 first_byte = cc last_byte = cb 
> current = 9e hit_edge = 1
>     Memory content inconsistency at 5dd3000 first_byte = cc last_byte = cb 
> current = 89 hit_edge = 1
>     Memory content inconsistency at 5dd4000 first_byte = cc last_byte = cb 
> current = 23 hit_edge = 1
>     Memory content inconsistency at 5dd5000 first_byte = cc last_byte = cb 
> current = 31 hit_edge = 1
>     Memory content inconsistency at 5dd6000 first_byte = cc last_byte = cb 
> current = 70 hit_edge = 1
>     Memory content inconsistency at 5dd7000 first_byte = cc last_byte = cb 
> current = ff hit_edge = 1
>     Memory content inconsistency at 5dd8000 first_byte = cc last_byte = cb 
> current = 54 hit_edge = 1
>     Memory content inconsistency at 5dd9000 first_byte = cc last_byte = cb 
> current = 64 hit_edge = 1
>     Memory content inconsistency at 5dda000 first_byte = cc last_byte = cb 
> current = 1d hit_edge = 1
>     Memory content inconsistency at 5ddb000 first_byte = cc last_byte = cb 
> current = 1a hit_edge = 1
>     and in another 26 pages**
>     ERROR:../tests/qtest/migration-test.c:300:check_guests_ram: assertion 
> failed: (bad == 0)
>
> Fix this by always zeroing the first byte of each page in the range so
> that we get consistent results no matter the initial contents.
>
> Fixes: ea0c6d62391 ("test: Postcopy")
> Signed-off-by: Daniil Tatianin <[email protected]>
> Reviewed-by: Peter Xu <[email protected]>
> ---

Reviewed-by: Juan Quintela <[email protected]>

queued.


Reply via email to