On 12/07/2019 13.18, Alex Bennée wrote: > Quite often the information about which test failed is hidden by the > wall of repeated failures for each page. Stop outputting the error > after 10 bad pages and just summarise the total damage at the end. > > Signed-off-by: Alex Bennée <alex.ben...@linaro.org> > --- > tests/migration-test.c | 19 ++++++++++++------- > 1 file changed, 12 insertions(+), 7 deletions(-) > > diff --git a/tests/migration-test.c b/tests/migration-test.c > index b6434628e1c..ce041f80c2a 100644 > --- a/tests/migration-test.c > +++ b/tests/migration-test.c > @@ -308,7 +308,7 @@ static void check_guests_ram(QTestState *who) > uint8_t first_byte; > uint8_t last_byte; > bool hit_edge = false; > - bool bad = false; > + int bad = 0; > > qtest_memread(who, start_address, &first_byte, 1); > last_byte = first_byte; > @@ -327,15 +327,20 @@ static void check_guests_ram(QTestState *who) > hit_edge = true; > last_byte = b; > } else { > - fprintf(stderr, "Memory content inconsistency at %x" > - " first_byte = %x last_byte = %x current = > %x" > - " hit_edge = %x\n", > - address, first_byte, last_byte, b, hit_edge); > - bad = true; > + bad++; > + if (bad <= 10) { > + fprintf(stderr, "Memory content inconsistency at %x" > + " first_byte = %x last_byte = %x current = %x" > + " hit_edge = %x\n", > + address, first_byte, last_byte, b, hit_edge); > + } > } > } > } > - g_assert_false(bad); > + if (bad >= 10) { > + fprintf(stderr, "and in another %d pages", bad); > + } > + g_assert(bad == 0); > } > > static void cleanup(const char *filename)
Good idea. Reviewed-by: Thomas Huth <th...@redhat.com>