Kernel: Remove big lock from sys$mkdir
This syscall doesn't access any unprotected shared data.
This commit is contained in:
parent
165a23b68c
commit
e84bbfed44
Notes:
sideshowbarker
2024-07-17 14:13:05 +09:00
Author: https://github.com/IdanHo Commit: https://github.com/SerenityOS/serenity/commit/e84bbfed44 Pull-request: https://github.com/SerenityOS/serenity/pull/13594
2 changed files with 2 additions and 2 deletions
|
@ -114,7 +114,7 @@ enum class NeedsBigProcessLock {
|
|||
S(lseek, NeedsBigProcessLock::No) \
|
||||
S(madvise, NeedsBigProcessLock::Yes) \
|
||||
S(map_time_page, NeedsBigProcessLock::Yes) \
|
||||
S(mkdir, NeedsBigProcessLock::Yes) \
|
||||
S(mkdir, NeedsBigProcessLock::No) \
|
||||
S(mknod, NeedsBigProcessLock::Yes) \
|
||||
S(mmap, NeedsBigProcessLock::Yes) \
|
||||
S(mount, NeedsBigProcessLock::Yes) \
|
||||
|
|
|
@ -12,7 +12,7 @@ namespace Kernel {
|
|||
|
||||
ErrorOr<FlatPtr> Process::sys$mkdir(Userspace<char const*> user_path, size_t path_length, mode_t mode)
|
||||
{
|
||||
VERIFY_PROCESS_BIG_LOCK_ACQUIRED(this)
|
||||
VERIFY_NO_PROCESS_BIG_LOCK(this)
|
||||
TRY(require_promise(Pledge::cpath));
|
||||
auto path = TRY(get_syscall_path_argument(user_path, path_length));
|
||||
TRY(VirtualFileSystem::the().mkdir(path->view(), mode & ~umask(), current_directory()));
|
||||
|
|
Loading…
Add table
Reference in a new issue