Print two possible reasons /sys/kernel/debug/gup_test
cannot be opened to help users of this test diagnose
failures.
Signed-off-by: Sidhartha Kumar <[email protected]>
Cc: [email protected] # 5.15+
---
tools/testing/selftests/vm/gup_test.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/tools/testing/selftests/vm/gup_test.c b/tools/testing/selftests/vm/gup_test.c
index fe043f67798b0..c496bcefa7a0e 100644
--- a/tools/testing/selftests/vm/gup_test.c
+++ b/tools/testing/selftests/vm/gup_test.c
@@ -205,7 +205,9 @@ int main(int argc, char **argv)
gup_fd = open("/sys/kernel/debug/gup_test", O_RDWR);
if (gup_fd == -1) {
- perror("open");
+ perror("failed to open /sys/kernel/debug/gup_test");
+ printf("check if CONFIG_GUP_TEST is enabled in kernel config\n");
+ printf("check if debugfs is mounted at /sys/kernel/debug\n");
exit(1);
}
--
2.24.1
On 3/30/22 3:52 PM, Sidhartha Kumar wrote:
> Print two possible reasons /sys/kernel/debug/gup_test
> cannot be opened to help users of this test diagnose
> failures.
>
Thank you for the patch to improve rather cryptic error messages.
> Signed-off-by: Sidhartha Kumar <[email protected]>
> Cc: [email protected] # 5.15+
> ---
> tools/testing/selftests/vm/gup_test.c | 4 +++-
> 1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/tools/testing/selftests/vm/gup_test.c b/tools/testing/selftests/vm/gup_test.c
> index fe043f67798b0..c496bcefa7a0e 100644
> --- a/tools/testing/selftests/vm/gup_test.c
> +++ b/tools/testing/selftests/vm/gup_test.c
> @@ -205,7 +205,9 @@ int main(int argc, char **argv)
>
> gup_fd = open("/sys/kernel/debug/gup_test", O_RDWR);
> if (gup_fd == -1) {
> - perror("open");
> + perror("failed to open /sys/kernel/debug/gup_test");
> + printf("check if CONFIG_GUP_TEST is enabled in kernel config\n");
> + printf("check if debugfs is mounted at /sys/kernel/debug\n");
Instead of adding 3 messages in a row, please check the errno to figure
out why it failed and print an appropriate message.
If open fails because CONFIG_GUP_TEST is not enabled, the test should skip
the test instead of fail. Failing will indicate a test failure which is not
the case. The test couldn't be run due to unmet dependencies.
This test requires root access. A check for root privilege and skip the
test for the same reason stated above.
> exit(1);
> }
>
>
Please send v2 with these changes.
thanks,
-- Shuah