mirror of
https://github.com/RGBCube/serenity
synced 2025-07-23 10:17:41 +00:00
Kernel: Disable big process lock for sys$getkeymap
This syscall only reads non process-related global values, and as such doesn't need to hold the big lock.
This commit is contained in:
parent
48325e2959
commit
1a08694dfc
2 changed files with 2 additions and 1 deletions
|
@ -155,7 +155,7 @@ enum class NeedsBigProcessLock {
|
||||||
S(get_process_name, NeedsBigProcessLock::Yes) \
|
S(get_process_name, NeedsBigProcessLock::Yes) \
|
||||||
S(fchdir, NeedsBigProcessLock::Yes) \
|
S(fchdir, NeedsBigProcessLock::Yes) \
|
||||||
S(getrandom, NeedsBigProcessLock::No) \
|
S(getrandom, NeedsBigProcessLock::No) \
|
||||||
S(getkeymap, NeedsBigProcessLock::Yes) \
|
S(getkeymap, NeedsBigProcessLock::No) \
|
||||||
S(setkeymap, NeedsBigProcessLock::Yes) \
|
S(setkeymap, NeedsBigProcessLock::Yes) \
|
||||||
S(clock_gettime, NeedsBigProcessLock::Yes) \
|
S(clock_gettime, NeedsBigProcessLock::Yes) \
|
||||||
S(clock_settime, NeedsBigProcessLock::Yes) \
|
S(clock_settime, NeedsBigProcessLock::Yes) \
|
||||||
|
|
|
@ -48,6 +48,7 @@ KResultOr<FlatPtr> Process::sys$setkeymap(Userspace<const Syscall::SC_setkeymap_
|
||||||
|
|
||||||
KResultOr<FlatPtr> Process::sys$getkeymap(Userspace<const Syscall::SC_getkeymap_params*> user_params)
|
KResultOr<FlatPtr> Process::sys$getkeymap(Userspace<const Syscall::SC_getkeymap_params*> user_params)
|
||||||
{
|
{
|
||||||
|
VERIFY_NO_PROCESS_BIG_LOCK(this);
|
||||||
REQUIRE_PROMISE(getkeymap);
|
REQUIRE_PROMISE(getkeymap);
|
||||||
|
|
||||||
Syscall::SC_getkeymap_params params;
|
Syscall::SC_getkeymap_params params;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue