diff --git a/Kernel/API/Syscall.h b/Kernel/API/Syscall.h index e8b7017091..7613ef0821 100644 --- a/Kernel/API/Syscall.h +++ b/Kernel/API/Syscall.h @@ -165,7 +165,7 @@ enum class NeedsBigProcessLock { S(setsid, NeedsBigProcessLock::Yes) \ S(setsockopt, NeedsBigProcessLock::Yes) \ S(setuid, NeedsBigProcessLock::Yes) \ - S(shutdown, NeedsBigProcessLock::Yes) \ + S(shutdown, NeedsBigProcessLock::No) \ S(sigaction, NeedsBigProcessLock::Yes) \ S(sigaltstack, NeedsBigProcessLock::Yes) \ S(sigpending, NeedsBigProcessLock::Yes) \ diff --git a/Kernel/Syscalls/socket.cpp b/Kernel/Syscalls/socket.cpp index e15dccaf91..591c21aa4f 100644 --- a/Kernel/Syscalls/socket.cpp +++ b/Kernel/Syscalls/socket.cpp @@ -158,7 +158,7 @@ ErrorOr Process::sys$connect(int sockfd, Userspace use ErrorOr Process::sys$shutdown(int sockfd, int how) { - VERIFY_PROCESS_BIG_LOCK_ACQUIRED(this) + VERIFY_NO_PROCESS_BIG_LOCK(this) TRY(require_promise(Pledge::stdio)); if (how & ~SHUT_RDWR) return EINVAL;