Am 10.07.2026 um 18:13 hat Denis V. Lunev geschrieben:
> test_postcopy_success asserted `downtime * 10 < postcopy_time` to
> confirm the run spent meaningful time in postcopy. This is an
> unnormalized wall-clock heuristic tuned to old hardware (commit
> e80a4150a5), and fails on fast hosts where the bitmap payload now
> transfers in under a second while switch-over downtime stays fixed
> (e.g. downtime=0.6s, postcopy_time=0.8s).
>
> It is also a weak proxy for the regression it guards against
> (postcopy degenerating to precopy): that is already covered by the
> bitmap sha256, mid-migration update and persistence checks, none of
> which depend on this timing.
>
> Drop the assertion; keep printing the timings under debug.
>
> Signed-off-by: Denis V. Lunev <[email protected]>
> CC: Kevin Wolf <[email protected]>
> CC: Hanna Reitz <[email protected]>
I agree that this assertion failure doesn't mean that the test failed.
What it might mean is that maybe we didn't test the code as well as we
would have liked to.
Should we try to slow down/throttle the migration artificially to
trigger the cases we want to test here more reliably?
Kevin
> tests/qemu-iotests/tests/migrate-bitmaps-postcopy-test | 1 -
> 1 file changed, 1 deletion(-)
>
> diff --git a/tests/qemu-iotests/tests/migrate-bitmaps-postcopy-test
> b/tests/qemu-iotests/tests/migrate-bitmaps-postcopy-test
> index c519e6db8c..f9c55b6395 100755
> --- a/tests/qemu-iotests/tests/migrate-bitmaps-postcopy-test
> +++ b/tests/qemu-iotests/tests/migrate-bitmaps-postcopy-test
> @@ -186,7 +186,6 @@ class
> TestDirtyBitmapPostcopyMigration(iotests.QMPTestCase):
> downtime = event_dist(event_stop, event_resume)
> postcopy_time = event_dist(event_resume, event_complete)
>
> - assert downtime * 10 < postcopy_time
> if debug:
> print('downtime:', downtime)
> print('postcopy_time:', postcopy_time)
> --
> 2.53.0
>