Kernel: Mark sys$fstatvfs() as not needing the big lock

This syscall doesn't access any data that was implicitly protected by
the big lock.
This commit is contained in:
Andreas Kling 2022-03-08 15:37:32 +01:00
parent a61424a62b
commit 69a6a4d927
Notes: sideshowbarker 2024-07-17 17:40:38 +09:00
2 changed files with 2 additions and 2 deletions

View file

@ -73,7 +73,7 @@ enum class NeedsBigProcessLock {
S(fcntl, NeedsBigProcessLock::Yes) \
S(fork, NeedsBigProcessLock::Yes) \
S(fstat, NeedsBigProcessLock::No) \
S(fstatvfs, NeedsBigProcessLock::Yes) \
S(fstatvfs, NeedsBigProcessLock::No) \
S(fsync, NeedsBigProcessLock::No) \
S(ftruncate, NeedsBigProcessLock::Yes) \
S(futex, NeedsBigProcessLock::Yes) \

View file

@ -54,7 +54,7 @@ ErrorOr<FlatPtr> Process::sys$statvfs(Userspace<const Syscall::SC_statvfs_params
ErrorOr<FlatPtr> Process::sys$fstatvfs(int fd, statvfs* buf)
{
VERIFY_PROCESS_BIG_LOCK_ACQUIRED(this)
VERIFY_NO_PROCESS_BIG_LOCK(this);
TRY(require_promise(Pledge::stdio));
auto description = TRY(open_file_description(fd));