| /linux/include/linux/ |
| H A D | pid.h | 58 struct pid { struct 77 extern struct pid init_struct_pid; argument 81 struct pid *pidfd_pid(const struct file *file); 82 struct pid *pidfd_get_pid(unsigned int fd, unsigned int *flags); 84 int pidfd_prepare(struct pid *pid, unsigned int flags, struct file **ret_file); 87 static inline struct pid *get_pid(struct pid *pid) in get_pid() argument 89 if (pid) in get_pid() 90 refcount_inc(&pid->count); in get_pid() 91 return pid; in get_pid() 94 extern void put_pid(struct pid *pid); [all …]
|
| H A D | pidfs.h | 7 struct file *pidfs_alloc_file(struct pid *pid, unsigned int flags); 9 void pidfs_prepare_pid(struct pid *pid); 10 int pidfs_add_pid(struct pid *pid); 11 void pidfs_remove_pid(struct pid *pid); 17 int pidfs_register_pid(struct pid *pid); 18 void pidfs_free_pid(struct pid *pid);
|
| /linux/tools/testing/selftests/powerpc/ptrace/ |
| H A D | ptrace-perf-hwbreak.c | 39 static inline long sys_ptrace(long request, pid_t pid, unsigned long addr, unsigned long data) in sys_ptrace() argument 41 return syscall(__NR_ptrace, request, pid, addr, data); in sys_ptrace() 49 static long ptrace_getregs(pid_t pid, struct pt_regs *result) in ptrace_getregs() argument 51 return sys_ptrace(PTRACE_GETREGS, pid, 0, (unsigned long)result); in ptrace_getregs() 54 static long ptrace_setregs(pid_t pid, struct pt_regs *result) in ptrace_setregs() argument 56 return sys_ptrace(PTRACE_SETREGS, pid, 0, (unsigned long)result); in ptrace_setregs() 59 static long ptrace_cont(pid_t pid, long signal) in ptrace_cont() argument 61 return sys_ptrace(PTRACE_CONT, pid, 0, signal); in ptrace_cont() 64 static long ptrace_singlestep(pid_t pid, long signal) in ptrace_singlestep() argument 66 return sys_ptrace(PTRACE_SINGLESTEP, pid, 0, signal); in ptrace_singlestep() [all …]
|
| /linux/kernel/ |
| H A D | pid.c | 49 struct pid init_struct_pid = { 88 void put_pid(struct pid *pid) in put_pid() argument 92 if (!pid) in put_pid() 95 ns = pid->numbers[pid->level].ns; in put_pid() 96 if (refcount_dec_and_test(&pid->count)) { in put_pid() 97 pidfs_free_pid(pid); in put_pid() 98 kmem_cache_free(ns->pid_cachep, pid); in put_pid() 106 struct pid *pid = container_of(rhp, struct pid, rcu); in delayed_put_pid() local 107 put_pid(pid); in delayed_put_pid() 110 void free_pid(struct pid *pid) in free_pid() argument [all …]
|
| /linux/arch/powerpc/mm/book3s64/ |
| H A D | radix_tlb.c | 29 unsigned int pid, in tlbiel_radix_set_isa300() argument 36 rs = ((unsigned long)pid << PPC_BITLSHIFT(31)); in tlbiel_radix_set_isa300() 100 static __always_inline void __tlbiel_pid(unsigned long pid, int set, in __tlbiel_pid() argument 107 rs = ((unsigned long)pid) << PPC_BITLSHIFT(31); in __tlbiel_pid() 116 static __always_inline void __tlbie_pid(unsigned long pid, unsigned long ric) in __tlbie_pid() argument 121 rs = pid << PPC_BITLSHIFT(31); in __tlbie_pid() 158 static __always_inline void __tlbiel_va(unsigned long va, unsigned long pid, in __tlbiel_va() argument 165 rs = pid << PPC_BITLSHIFT(31); in __tlbiel_va() 174 static __always_inline void __tlbie_va(unsigned long va, unsigned long pid, in __tlbie_va() argument 181 rs = pid << PPC_BITLSHIFT(31); in __tlbie_va() [all …]
|
| /linux/tools/testing/selftests/riscv/vector/ |
| H A D | validate_v_ptrace.c | 22 pid_t pid; in TEST() local 28 pid = fork(); in TEST() 29 ASSERT_LE(0, pid) in TEST() 32 if (pid == 0) { in TEST() 47 ASSERT_EQ(0, ptrace(PTRACE_ATTACH, pid, NULL, NULL)); in TEST() 48 ASSERT_EQ(pid, waitpid(pid, &status, 0)); in TEST() 53 ASSERT_EQ(0, ptrace(PTRACE_POKEDATA, pid, &chld_lock, 0)); in TEST() 57 ASSERT_EQ(0, ptrace(PTRACE_CONT, pid, NULL, NULL)); in TEST() 58 ASSERT_EQ(pid, waitpid(pid, &status, 0)); in TEST() 72 ret = ptrace(PTRACE_GETREGSET, pid, NT_RISCV_VECTOR, &iov); in TEST() [all …]
|
| /linux/fs/ |
| H A D | pidfs.c | 63 .key_offset = offsetof(struct pid, ino), 65 .head_offset = offsetof(struct pid, pidfs_hash), 155 void pidfs_prepare_pid(struct pid *pid) in pidfs_prepare_pid() argument 157 pid->stashed = NULL; in pidfs_prepare_pid() 158 pid->attr = NULL; in pidfs_prepare_pid() 159 pid->ino = 0; in pidfs_prepare_pid() 162 int pidfs_add_pid(struct pid *pid) in pidfs_add_pid() argument 166 pid->ino = pidfs_alloc_ino(); in pidfs_add_pid() 167 ret = rhashtable_insert_fast(&pidfs_ino_ht, &pid->pidfs_hash, in pidfs_add_pid() 170 pid->ino = 0; in pidfs_add_pid() [all …]
|
| /linux/tools/testing/selftests/powerpc/signal/ |
| H A D | sigreturn_kernel.c | 35 pid_t pid; in fork_child() local 37 pid = fork(); in fork_child() 38 if (pid == 0) { in fork_child() 43 return pid; in fork_child() 46 static int expect_segv(pid_t pid) in expect_segv() argument 50 waitpid(pid, &child_ret, 0); in expect_segv() 62 pid_t pid; in test_sigreturn_kernel() local 73 pid = fork_child(); in test_sigreturn_kernel() 74 expect_segv(pid); in test_sigreturn_kernel() 78 pid = fork_child(); in test_sigreturn_kernel() [all …]
|
| /linux/tools/testing/selftests/pid_namespace/ |
| H A D | pid_max.c | 41 pid_t pid; in pid_max_cb() local 70 pid = fork(); in pid_max_cb() 71 if (pid == 0) in pid_max_cb() 73 wait_for_pid(pid); in pid_max_cb() 74 if (pid > 500) { in pid_max_cb() 138 pid_t pid; in pid_max_nested_inner() local 140 pid = fork(); in pid_max_nested_inner() 141 if (pid < 0) in pid_max_nested_inner() 144 if (pid == 0) in pid_max_nested_inner() 147 wait_for_pid(pid); in pid_max_nested_inner() [all …]
|
| /linux/kernel/trace/ |
| H A D | trace_pid.c | 42 !trace_find_filtered_pid(filtered_pids, task->pid)) || in trace_ignore_this_task() 44 trace_find_filtered_pid(filtered_no_pids, task->pid)); in trace_ignore_this_task() 68 if (!trace_find_filtered_pid(pid_list, self->pid)) in trace_filter_add_remove_task() 74 trace_pid_list_set(pid_list, task->pid); in trace_filter_add_remove_task() 76 trace_pid_list_clear(pid_list, task->pid); in trace_filter_add_remove_task() 93 long pid = (unsigned long)v; in trace_pid_next() local 99 if (trace_pid_list_next(pid_list, pid, &next) < 0) in trace_pid_next() 102 pid = next; in trace_pid_next() 105 return (void *)(pid + 1); in trace_pid_next() 121 unsigned long pid; in trace_pid_start() local [all …]
|
| /linux/tools/testing/selftests/rlimits/ |
| H A D | rlimits-per-userns.c | 32 pid_t pid = getpid(); in setrlimit_nproc() local 38 warnx("(pid=%d): Setting RLIMIT_NPROC=%ld", pid, n); in setrlimit_nproc() 41 err(EXIT_FAILURE, "(pid=%d): setrlimit(RLIMIT_NPROC)", pid); in setrlimit_nproc() 46 pid_t pid = fork(); in fork_child() local 48 if (pid < 0) in fork_child() 51 if (pid > 0) in fork_child() 52 return pid; in fork_child() 54 pid = getpid(); in fork_child() 56 warnx("(pid=%d): New process starting ...", pid); in fork_child() 59 err(EXIT_FAILURE, "(pid=%d): prctl(PR_SET_PDEATHSIG)", pid); in fork_child() [all …]
|
| /linux/include/trace/events/ |
| H A D | oom.h | 19 __field( pid_t, pid) 25 __entry->pid = task->pid; 31 __entry->pid, __entry->comm, __entry->oom_score_adj) 82 __field(int, pid) 94 __entry->pid = task->pid; 106 __entry->pid, 119 TP_PROTO(int pid), 121 TP_ARGS(pid), 124 __field(int, pid) 128 __entry->pid = pid; [all …]
|
| H A D | sched.h | 24 __field( pid_t, pid ) 29 __entry->pid = t->pid; 32 TP_printk("comm=%s pid=%d", __get_str(comm), __entry->pid) 149 __field( pid_t, pid ) 156 __entry->pid = p->pid; 162 __entry->comm, __entry->pid, __entry->prio, 241 __entry->prev_pid = prev->pid; 245 __entry->next_pid = next->pid; 280 __field( pid_t, pid ) 288 __entry->pid = p->pid; [all …]
|
| /linux/arch/um/os-Linux/ |
| H A D | start_up.c | 44 int pid = os_getpid(), ppid = getppid(); in ptrace_child() local 50 kill(pid, SIGKILL); in ptrace_child() 52 kill(pid, SIGSTOP); in ptrace_child() 60 if (sc_result == pid) in ptrace_child() 107 int pid, n, status; in start_ptraced_child() local 111 pid = fork(); in start_ptraced_child() 112 if (pid == 0) in start_ptraced_child() 114 else if (pid < 0) in start_ptraced_child() 117 CATCH_EINTR(n = waitpid(pid, &status, WUNTRACED)); in start_ptraced_child() 124 return pid; in start_ptraced_child() [all …]
|
| /linux/arch/powerpc/mm/nohash/ |
| H A D | tlb.c | 130 unsigned int pid; in local_flush_tlb_mm() local 133 pid = mm->context.id; in local_flush_tlb_mm() 134 if (pid != MMU_NO_CONTEXT) in local_flush_tlb_mm() 135 _tlbil_pid(pid); in local_flush_tlb_mm() 143 unsigned int pid; in __local_flush_tlb_page() local 146 pid = mm ? mm->context.id : 0; in __local_flush_tlb_page() 147 if (pid != MMU_NO_CONTEXT) in __local_flush_tlb_page() 148 _tlbil_va(vmaddr, pid, tsize, ind); in __local_flush_tlb_page() 177 unsigned int pid; member 186 _tlbil_pid(p ? p->pid : 0); in do_flush_tlb_mm_ipi() [all …]
|
| /linux/tools/perf/scripts/perl/ |
| H A D | rw-by-pid.pl | 82 foreach my $pid (sort { ($reads{$b}{bytes_read} || 0) <=> 84 my $comm = $reads{$pid}{comm} || ""; 85 my $total_reads = $reads{$pid}{total_reads} || 0; 86 my $bytes_requested = $reads{$pid}{bytes_requested} || 0; 87 my $bytes_read = $reads{$pid}{bytes_read} || 0; 89 printf("%6s %-20s %10s %10s %10s\n", $pid, $comm, 101 foreach my $pid (keys %reads) { 102 foreach my $error (keys %{$reads{$pid}{errors}}) { 103 my $comm = $reads{$pid}{comm} || ""; 104 my $errcount = $reads{$pid}{errors}{$error} || 0; [all …]
|
| /linux/drivers/gpu/drm/amd/amdkfd/ |
| H A D | kfd_smi_events.c | 43 pid_t pid; member 163 static bool kfd_smi_ev_enabled(pid_t pid, struct kfd_smi_client *client, in kfd_smi_ev_enabled() argument 168 if (pid && client->pid != pid && !client->suser) in kfd_smi_ev_enabled() 174 static void add_event_to_kfifo(pid_t pid, struct kfd_node *dev, in add_event_to_kfifo() argument 182 if (!kfd_smi_ev_enabled(pid, client, smi_event)) in add_event_to_kfifo() 199 static void kfd_smi_event_add(pid_t pid, struct kfd_node *dev, in kfd_smi_event_add() argument 215 add_event_to_kfifo(pid, dev, event, fifo_in, len); in kfd_smi_event_add() 256 if (task_info->task.pid) in kfd_smi_event_update_vmfault() 258 task_info->task.pid, task_info->task.comm)); in kfd_smi_event_update_vmfault() 263 void kfd_smi_event_page_fault_start(struct kfd_node *node, pid_t pid, in kfd_smi_event_page_fault_start() argument [all …]
|
| /linux/tools/testing/selftests/namespaces/ |
| H A D | cred_change_test.c | 33 pid_t pid; in TEST() local 52 pid = fork(); in TEST() 53 ASSERT_GE(pid, 0); in TEST() 55 if (pid == 0) { in TEST() 119 kill(pid, SIGKILL); in TEST() 120 waitpid(pid, NULL, 0); in TEST() 130 kill(pid, SIGKILL); in TEST() 131 waitpid(pid, NULL, 0); in TEST() 145 waitpid(pid, &status, 0); in TEST() 170 pid_t pid; in TEST() local [all …]
|
| /linux/tools/testing/selftests/cgroup/lib/ |
| H A D | cgroup_util.c | 352 int pid = strtol(ptr, &ptr, 10); in cg_killall() local 354 if (pid == 0) in cg_killall() 360 if (kill(pid, SIGKILL)) in cg_killall() 387 int cg_enter(const char *cgroup, int pid) in cg_enter() argument 391 snprintf(pidbuf, sizeof(pidbuf), "%d", pid); in cg_enter() 409 int pid, retcode; in cg_run() local 411 pid = fork(); in cg_run() 412 if (pid < 0) { in cg_run() 413 return pid; in cg_run() 414 } else if (pid == 0) { in cg_run() [all …]
|
| /linux/arch/powerpc/mm/ |
| H A D | mmu_decl.h | 31 static inline void _tlbil_pid(unsigned int pid) in _tlbil_pid() argument 34 trace_tlbia(pid); in _tlbil_pid() 36 #define _tlbil_pid_noind(pid) _tlbil_pid(pid) argument 40 extern void _tlbil_pid(unsigned int pid); 42 extern void _tlbil_pid_noind(unsigned int pid); 44 #define _tlbil_pid_noind(pid) _tlbil_pid(pid) argument 52 static inline void _tlbil_va(unsigned long address, unsigned int pid, in _tlbil_va() argument 56 trace_tlbie(0, 0, address, pid, 0, 0, 0); in _tlbil_va() 59 extern void _tlbil_va(unsigned long address, unsigned int pid, 62 extern void __tlbil_va(unsigned long address, unsigned int pid); [all …]
|
| /linux/tools/testing/selftests/ptrace/ |
| H A D | get_syscall_info.c | 17 kill_tracee(pid_t pid) in kill_tracee() argument 19 if (!pid) in kill_tracee() 24 int rc = kill(pid, SIGKILL); in kill_tracee() 31 sys_ptrace(int request, pid_t pid, unsigned long addr, unsigned long data) in sys_ptrace() argument 33 return syscall(__NR_ptrace, request, pid, addr, data); in sys_ptrace() 38 kill_tracee(pid); \ 77 pid_t pid = fork(); in TEST() local 79 ASSERT_LE(0, pid) { in TEST() 83 if (pid == 0) { in TEST() 85 pid = getpid(); in TEST() [all …]
|
| /linux/tools/perf/util/ |
| H A D | thread_map.c | 34 struct perf_thread_map *thread_map__new_by_pid(pid_t pid) in thread_map__new_by_pid() argument 42 sprintf(name, "/proc/%d/task", pid); in thread_map__new_by_pid() 96 pid_t pid = strtol(dirent->d_name, &end, 10); in thread_map__new_all_cpus() local 101 snprintf(path, sizeof(path), "/proc/%d/task", pid); in thread_map__new_all_cpus() 104 pr_debug("scandir for %d returned empty, skipping\n", pid); in thread_map__new_all_cpus() 151 struct perf_thread_map *thread_map__new(pid_t pid, pid_t tid) in thread_map__new() argument 153 if (pid != -1) in thread_map__new() 154 return thread_map__new_by_pid(pid); in thread_map__new() 166 pid_t pid, prev_pid = INT_MAX; in thread_map__new_by_pid_str() local 174 pid = strtol(pos->s, NULL, 10); in thread_map__new_by_pid_str() [all …]
|
| /linux/drivers/net/wan/ |
| H A D | hdlc_ppp.c | 66 u16 pid; /* protocol ID */ member 110 static inline struct proto *get_proto(struct net_device *dev, u16 pid) in get_proto() argument 114 switch (pid) { in get_proto() 126 static inline const char *proto_name(u16 pid) in proto_name() argument 128 switch (pid) { in proto_name() 202 static void ppp_tx_cp(struct net_device *dev, u16 pid, u8 code, in ppp_tx_cp() argument 215 if (pid == PID_LCP && (code == LCP_ECHO_REQ || code == LCP_ECHO_REPLY)) in ppp_tx_cp() 244 proto_name(pid), code_names[code], id, debug_buffer); in ppp_tx_cp() 247 ppp_hard_header(skb, dev, pid, NULL, NULL, 0); in ppp_tx_cp() 297 static void ppp_cp_event(struct net_device *dev, u16 pid, u16 event, u8 code, in ppp_cp_event() argument [all …]
|
| /linux/tools/testing/selftests/bpf/progs/ |
| H A D | task_kfunc_common.h | 25 struct task_struct *bpf_task_from_pid(s32 pid) __ksym; 32 s32 pid; in tasks_kfunc_map_value_lookup() local 35 status = bpf_probe_read_kernel(&pid, sizeof(pid), &p->pid); in tasks_kfunc_map_value_lookup() 39 return bpf_map_lookup_elem(&__tasks_kfunc_map, &pid); in tasks_kfunc_map_value_lookup() 47 s32 pid; in tasks_kfunc_map_insert() local 49 status = bpf_probe_read_kernel(&pid, sizeof(pid), &p->pid); in tasks_kfunc_map_insert() 54 status = bpf_map_update_elem(&__tasks_kfunc_map, &pid, &local, BPF_NOEXIST); in tasks_kfunc_map_insert() 58 v = bpf_map_lookup_elem(&__tasks_kfunc_map, &pid); in tasks_kfunc_map_insert() 60 bpf_map_delete_elem(&__tasks_kfunc_map, &pid); in tasks_kfunc_map_insert()
|
| /linux/Documentation/translations/zh_CN/accounting/ |
| H A D | taskstats.rst | 23 “pid”、“tid”、“任务”互换使用,用于描述由struct task_struct定义的标准 24 Linux任务。“每pid的统计数据”等价于“每任务的统计数据”。 35 (NETLINK_GENERIC族)然后发送指定pid或tgid的命令。响应消息中包含单个 36 任务的统计信息(若指定了pid)或进程所有任务汇总的统计信息(若指定了tgid)。 39 cpu掩码内的cpu上有任务退出时,每pid的统计信息将发送给注册成功的监听者。使用 44 记录也将发送给用户空间。后者包含线程组中所有线程(包括过去和现在)的每pid统计 59 struct taskstats是每pid和每tgid数据共用的计数结构体。它是版本化的,可在内核新增 71 1. 命令:由用户发送给内核。获取指定pid/tgid数据的命令包含一个类型为 72 TASKSTATS_CMD_ATTR_PID/TGID的属性,该属性包含u32的pid或tgid载荷。 73 pid/tgid指示用户空间要统计的任务/进程。 [all …]
|