2023-07-16 18:27:50

by Atul Kumar Pant

[permalink] [raw]
Subject: [PATCH v4] selftests: rtc: Improves rtctest error handling.

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 <[email protected]>
---

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



2023-07-17 14:01:54

by Alexandre Belloni

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

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 <[email protected]>
Acked-by: Alexandre Belloni <[email protected]>

> ---
>
> 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