Re: [PATCH v4] selftests: rtc: Improves rtctest error handling.

From: Alexandre Belloni
Date: Mon Jul 17 2023 - 09:40:23 EST


On 16/07/2023 23:48:25+0530, Atul Kumar Pant wrote:
> When running the rtctest if we pass wrong rtc device file as an argument
> the test fails expectedly, but prints the logs that are not useful
> to point out the issue.
> To handle this, the patch adds a checks to verify if the rtc_file is valid.
>
> Signed-off-by: Atul Kumar Pant <atulpant.linux@xxxxxxxxx>
Acked-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxx>

> ---
>
> changes since v3:
> Added Linux-kselftest and Linux-kernel mailing lists.
>
> changes since v2:
> Changed error message when rtc file does not exist.
>
> changes since v1:
> Removed check for uid=0
> If rtc file is invalid, then exit the test.
>
> tools/testing/selftests/rtc/rtctest.c | 11 ++++++++++-
> 1 file changed, 10 insertions(+), 1 deletion(-)
>
> diff --git a/tools/testing/selftests/rtc/rtctest.c b/tools/testing/selftests/rtc/rtctest.c
> index 63ce02d1d5cc..630fef735c7e 100644
> --- a/tools/testing/selftests/rtc/rtctest.c
> +++ b/tools/testing/selftests/rtc/rtctest.c
> @@ -17,6 +17,7 @@
> #include <unistd.h>
>
> #include "../kselftest_harness.h"
> +#include "../kselftest.h"
>
> #define NUM_UIE 3
> #define ALARM_DELTA 3
> @@ -419,6 +420,8 @@ __constructor_order_last(void)
>
> int main(int argc, char **argv)
> {
> + int ret = -1;
> +
> switch (argc) {
> case 2:
> rtc_file = argv[1];
> @@ -430,5 +433,11 @@ int main(int argc, char **argv)
> return 1;
> }
>
> - return test_harness_run(argc, argv);
> + // Run the test if rtc_file is valid
> + if (access(rtc_file, F_OK) == 0)
> + ret = test_harness_run(argc, argv);
> + else
> + ksft_exit_fail_msg("[ERROR]: Cannot access rtc file %s - Exiting\n", rtc_file);
> +
> + return ret;
> }
> --
> 2.25.1
>

--
Alexandre Belloni, co-owner and COO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com