Always do 'return report_summary()' at the end, use report_abort() when an abnormality is detected. Signed-off-by: Vitaly Kuznetsov <vkuznets@xxxxxxxxxx> --- x86/hyperv_clock.c | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/x86/hyperv_clock.c b/x86/hyperv_clock.c index f1e7204a8ea9..7eb4f734ee5b 100644 --- a/x86/hyperv_clock.c +++ b/x86/hyperv_clock.c @@ -144,7 +144,6 @@ static void perf_test(int ncpus) int main(int ac, char **av) { - int nerr = 0; int ncpus; struct hv_reference_tsc_page shadow; uint64_t tsc1, t1, tsc2, t2; @@ -152,7 +151,7 @@ int main(int ac, char **av) if (!hv_time_ref_counter_supported()) { report_skip("time reference counter is unsupported"); - return report_summary(); + goto done; } setup_vm(); @@ -167,10 +166,8 @@ int main(int ac, char **av) "MSR value after enabling"); hvclock_get_time_values(&shadow, hv_clock); - if (shadow.tsc_sequence == 0 || shadow.tsc_sequence == 0xFFFFFFFF) { - printf("Reference TSC page not available\n"); - exit(1); - } + if (shadow.tsc_sequence == 0 || shadow.tsc_sequence == 0xFFFFFFFF) + report_abort("Reference TSC page not available\n"); printf("scale: %" PRIx64" offset: %" PRId64"\n", shadow.tsc_scale, shadow.tsc_offset); ref1 = rdmsr(HV_X64_MSR_TIME_REF_COUNT); @@ -196,5 +193,6 @@ int main(int ac, char **av) report(rdmsr(HV_X64_MSR_REFERENCE_TSC) == 0, "MSR value after disabling"); - return nerr > 0 ? 1 : 0; +done: + return report_summary(); } -- 2.41.0