Message ID | 20230309145757.2280518-1-peternewman@google.com (mailing list archive) |
---|---|
State | Accepted |
Headers | show |
Series | selftests/resctrl: Use correct exit code when tests fail | expand |
Hi Peter, > Subject: [PATCH] selftests/resctrl: Use correct exit code when tests fail > > Use ksft_finished() after running tests so that resctrl_tests doesn't return exit > code 0 when tests fail. > > Consequently, report the MBA and MBM tests as skipped when running on > non-Intel hardware, otherwise resctrl_tests will exit with a failure code. > > Signed-off-by: Peter Newman <peternewman@google.com> > --- > tools/testing/selftests/resctrl/resctrl_tests.c | 10 +++++----- > 1 file changed, 5 insertions(+), 5 deletions(-) > > diff --git a/tools/testing/selftests/resctrl/resctrl_tests.c > b/tools/testing/selftests/resctrl/resctrl_tests.c > index df0d8d8526fc..69ebb0d7fff6 100644 > --- a/tools/testing/selftests/resctrl/resctrl_tests.c > +++ b/tools/testing/selftests/resctrl/resctrl_tests.c > @@ -77,7 +77,7 @@ static void run_mbm_test(bool has_ben, char > **benchmark_cmd, int span, > > ksft_print_msg("Starting MBM BW change ...\n"); > > - if (!validate_resctrl_feature_request(MBM_STR)) { > + if (!validate_resctrl_feature_request(MBM_STR) || (get_vendor() != > +ARCH_INTEL)) { > ksft_test_result_skip("Hardware does not support MBM or > MBM is disabled\n"); > return; > } > @@ -98,7 +98,7 @@ static void run_mba_test(bool has_ben, char > **benchmark_cmd, int span, > > ksft_print_msg("Starting MBA Schemata change ...\n"); > > - if (!validate_resctrl_feature_request(MBA_STR)) { > + if (!validate_resctrl_feature_request(MBA_STR) || (get_vendor() != > +ARCH_INTEL)) { > ksft_test_result_skip("Hardware does not support MBA or > MBA is disabled\n"); > return; > } > @@ -258,10 +258,10 @@ int main(int argc, char **argv) > > ksft_set_plan(tests ? : 4); > > - if ((get_vendor() == ARCH_INTEL) && mbm_test) > + if (mbm_test) > run_mbm_test(has_ben, benchmark_cmd, span, cpu_no, > bw_report); > > - if ((get_vendor() == ARCH_INTEL) && mba_test) > + if (mba_test) > run_mba_test(has_ben, benchmark_cmd, span, cpu_no, > bw_report); > > if (cmt_test) > @@ -272,5 +272,5 @@ int main(int argc, char **argv) > > umount_resctrlfs(); > > - return ksft_exit_pass(); > + ksft_finished(); > } > > base-commit: c9c3395d5e3dcc6daee66c6908354d47bf98cb0c > -- > 2.40.0.rc1.284.g88254d51c5-goog I think it is no problem. Reviewed-by: Shaopeng Tan <tan.shaopeng@fujitsu.com> Tested-by: Shaopeng Tan <tan.shaopeng@fujitsu.com> Best regards, Shaopeng TAN
Hi Peter, On 3/9/2023 6:57 AM, Peter Newman wrote: > Use ksft_finished() after running tests so that resctrl_tests doesn't > return exit code 0 when tests fail. > > Consequently, report the MBA and MBM tests as skipped when running on > non-Intel hardware, otherwise resctrl_tests will exit with a failure > code. > > Signed-off-by: Peter Newman <peternewman@google.com> > --- Thank you very much. Reviewed-by: Reinette Chatre <reinette.chatre@intel.com> Reinette
diff --git a/tools/testing/selftests/resctrl/resctrl_tests.c b/tools/testing/selftests/resctrl/resctrl_tests.c index df0d8d8526fc..69ebb0d7fff6 100644 --- a/tools/testing/selftests/resctrl/resctrl_tests.c +++ b/tools/testing/selftests/resctrl/resctrl_tests.c @@ -77,7 +77,7 @@ static void run_mbm_test(bool has_ben, char **benchmark_cmd, int span, ksft_print_msg("Starting MBM BW change ...\n"); - if (!validate_resctrl_feature_request(MBM_STR)) { + if (!validate_resctrl_feature_request(MBM_STR) || (get_vendor() != ARCH_INTEL)) { ksft_test_result_skip("Hardware does not support MBM or MBM is disabled\n"); return; } @@ -98,7 +98,7 @@ static void run_mba_test(bool has_ben, char **benchmark_cmd, int span, ksft_print_msg("Starting MBA Schemata change ...\n"); - if (!validate_resctrl_feature_request(MBA_STR)) { + if (!validate_resctrl_feature_request(MBA_STR) || (get_vendor() != ARCH_INTEL)) { ksft_test_result_skip("Hardware does not support MBA or MBA is disabled\n"); return; } @@ -258,10 +258,10 @@ int main(int argc, char **argv) ksft_set_plan(tests ? : 4); - if ((get_vendor() == ARCH_INTEL) && mbm_test) + if (mbm_test) run_mbm_test(has_ben, benchmark_cmd, span, cpu_no, bw_report); - if ((get_vendor() == ARCH_INTEL) && mba_test) + if (mba_test) run_mba_test(has_ben, benchmark_cmd, span, cpu_no, bw_report); if (cmt_test) @@ -272,5 +272,5 @@ int main(int argc, char **argv) umount_resctrlfs(); - return ksft_exit_pass(); + ksft_finished(); }
Use ksft_finished() after running tests so that resctrl_tests doesn't return exit code 0 when tests fail. Consequently, report the MBA and MBM tests as skipped when running on non-Intel hardware, otherwise resctrl_tests will exit with a failure code. Signed-off-by: Peter Newman <peternewman@google.com> --- tools/testing/selftests/resctrl/resctrl_tests.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) base-commit: c9c3395d5e3dcc6daee66c6908354d47bf98cb0c