mirror of
https://github.com/RGBCube/serenity
synced 2025-07-23 10:37:41 +00:00
Kernel: Mark sys$fchmod() 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:
parent
d074aae422
commit
aa381c4a67
2 changed files with 2 additions and 2 deletions
|
@ -68,7 +68,7 @@ enum class NeedsBigProcessLock {
|
||||||
S(exit, NeedsBigProcessLock::Yes) \
|
S(exit, NeedsBigProcessLock::Yes) \
|
||||||
S(exit_thread, NeedsBigProcessLock::Yes) \
|
S(exit_thread, NeedsBigProcessLock::Yes) \
|
||||||
S(fchdir, NeedsBigProcessLock::No) \
|
S(fchdir, NeedsBigProcessLock::No) \
|
||||||
S(fchmod, NeedsBigProcessLock::Yes) \
|
S(fchmod, NeedsBigProcessLock::No) \
|
||||||
S(fchown, NeedsBigProcessLock::Yes) \
|
S(fchown, NeedsBigProcessLock::Yes) \
|
||||||
S(fcntl, NeedsBigProcessLock::Yes) \
|
S(fcntl, NeedsBigProcessLock::Yes) \
|
||||||
S(fork, NeedsBigProcessLock::Yes) \
|
S(fork, NeedsBigProcessLock::Yes) \
|
||||||
|
|
|
@ -34,7 +34,7 @@ ErrorOr<FlatPtr> Process::sys$chmod(Userspace<Syscall::SC_chmod_params const*> u
|
||||||
|
|
||||||
ErrorOr<FlatPtr> Process::sys$fchmod(int fd, mode_t mode)
|
ErrorOr<FlatPtr> Process::sys$fchmod(int fd, mode_t mode)
|
||||||
{
|
{
|
||||||
VERIFY_PROCESS_BIG_LOCK_ACQUIRED(this);
|
VERIFY_NO_PROCESS_BIG_LOCK(this);
|
||||||
TRY(require_promise(Pledge::fattr));
|
TRY(require_promise(Pledge::fattr));
|
||||||
auto description = TRY(open_file_description(fd));
|
auto description = TRY(open_file_description(fd));
|
||||||
TRY(description->chmod(mode));
|
TRY(description->chmod(mode));
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue