diff --git a/src/system/kernel/team.c b/src/system/kernel/team.c index b0feb4cd49..3df96721cc 100644 --- a/src/system/kernel/team.c +++ b/src/system/kernel/team.c @@ -53,10 +53,11 @@ struct team_arg { }; struct fork_arg { - area_id user_stack_area; - addr_t user_stack_base; - size_t user_stack_size; - addr_t user_local_storage; + area_id user_stack_area; + addr_t user_stack_base; + size_t user_stack_size; + addr_t user_local_storage; + sigset_t sig_block_mask; struct arch_fork_arg arch_info; }; @@ -1369,6 +1370,7 @@ fork_team_thread_start(void *_args) thread->user_stack_base = forkArgs->user_stack_base; thread->user_stack_size = forkArgs->user_stack_size; thread->user_local_storage = forkArgs->user_local_storage; + thread->sig_block_mask = forkArgs->sig_block_mask; arch_thread_init_tls(thread); @@ -1462,6 +1464,7 @@ fork_team(void) forkArgs->user_stack_base = parentThread->user_stack_base; forkArgs->user_stack_size = parentThread->user_stack_size; forkArgs->user_local_storage = parentThread->user_local_storage; + forkArgs->sig_block_mask = parentThread->sig_block_mask; arch_store_fork_frame(&forkArgs->arch_info); // ToDo: copy image list