1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-26 02:57:36 +00:00

Kernel: Remove big lock from sys$setsockopt

This syscall doesn't access any unprotected shared data.
This commit is contained in:
Idan Horowitz 2022-04-09 23:01:59 +03:00 committed by Andreas Kling
parent c2372242b1
commit 5a96260e25
2 changed files with 2 additions and 2 deletions

View file

@ -163,7 +163,7 @@ enum class NeedsBigProcessLock {
S(setresuid, NeedsBigProcessLock::Yes) \
S(setreuid, NeedsBigProcessLock::Yes) \
S(setsid, NeedsBigProcessLock::Yes) \
S(setsockopt, NeedsBigProcessLock::Yes) \
S(setsockopt, NeedsBigProcessLock::No) \
S(setuid, NeedsBigProcessLock::Yes) \
S(shutdown, NeedsBigProcessLock::No) \
S(sigaction, NeedsBigProcessLock::Yes) \

View file

@ -347,7 +347,7 @@ ErrorOr<FlatPtr> Process::sys$getsockopt(Userspace<Syscall::SC_getsockopt_params
ErrorOr<FlatPtr> Process::sys$setsockopt(Userspace<Syscall::SC_setsockopt_params const*> user_params)
{
VERIFY_PROCESS_BIG_LOCK_ACQUIRED(this)
VERIFY_NO_PROCESS_BIG_LOCK(this)
auto params = TRY(copy_typed_from_user(user_params));
Userspace<void const*> user_value((FlatPtr)params.value);