diff options
author | Samuel Thibault <samuel.thibault@ens-lyon.org> | 2025-06-03 23:08:31 +0200 |
---|---|---|
committer | Samuel Thibault <samuel.thibault@ens-lyon.org> | 2025-06-03 23:08:33 +0200 |
commit | dd50871dc76c4b9ea5f127924f02ec082d88b165 (patch) | |
tree | 47e19931dacbdcbae4d5f6c721a7dcf1d59b5012 | |
parent | 2fa69c06ee0a02687100d159801eaba9c1597943 (diff) |
thread_create: Inherit vm_privilege between threads of the same task
So that e.g. all rumpdisk threads get vm_privilege
-rw-r--r-- | kern/thread.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/kern/thread.c b/kern/thread.c index 69d24eaa..deb9688d 100644 --- a/kern/thread.c +++ b/kern/thread.c @@ -428,6 +428,9 @@ kern_return_t thread_create( */ new_thread->task = parent_task; + if (parent_task && current_thread() && current_task() != kernel_task && + parent_task == current_task() && current_thread()->vm_privilege) + new_thread->vm_privilege = 1; simple_lock_init(&new_thread->lock); new_thread->sched_stamp = sched_tick; thread_timeout_setup(new_thread); |