Lines Matching refs:pcb
15 extern int process_copy_files(uint64_t clone_flags, struct process_control_block *pcb);
16 int process_copy_flags(uint64_t clone_flags, struct process_control_block *pcb);
17 int process_copy_mm(uint64_t clone_flags, struct process_control_block *pcb);
18 int process_copy_thread(uint64_t clone_flags, struct process_control_block *pcb, uint64_t stack_sta…
21 extern int process_copy_sighand(uint64_t clone_flags, struct process_control_block *pcb);
22 extern int process_copy_signal(uint64_t clone_flags, struct process_control_block *pcb);
23 extern void process_exit_sighand(struct process_control_block *pcb);
24 extern void process_exit_signal(struct process_control_block *pcb);
84 tsk->prev_pcb = &initial_proc_union.pcb; in do_fork()
86 tsk->next_pcb = initial_proc_union.pcb.next_pcb; in do_fork()
88 initial_proc_union.pcb.next_pcb = tsk; in do_fork()
173 int process_copy_flags(uint64_t clone_flags, struct process_control_block *pcb) in process_copy_flags() argument
176 pcb->flags |= PF_VFORK; in process_copy_flags()
187 int process_copy_mm(uint64_t clone_flags, struct process_control_block *pcb) in process_copy_mm() argument
189 pcb->address_space = NULL; in process_copy_mm()
191 return (int)rs_process_copy_mm(clone_vm, pcb); in process_copy_mm()
242 int process_copy_thread(uint64_t clone_flags, struct process_control_block *pcb, uint64_t stack_sta… in process_copy_thread() argument
246 struct thread_struct *thd = (struct thread_struct *)(pcb + 1); in process_copy_thread()
248 pcb->thread = thd; in process_copy_thread()
252 if (pcb->flags & PF_KFORK) // 内核态下的fork in process_copy_thread()
257 child_regs = (struct pt_regs *)(((uint64_t)pcb) + STACK_SIZE - size); in process_copy_thread()
262 process_rewrite_rbp(child_regs, pcb); in process_copy_thread()
266 child_regs = (struct pt_regs *)((uint64_t)pcb + STACK_SIZE - sizeof(struct pt_regs)); in process_copy_thread()
274 if (pcb->flags & PF_KFORK) in process_copy_thread()
277 thd->rbp = (uint64_t)pcb + STACK_SIZE; in process_copy_thread()
285 if (pcb->flags & PF_KFORK) in process_copy_thread()
287 else if (pcb->flags & PF_KTHREAD && (!(pcb->flags & PF_KFORK))) in process_copy_thread()
292 pcb->fp_state = rs_dup_fpstate(); in process_copy_thread()