mirror of
https://github.com/RGBCube/serenity
synced 2025-07-25 20:57:35 +00:00
Kernel: Remove big lock from sys$close
This syscall doesn't access any unprotected shared data.
This commit is contained in:
parent
0297349922
commit
9547a8e8a2
2 changed files with 2 additions and 2 deletions
|
@ -54,7 +54,7 @@ enum class NeedsBigProcessLock {
|
||||||
S(clock_gettime, NeedsBigProcessLock::No) \
|
S(clock_gettime, NeedsBigProcessLock::No) \
|
||||||
S(clock_nanosleep, NeedsBigProcessLock::No) \
|
S(clock_nanosleep, NeedsBigProcessLock::No) \
|
||||||
S(clock_settime, NeedsBigProcessLock::No) \
|
S(clock_settime, NeedsBigProcessLock::No) \
|
||||||
S(close, NeedsBigProcessLock::Yes) \
|
S(close, NeedsBigProcessLock::No) \
|
||||||
S(connect, NeedsBigProcessLock::Yes) \
|
S(connect, NeedsBigProcessLock::Yes) \
|
||||||
S(create_inode_watcher, NeedsBigProcessLock::Yes) \
|
S(create_inode_watcher, NeedsBigProcessLock::Yes) \
|
||||||
S(create_thread, NeedsBigProcessLock::Yes) \
|
S(create_thread, NeedsBigProcessLock::Yes) \
|
||||||
|
|
|
@ -69,7 +69,7 @@ ErrorOr<FlatPtr> Process::sys$open(Userspace<Syscall::SC_open_params const*> use
|
||||||
|
|
||||||
ErrorOr<FlatPtr> Process::sys$close(int fd)
|
ErrorOr<FlatPtr> Process::sys$close(int fd)
|
||||||
{
|
{
|
||||||
VERIFY_PROCESS_BIG_LOCK_ACQUIRED(this)
|
VERIFY_NO_PROCESS_BIG_LOCK(this)
|
||||||
TRY(require_promise(Pledge::stdio));
|
TRY(require_promise(Pledge::stdio));
|
||||||
auto description = TRY(open_file_description(fd));
|
auto description = TRY(open_file_description(fd));
|
||||||
auto result = description->close();
|
auto result = description->close();
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue