]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
KVM: selftests: Play nice with EACCES errors in open_path_or_exit()
authorSean Christopherson <seanjc@google.com>
Fri, 16 May 2025 21:59:08 +0000 (14:59 -0700)
committerSean Christopherson <seanjc@google.com>
Fri, 20 Jun 2025 20:39:10 +0000 (13:39 -0700)
Expand the SKIP conditions of the open_path_or_exit() helper to skip on
EACCES as well as ENOENT.  Most often, lack of permissions to a file
needed by a KVM selftests is due to a file being root-only by default,
not because of any bug/misconfiguration that warrants failing a test.

Link: https://lore.kernel.org/r/20250516215909.2551628-4-seanjc@google.com
Signed-off-by: Sean Christopherson <seanjc@google.com>
tools/testing/selftests/kvm/lib/kvm_util.c

index 41c7d04d32bdb6597307ec0ea7852c9fbd127bd8..f3a80057816e63b73a84ae3afa3e5356d9b07970 100644 (file)
@@ -37,9 +37,10 @@ int __open_path_or_exit(const char *path, int flags, const char *enoent_help)
        return fd;
 
 error:
-       if (errno == ENOENT)
+       if (errno == EACCES || errno == ENOENT)
                ksft_exit_skip("- Cannot open '%s': %s.  %s\n",
-                              path, strerror(errno), enoent_help);
+                              path, strerror(errno),
+                              errno == EACCES ? "Root required?" : enoent_help);
        TEST_FAIL("Failed to open '%s'", path);
 }