Lines Matching refs:p
581 static void mm_init_owner(struct mm_struct *mm, struct task_struct *p) in mm_init_owner() argument
584 mm->owner = p; in mm_init_owner()
588 static struct mm_struct *mm_init(struct mm_struct *mm, struct task_struct *p) in mm_init() argument
607 mm_init_owner(mm, p); in mm_init()
625 if (init_new_context(p, mm)) in mm_init()
1166 static void copy_seccomp(struct task_struct *p) in copy_seccomp() argument
1179 p->seccomp = current->seccomp; in copy_seccomp()
1187 task_set_no_new_privs(p); in copy_seccomp()
1194 if (p->seccomp.mode != SECCOMP_MODE_DISABLED) in copy_seccomp()
1195 set_tsk_thread_flag(p, TIF_SECCOMP); in copy_seccomp()
1206 static void rt_mutex_init_task(struct task_struct *p) in rt_mutex_init_task() argument
1208 raw_spin_lock_init(&p->pi_lock); in rt_mutex_init_task()
1210 p->pi_waiters = RB_ROOT; in rt_mutex_init_task()
1211 p->pi_waiters_leftmost = NULL; in rt_mutex_init_task()
1212 p->pi_blocked_on = NULL; in rt_mutex_init_task()
1252 struct task_struct *p; in copy_process() local
1302 p = dup_task_struct(current); in copy_process()
1303 if (!p) in copy_process()
1306 ftrace_graph_init_task(p); in copy_process()
1308 rt_mutex_init_task(p); in copy_process()
1311 DEBUG_LOCKS_WARN_ON(!p->hardirqs_enabled); in copy_process()
1312 DEBUG_LOCKS_WARN_ON(!p->softirqs_enabled); in copy_process()
1315 if (atomic_read(&p->real_cred->user->processes) >= in copy_process()
1316 task_rlimit(p, RLIMIT_NPROC)) { in copy_process()
1317 if (p->real_cred->user != INIT_USER && in copy_process()
1323 retval = copy_creds(p, clone_flags); in copy_process()
1336 delayacct_tsk_init(p); /* Must remain after dup_task_struct() */ in copy_process()
1337 p->flags &= ~(PF_SUPERPRIV | PF_WQ_WORKER); in copy_process()
1338 p->flags |= PF_FORKNOEXEC; in copy_process()
1339 INIT_LIST_HEAD(&p->children); in copy_process()
1340 INIT_LIST_HEAD(&p->sibling); in copy_process()
1341 rcu_copy_process(p); in copy_process()
1342 p->vfork_done = NULL; in copy_process()
1343 spin_lock_init(&p->alloc_lock); in copy_process()
1345 init_sigpending(&p->pending); in copy_process()
1347 p->utime = p->stime = p->gtime = 0; in copy_process()
1348 p->utimescaled = p->stimescaled = 0; in copy_process()
1349 prev_cputime_init(&p->prev_cputime); in copy_process()
1352 seqlock_init(&p->vtime_seqlock); in copy_process()
1353 p->vtime_snap = 0; in copy_process()
1354 p->vtime_snap_whence = VTIME_SLEEPING; in copy_process()
1358 memset(&p->rss_stat, 0, sizeof(p->rss_stat)); in copy_process()
1361 p->default_timer_slack_ns = current->timer_slack_ns; in copy_process()
1363 task_io_accounting_init(&p->ioac); in copy_process()
1364 acct_clear_integrals(p); in copy_process()
1366 posix_cpu_timers_init(p); in copy_process()
1368 p->start_time = ktime_get_ns(); in copy_process()
1369 p->real_start_time = ktime_get_boot_ns(); in copy_process()
1370 p->io_context = NULL; in copy_process()
1371 p->audit_context = NULL; in copy_process()
1373 cgroup_fork(p); in copy_process()
1375 p->mempolicy = mpol_dup(p->mempolicy); in copy_process()
1376 if (IS_ERR(p->mempolicy)) { in copy_process()
1377 retval = PTR_ERR(p->mempolicy); in copy_process()
1378 p->mempolicy = NULL; in copy_process()
1383 p->cpuset_mem_spread_rotor = NUMA_NO_NODE; in copy_process()
1384 p->cpuset_slab_spread_rotor = NUMA_NO_NODE; in copy_process()
1385 seqcount_init(&p->mems_allowed_seq); in copy_process()
1388 p->irq_events = 0; in copy_process()
1389 p->hardirqs_enabled = 0; in copy_process()
1390 p->hardirq_enable_ip = 0; in copy_process()
1391 p->hardirq_enable_event = 0; in copy_process()
1392 p->hardirq_disable_ip = _THIS_IP_; in copy_process()
1393 p->hardirq_disable_event = 0; in copy_process()
1394 p->softirqs_enabled = 1; in copy_process()
1395 p->softirq_enable_ip = _THIS_IP_; in copy_process()
1396 p->softirq_enable_event = 0; in copy_process()
1397 p->softirq_disable_ip = 0; in copy_process()
1398 p->softirq_disable_event = 0; in copy_process()
1399 p->hardirq_context = 0; in copy_process()
1400 p->softirq_context = 0; in copy_process()
1403 p->pagefault_disabled = 0; in copy_process()
1406 p->lockdep_depth = 0; /* no locks held yet */ in copy_process()
1407 p->curr_chain_key = 0; in copy_process()
1408 p->lockdep_recursion = 0; in copy_process()
1412 p->blocked_on = NULL; /* not blocked yet */ in copy_process()
1415 p->sequential_io = 0; in copy_process()
1416 p->sequential_io_avg = 0; in copy_process()
1420 retval = sched_fork(clone_flags, p); in copy_process()
1424 retval = perf_event_init_task(p); in copy_process()
1427 retval = audit_alloc(p); in copy_process()
1431 shm_init_task(p); in copy_process()
1432 retval = copy_semundo(clone_flags, p); in copy_process()
1435 retval = copy_files(clone_flags, p); in copy_process()
1438 retval = copy_fs(clone_flags, p); in copy_process()
1441 retval = copy_sighand(clone_flags, p); in copy_process()
1444 retval = copy_signal(clone_flags, p); in copy_process()
1447 retval = copy_mm(clone_flags, p); in copy_process()
1450 retval = copy_namespaces(clone_flags, p); in copy_process()
1453 retval = copy_io(clone_flags, p); in copy_process()
1456 retval = copy_thread_tls(clone_flags, stack_start, stack_size, p, tls); in copy_process()
1461 pid = alloc_pid(p->nsproxy->pid_ns_for_children); in copy_process()
1468 p->set_child_tid = (clone_flags & CLONE_CHILD_SETTID) ? child_tidptr : NULL; in copy_process()
1472 p->clear_child_tid = (clone_flags & CLONE_CHILD_CLEARTID) ? child_tidptr : NULL; in copy_process()
1474 p->plug = NULL; in copy_process()
1477 p->robust_list = NULL; in copy_process()
1479 p->compat_robust_list = NULL; in copy_process()
1481 INIT_LIST_HEAD(&p->pi_state_list); in copy_process()
1482 p->pi_state_cache = NULL; in copy_process()
1488 p->sas_ss_sp = p->sas_ss_size = 0; in copy_process()
1494 user_disable_single_step(p); in copy_process()
1495 clear_tsk_thread_flag(p, TIF_SYSCALL_TRACE); in copy_process()
1497 clear_tsk_thread_flag(p, TIF_SYSCALL_EMU); in copy_process()
1499 clear_all_latency_tracing(p); in copy_process()
1502 p->pid = pid_nr(pid); in copy_process()
1504 p->exit_signal = -1; in copy_process()
1505 p->group_leader = current->group_leader; in copy_process()
1506 p->tgid = current->tgid; in copy_process()
1509 p->exit_signal = current->group_leader->exit_signal; in copy_process()
1511 p->exit_signal = (clone_flags & CSIGNAL); in copy_process()
1512 p->group_leader = p; in copy_process()
1513 p->tgid = p->pid; in copy_process()
1516 p->nr_dirtied = 0; in copy_process()
1517 p->nr_dirtied_pause = 128 >> (PAGE_SHIFT - 10); in copy_process()
1518 p->dirty_paused_when = 0; in copy_process()
1520 p->pdeath_signal = 0; in copy_process()
1521 INIT_LIST_HEAD(&p->thread_group); in copy_process()
1522 p->task_works = NULL; in copy_process()
1530 retval = cgroup_can_fork(p, cgrp_ss_priv); in copy_process()
1542 p->real_parent = current->real_parent; in copy_process()
1543 p->parent_exec_id = current->parent_exec_id; in copy_process()
1545 p->real_parent = current; in copy_process()
1546 p->parent_exec_id = current->self_exec_id; in copy_process()
1555 copy_seccomp(p); in copy_process()
1573 if (likely(p->pid)) { in copy_process()
1574 ptrace_init_task(p, (clone_flags & CLONE_PTRACE) || trace); in copy_process()
1576 init_task_pid(p, PIDTYPE_PID, pid); in copy_process()
1577 if (thread_group_leader(p)) { in copy_process()
1578 init_task_pid(p, PIDTYPE_PGID, task_pgrp(current)); in copy_process()
1579 init_task_pid(p, PIDTYPE_SID, task_session(current)); in copy_process()
1582 ns_of_pid(pid)->child_reaper = p; in copy_process()
1583 p->signal->flags |= SIGNAL_UNKILLABLE; in copy_process()
1586 p->signal->leader_pid = pid; in copy_process()
1587 p->signal->tty = tty_kref_get(current->signal->tty); in copy_process()
1588 list_add_tail(&p->sibling, &p->real_parent->children); in copy_process()
1589 list_add_tail_rcu(&p->tasks, &init_task.tasks); in copy_process()
1590 attach_pid(p, PIDTYPE_PGID); in copy_process()
1591 attach_pid(p, PIDTYPE_SID); in copy_process()
1597 list_add_tail_rcu(&p->thread_group, in copy_process()
1598 &p->group_leader->thread_group); in copy_process()
1599 list_add_tail_rcu(&p->thread_node, in copy_process()
1600 &p->signal->thread_head); in copy_process()
1602 attach_pid(p, PIDTYPE_PID); in copy_process()
1608 syscall_tracepoint_update(p); in copy_process()
1611 proc_fork_connector(p); in copy_process()
1612 cgroup_post_fork(p, cgrp_ss_priv); in copy_process()
1614 perf_event_fork(p); in copy_process()
1616 trace_task_newtask(p, clone_flags); in copy_process()
1617 uprobe_copy_process(p, clone_flags); in copy_process()
1619 return p; in copy_process()
1622 cgroup_cancel_fork(p, cgrp_ss_priv); in copy_process()
1627 if (p->io_context) in copy_process()
1628 exit_io_context(p); in copy_process()
1630 exit_task_namespaces(p); in copy_process()
1632 if (p->mm) in copy_process()
1633 mmput(p->mm); in copy_process()
1636 free_signal_struct(p->signal); in copy_process()
1638 __cleanup_sighand(p->sighand); in copy_process()
1640 exit_fs(p); /* blocking */ in copy_process()
1642 exit_files(p); /* blocking */ in copy_process()
1644 exit_sem(p); in copy_process()
1646 audit_free(p); in copy_process()
1648 perf_event_free_task(p); in copy_process()
1651 mpol_put(p->mempolicy); in copy_process()
1655 delayacct_tsk_free(p); in copy_process()
1657 atomic_dec(&p->cred->user->processes); in copy_process()
1658 exit_creds(p); in copy_process()
1660 free_task(p); in copy_process()
1700 struct task_struct *p; in _do_fork() local
1722 p = copy_process(clone_flags, stack_start, stack_size, in _do_fork()
1728 if (!IS_ERR(p)) { in _do_fork()
1732 trace_sched_process_fork(current, p); in _do_fork()
1734 pid = get_task_pid(p, PIDTYPE_PID); in _do_fork()
1741 p->vfork_done = &vfork; in _do_fork()
1743 get_task_struct(p); in _do_fork()
1746 wake_up_new_task(p); in _do_fork()
1753 if (!wait_for_vfork_done(p, &vfork)) in _do_fork()
1759 nr = PTR_ERR(p); in _do_fork()