diff --git a/Kernel/API/Syscall.h b/Kernel/API/Syscall.h index 9284e22647..cb91e67441 100644 --- a/Kernel/API/Syscall.h +++ b/Kernel/API/Syscall.h @@ -143,7 +143,7 @@ enum class NeedsBigProcessLock { S(recvfd, NeedsBigProcessLock::No) \ S(recvmsg, NeedsBigProcessLock::Yes) \ S(rename, NeedsBigProcessLock::Yes) \ - S(rmdir, NeedsBigProcessLock::Yes) \ + S(rmdir, NeedsBigProcessLock::No) \ S(sched_getparam, NeedsBigProcessLock::No) \ S(sched_setparam, NeedsBigProcessLock::No) \ S(sendfd, NeedsBigProcessLock::No) \ diff --git a/Kernel/Syscalls/rmdir.cpp b/Kernel/Syscalls/rmdir.cpp index 7002115c28..32f943f0c4 100644 --- a/Kernel/Syscalls/rmdir.cpp +++ b/Kernel/Syscalls/rmdir.cpp @@ -12,7 +12,7 @@ namespace Kernel { ErrorOr Process::sys$rmdir(Userspace user_path, size_t path_length) { - VERIFY_PROCESS_BIG_LOCK_ACQUIRED(this) + VERIFY_NO_PROCESS_BIG_LOCK(this) TRY(require_promise(Pledge::cpath)); auto path = TRY(get_syscall_path_argument(user_path, path_length)); TRY(VirtualFileSystem::the().rmdir(path->view(), current_directory()));