Laurent Vivier <lviv...@redhat.com> writes:
> 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); > > "bad - 10" as you have already displayed 10 errors. Will do. > > Thanks, > Laurent -- Alex Bennée