summaryrefslogtreecommitdiff
path: root/Kernel
diff options
context:
space:
mode:
authorAndreas Kling <kling@serenityos.org>2023-04-04 07:20:28 +0200
committerAndreas Kling <kling@serenityos.org>2023-04-05 11:37:27 +0200
commitca1f8cac6694750f554672a72b83dda578517339 (patch)
treee9ec6ebc73cd285cd73d1ce8f683d2a3222ad4fa /Kernel
parentc9ee1ad5aea794fd780133904d6b06a115148091 (diff)
downloadserenity-ca1f8cac6694750f554672a72b83dda578517339.zip
Kernel: Mark sys$faccessat as not needing the big lock
Diffstat (limited to 'Kernel')
-rw-r--r--Kernel/API/Syscall.h2
-rw-r--r--Kernel/Syscalls/faccessat.cpp2
2 files changed, 2 insertions, 2 deletions
diff --git a/Kernel/API/Syscall.h b/Kernel/API/Syscall.h
index 5eb7ba9bb3..1300db8521 100644
--- a/Kernel/API/Syscall.h
+++ b/Kernel/API/Syscall.h
@@ -73,7 +73,7 @@ enum class NeedsBigProcessLock {
S(execve, NeedsBigProcessLock::Yes) \
S(exit, NeedsBigProcessLock::Yes) \
S(exit_thread, NeedsBigProcessLock::Yes) \
- S(faccessat, NeedsBigProcessLock::Yes) \
+ S(faccessat, NeedsBigProcessLock::No) \
S(fchdir, NeedsBigProcessLock::No) \
S(fchmod, NeedsBigProcessLock::No) \
S(fchown, NeedsBigProcessLock::No) \
diff --git a/Kernel/Syscalls/faccessat.cpp b/Kernel/Syscalls/faccessat.cpp
index edb7b1b637..5c621c9140 100644
--- a/Kernel/Syscalls/faccessat.cpp
+++ b/Kernel/Syscalls/faccessat.cpp
@@ -12,7 +12,7 @@ namespace Kernel {
ErrorOr<FlatPtr> Process::sys$faccessat(Userspace<Syscall::SC_faccessat_params const*> user_params)
{
- VERIFY_PROCESS_BIG_LOCK_ACQUIRED(this);
+ VERIFY_NO_PROCESS_BIG_LOCK(this);
TRY(require_promise(Pledge::rpath));
auto params = TRY(copy_typed_from_user(user_params));
auto pathname = TRY(get_syscall_path_argument(params.pathname));