Home
last modified time | relevance | path

Searched refs:thread (Results 1 – 25 of 977) sorted by relevance

12345678910>>...40

/linux-6.1.9/tools/perf/util/
Dthread.c22 int thread__init_maps(struct thread *thread, struct machine *machine) in thread__init_maps() argument
24 pid_t pid = thread->pid_; in thread__init_maps()
26 if (pid == thread->tid || pid == -1) { in thread__init_maps()
27 thread->maps = maps__new(machine); in thread__init_maps()
29 struct thread *leader = __machine__findnew_thread(machine, pid, pid); in thread__init_maps()
31 thread->maps = maps__get(leader->maps); in thread__init_maps()
36 return thread->maps ? 0 : -1; in thread__init_maps()
39 struct thread *thread__new(pid_t pid, pid_t tid) in thread__new()
43 struct thread *thread = zalloc(sizeof(*thread)); in thread__new() local
45 if (thread != NULL) { in thread__new()
[all …]
Dthread.h32 struct thread { struct
69 struct thread *thread__new(pid_t pid, pid_t tid); argument
70 int thread__init_maps(struct thread *thread, struct machine *machine);
71 void thread__delete(struct thread *thread);
73 struct thread *thread__get(struct thread *thread);
74 void thread__put(struct thread *thread);
76 static inline void __thread__zput(struct thread **thread) in __thread__zput() argument
78 thread__put(*thread); in __thread__zput()
79 *thread = NULL; in __thread__zput()
82 #define thread__zput(thread) __thread__zput(&thread) argument
[all …]
Dthread-stack.h14 struct thread;
54 struct thread *thread; member
82 int thread_stack__event(struct thread *thread, int cpu, u32 flags, u64 from_ip,
85 void thread_stack__set_trace_nr(struct thread *thread, int cpu, u64 trace_nr);
86 void thread_stack__sample(struct thread *thread, int cpu, struct ip_callchain *chain,
88 void thread_stack__sample_late(struct thread *thread, int cpu,
91 void thread_stack__br_sample(struct thread *thread, int cpu,
93 void thread_stack__br_sample_late(struct thread *thread, int cpu,
96 int thread_stack__flush(struct thread *thread);
97 void thread_stack__free(struct thread *thread);
[all …]
Dthread-stack.c113 static inline bool thread_stack__per_cpu(struct thread *thread) in thread_stack__per_cpu() argument
115 return !(thread->tid || thread->pid_); in thread_stack__per_cpu()
136 static int thread_stack__init(struct thread_stack *ts, struct thread *thread, in thread_stack__init() argument
158 if (thread->maps && thread->maps->machine) { in thread_stack__init()
159 struct machine *machine = thread->maps->machine; in thread_stack__init()
173 static struct thread_stack *thread_stack__new(struct thread *thread, int cpu, in thread_stack__new() argument
178 struct thread_stack *ts = thread->ts, *new_ts; in thread_stack__new()
182 if (thread_stack__per_cpu(thread) && cpu > 0) in thread_stack__new()
192 zfree(&thread->ts); in thread_stack__new()
193 thread->ts = new_ts; in thread_stack__new()
[all …]
Ddb-export.c62 int db_export__thread(struct db_export *dbe, struct thread *thread, in db_export__thread() argument
63 struct machine *machine, struct thread *main_thread) in db_export__thread()
67 if (thread->db_id) in db_export__thread()
70 thread->db_id = ++dbe->thread_last_db_id; in db_export__thread()
76 return dbe->export_thread(dbe, thread, main_thread_db_id, in db_export__thread()
83 struct thread *thread) in __db_export__comm() argument
88 return dbe->export_comm(dbe, comm, thread); in __db_export__comm()
94 struct thread *thread) in db_export__comm() argument
99 return __db_export__comm(dbe, comm, thread); in db_export__comm()
109 struct thread *main_thread) in db_export__exec_comm()
[all …]
/linux-6.1.9/arch/mips/include/asm/
Dasmmacro-32.h16 .macro fpu_save_single thread tmp=t0
20 s.d $f0, THREAD_FPR0(\thread)
21 s.d $f2, THREAD_FPR2(\thread)
22 s.d $f4, THREAD_FPR4(\thread)
23 s.d $f6, THREAD_FPR6(\thread)
24 s.d $f8, THREAD_FPR8(\thread)
25 s.d $f10, THREAD_FPR10(\thread)
26 s.d $f12, THREAD_FPR12(\thread)
27 s.d $f14, THREAD_FPR14(\thread)
28 s.d $f16, THREAD_FPR16(\thread)
[all …]
Dasmmacro-64.h17 .macro cpu_save_nonscratch thread
18 LONG_S s0, THREAD_REG16(\thread)
19 LONG_S s1, THREAD_REG17(\thread)
20 LONG_S s2, THREAD_REG18(\thread)
21 LONG_S s3, THREAD_REG19(\thread)
22 LONG_S s4, THREAD_REG20(\thread)
23 LONG_S s5, THREAD_REG21(\thread)
24 LONG_S s6, THREAD_REG22(\thread)
25 LONG_S s7, THREAD_REG23(\thread)
26 LONG_S sp, THREAD_REG29(\thread)
[all …]
Dasmmacro.h84 .macro fpu_save_16even thread tmp=t0
88 sdc1 $f0, THREAD_FPR0(\thread)
89 sdc1 $f2, THREAD_FPR2(\thread)
90 sdc1 $f4, THREAD_FPR4(\thread)
91 sdc1 $f6, THREAD_FPR6(\thread)
92 sdc1 $f8, THREAD_FPR8(\thread)
93 sdc1 $f10, THREAD_FPR10(\thread)
94 sdc1 $f12, THREAD_FPR12(\thread)
95 sdc1 $f14, THREAD_FPR14(\thread)
96 sdc1 $f16, THREAD_FPR16(\thread)
[all …]
Ddsp.h41 tsk->thread.dsp.dspr[0] = mfhi1(); \
42 tsk->thread.dsp.dspr[1] = mflo1(); \
43 tsk->thread.dsp.dspr[2] = mfhi2(); \
44 tsk->thread.dsp.dspr[3] = mflo2(); \
45 tsk->thread.dsp.dspr[4] = mfhi3(); \
46 tsk->thread.dsp.dspr[5] = mflo3(); \
47 tsk->thread.dsp.dspcontrol = rddsp(DSP_MASK); \
58 mthi1(tsk->thread.dsp.dspr[0]); \
59 mtlo1(tsk->thread.dsp.dspr[1]); \
60 mthi2(tsk->thread.dsp.dspr[2]); \
[all …]
/linux-6.1.9/Documentation/translations/zh_CN/mm/
Dmmu_notifier.rst43 CPU-thread-0 {尝试写到addrA}
44 CPU-thread-1 {尝试写到addrB}
45 CPU-thread-2 {}
46 CPU-thread-3 {}
47 DEV-thread-0 {读取addrA并填充设备TLB}
48 DEV-thread-2 {读取addrB并填充设备TLB}
50 CPU-thread-0 {COW_step0: {mmu_notifier_invalidate_range_start(addrA)}}
51 CPU-thread-1 {COW_step0: {mmu_notifier_invalidate_range_start(addrB)}}
52 CPU-thread-2 {}
53 CPU-thread-3 {}
[all …]
/linux-6.1.9/arch/powerpc/kernel/ptrace/
Dptrace-adv.c10 struct pt_regs *regs = task->thread.regs; in user_enable_single_step()
13 task->thread.debug.dbcr0 &= ~DBCR0_BT; in user_enable_single_step()
14 task->thread.debug.dbcr0 |= DBCR0_IDM | DBCR0_IC; in user_enable_single_step()
22 struct pt_regs *regs = task->thread.regs; in user_enable_block_step()
25 task->thread.debug.dbcr0 &= ~DBCR0_IC; in user_enable_block_step()
26 task->thread.debug.dbcr0 = DBCR0_IDM | DBCR0_BT; in user_enable_block_step()
34 struct pt_regs *regs = task->thread.regs; in user_disable_single_step()
43 task->thread.debug.dbcr0 &= ~(DBCR0_IC | DBCR0_BT); in user_disable_single_step()
47 if (!DBCR_ACTIVE_EVENTS(task->thread.debug.dbcr0, in user_disable_single_step()
48 task->thread.debug.dbcr1)) { in user_disable_single_step()
[all …]
Dptrace-noadv.c12 struct pt_regs *regs = task->thread.regs; in user_enable_single_step()
21 struct pt_regs *regs = task->thread.regs; in user_enable_block_step()
30 struct pt_regs *regs = task->thread.regs; in user_disable_single_step()
68 dabr_fake = ((child->thread.hw_brk[0].address & (~HW_BRK_TYPE_DABR)) | in ptrace_get_debugreg()
69 (child->thread.hw_brk[0].type & HW_BRK_TYPE_DABR)); in ptrace_get_debugreg()
82 struct thread_struct *thread = &task->thread; in ptrace_set_debugreg() local
121 bp = thread->ptrace_bps[0]; in ptrace_set_debugreg()
125 thread->ptrace_bps[0] = NULL; in ptrace_set_debugreg()
142 thread->ptrace_bps[0] = bp; in ptrace_set_debugreg()
143 thread->hw_brk[0] = hw_brk; in ptrace_set_debugreg()
[all …]
Dptrace-tm.c28 tm_save_sprs(&tsk->thread); in flush_tmregs_to_thread()
34 return task->thread.ckpt_regs.msr | task->thread.fpexc_mode; in get_user_ckpt_msr()
39 task->thread.ckpt_regs.msr &= ~MSR_DEBUGCHANGE; in set_user_ckpt_msr()
40 task->thread.ckpt_regs.msr |= msr & MSR_DEBUGCHANGE; in set_user_ckpt_msr()
46 set_trap(&task->thread.ckpt_regs, trap); in set_user_ckpt_trap()
63 if (!MSR_TM_ACTIVE(target->thread.regs->msr)) in tm_cgpr_active()
97 if (!MSR_TM_ACTIVE(target->thread.regs->msr)) in tm_cgpr_get()
104 membuf_write(&to, &target->thread.ckpt_regs, sizeof(struct user_pt_regs)); in tm_cgpr_get()
144 if (!MSR_TM_ACTIVE(target->thread.regs->msr)) in tm_cgpr_set()
152 &target->thread.ckpt_regs, in tm_cgpr_set()
[all …]
/linux-6.1.9/tools/perf/tests/
Ddwarf-unwind.c65 int test_dwarf_unwind__thread(struct thread *thread);
67 int test_dwarf_unwind__krava_3(struct thread *thread);
68 int test_dwarf_unwind__krava_2(struct thread *thread);
69 int test_dwarf_unwind__krava_1(struct thread *thread);
111 NO_TAIL_CALL_ATTRIBUTE noinline int test_dwarf_unwind__thread(struct thread *thread) in test_dwarf_unwind__thread() argument
119 if (test__arch_unwind_sample(&sample, thread)) { in test_dwarf_unwind__thread()
124 err = unwind__get_entries(unwind_entry, &cnt, thread, in test_dwarf_unwind__thread()
145 struct thread *thread = *(struct thread **)p1; in test_dwarf_unwind__compare() local
151 global_unwind_retval = test_dwarf_unwind__thread(thread); in test_dwarf_unwind__compare()
154 global_unwind_retval = test_dwarf_unwind__thread(thread); in test_dwarf_unwind__compare()
[all …]
/linux-6.1.9/arch/riscv/kernel/
Dasm-offsets.c22 OFFSET(TASK_THREAD_RA, task_struct, thread.ra); in asm_offsets()
23 OFFSET(TASK_THREAD_SP, task_struct, thread.sp); in asm_offsets()
24 OFFSET(TASK_THREAD_S0, task_struct, thread.s[0]); in asm_offsets()
25 OFFSET(TASK_THREAD_S1, task_struct, thread.s[1]); in asm_offsets()
26 OFFSET(TASK_THREAD_S2, task_struct, thread.s[2]); in asm_offsets()
27 OFFSET(TASK_THREAD_S3, task_struct, thread.s[3]); in asm_offsets()
28 OFFSET(TASK_THREAD_S4, task_struct, thread.s[4]); in asm_offsets()
29 OFFSET(TASK_THREAD_S5, task_struct, thread.s[5]); in asm_offsets()
30 OFFSET(TASK_THREAD_S6, task_struct, thread.s[6]); in asm_offsets()
31 OFFSET(TASK_THREAD_S7, task_struct, thread.s[7]); in asm_offsets()
[all …]
/linux-6.1.9/drivers/mailbox/
Dmtk-cmdq-mailbox.c68 struct cmdq_thread *thread; member
78 struct cmdq_thread *thread; member
101 static int cmdq_thread_suspend(struct cmdq *cmdq, struct cmdq_thread *thread) in cmdq_thread_suspend() argument
105 writel(CMDQ_THR_SUSPEND, thread->base + CMDQ_THR_SUSPEND_TASK); in cmdq_thread_suspend()
108 if (!(readl(thread->base + CMDQ_THR_ENABLE_TASK) & CMDQ_THR_ENABLED)) in cmdq_thread_suspend()
111 if (readl_poll_timeout_atomic(thread->base + CMDQ_THR_CURR_STATUS, in cmdq_thread_suspend()
114 (u32)(thread->base - cmdq->base)); in cmdq_thread_suspend()
121 static void cmdq_thread_resume(struct cmdq_thread *thread) in cmdq_thread_resume() argument
123 writel(CMDQ_THR_RESUME, thread->base + CMDQ_THR_SUSPEND_TASK); in cmdq_thread_resume()
139 static int cmdq_thread_reset(struct cmdq *cmdq, struct cmdq_thread *thread) in cmdq_thread_reset() argument
[all …]
/linux-6.1.9/tools/perf/scripts/python/
Dstat-cpi.py10 def get_key(time, event, cpu, thread): argument
11 return "%d-%s-%d-%d" % (time, event, cpu, thread)
13 def store_key(time, cpu, thread): argument
20 if (thread not in threads):
21 threads.append(thread)
23 def store(time, event, cpu, thread, val, ena, run): argument
27 store_key(time, cpu, thread)
28 key = get_key(time, event, cpu, thread)
31 def get(time, event, cpu, thread): argument
32 key = get_key(time, event, cpu, thread)
[all …]
/linux-6.1.9/arch/parisc/kernel/
Dasm-offsets.c49 DEFINE(TASK_REGS, offsetof(struct task_struct, thread.regs)); in main()
50 DEFINE(TASK_PT_PSW, offsetof(struct task_struct, thread.regs.gr[ 0])); in main()
51 DEFINE(TASK_PT_GR1, offsetof(struct task_struct, thread.regs.gr[ 1])); in main()
52 DEFINE(TASK_PT_GR2, offsetof(struct task_struct, thread.regs.gr[ 2])); in main()
53 DEFINE(TASK_PT_GR3, offsetof(struct task_struct, thread.regs.gr[ 3])); in main()
54 DEFINE(TASK_PT_GR4, offsetof(struct task_struct, thread.regs.gr[ 4])); in main()
55 DEFINE(TASK_PT_GR5, offsetof(struct task_struct, thread.regs.gr[ 5])); in main()
56 DEFINE(TASK_PT_GR6, offsetof(struct task_struct, thread.regs.gr[ 6])); in main()
57 DEFINE(TASK_PT_GR7, offsetof(struct task_struct, thread.regs.gr[ 7])); in main()
58 DEFINE(TASK_PT_GR8, offsetof(struct task_struct, thread.regs.gr[ 8])); in main()
[all …]
/linux-6.1.9/Documentation/mm/
Dmmu_notifier.rst41 CPU-thread-0 {try to write to addrA}
42 CPU-thread-1 {try to write to addrB}
43 CPU-thread-2 {}
44 CPU-thread-3 {}
45 DEV-thread-0 {read addrA and populate device TLB}
46 DEV-thread-2 {read addrB and populate device TLB}
48 CPU-thread-0 {COW_step0: {mmu_notifier_invalidate_range_start(addrA)}}
49 CPU-thread-1 {COW_step0: {mmu_notifier_invalidate_range_start(addrB)}}
50 CPU-thread-2 {}
51 CPU-thread-3 {}
[all …]
/linux-6.1.9/arch/powerpc/kernel/
Dprocess.c93 if (tsk == current && tsk->thread.regs && in check_if_tm_restore_required()
94 MSR_TM_ACTIVE(tsk->thread.regs->msr) && in check_if_tm_restore_required()
96 regs_set_return_msr(&tsk->thread.ckpt_regs, in check_if_tm_restore_required()
97 tsk->thread.regs->msr); in check_if_tm_restore_required()
158 msr = tsk->thread.regs->msr; in __giveup_fpu()
162 regs_set_return_msr(tsk->thread.regs, msr); in __giveup_fpu()
181 if (tsk->thread.regs) { in flush_fp_to_thread()
191 if (tsk->thread.regs->msr & MSR_FP) { in flush_fp_to_thread()
215 if (current->thread.regs && (current->thread.regs->msr & MSR_FP)) { in enable_kernel_fp()
225 MSR_TM_ACTIVE(current->thread.regs->msr)) in enable_kernel_fp()
[all …]
/linux-6.1.9/tools/lib/perf/
Devsel.c57 int idx, thread; in perf_evsel__alloc_fd() local
60 for (thread = 0; thread < nthreads; thread++) { in perf_evsel__alloc_fd()
61 int *fd = FD(evsel, idx, thread); in perf_evsel__alloc_fd()
87 static int get_group_fd(struct perf_evsel *evsel, int cpu_map_idx, int thread, int *group_fd) in get_group_fd() argument
104 fd = FD(leader, cpu_map_idx, thread); in get_group_fd()
117 int idx, thread, err = 0; in perf_evsel__open() local
148 for (thread = 0; thread < threads->nr; thread++) { in perf_evsel__open()
151 evsel_fd = FD(evsel, idx, thread); in perf_evsel__open()
157 err = get_group_fd(evsel, idx, thread, &group_fd); in perf_evsel__open()
162 threads->map[thread].pid, in perf_evsel__open()
[all …]
/linux-6.1.9/arch/sh/kernel/cpu/sh4/
Dfpu.c84 :"0"((char *)(&tsk->thread.xstate->hardfpu.status)), in save_fpu()
134 :"0" (tsk->thread.xstate), "r" (FPSCR_RCHG) in restore_fpu()
230 if ((tsk->thread.xstate->hardfpu.fpscr & FPSCR_CAUSE_ERROR)) in ieee_fpe_handler()
232 denormal_to_double(&tsk->thread.xstate->hardfpu, in ieee_fpe_handler()
248 hx = tsk->thread.xstate->hardfpu.fp_regs[n]; in ieee_fpe_handler()
249 hy = tsk->thread.xstate->hardfpu.fp_regs[m]; in ieee_fpe_handler()
250 fpscr = tsk->thread.xstate->hardfpu.fpscr; in ieee_fpe_handler()
260 | tsk->thread.xstate->hardfpu.fp_regs[n + 1]; in ieee_fpe_handler()
262 | tsk->thread.xstate->hardfpu.fp_regs[m + 1]; in ieee_fpe_handler()
264 tsk->thread.xstate->hardfpu.fp_regs[n] = llx >> 32; in ieee_fpe_handler()
[all …]
/linux-6.1.9/arch/um/kernel/
Dprocess.c88 to->thread.prev_sched = from; in __switch_to()
91 switch_threads(&from->thread.switch_buf, &to->thread.switch_buf); in __switch_to()
94 return current->thread.prev_sched; in __switch_to()
99 struct pt_regs *regs = &current->thread.regs; in interrupt_end()
124 if (current->thread.prev_sched != NULL) in new_thread_handler()
125 schedule_tail(current->thread.prev_sched); in new_thread_handler()
126 current->thread.prev_sched = NULL; in new_thread_handler()
128 fn = current->thread.request.u.thread.proc; in new_thread_handler()
129 arg = current->thread.request.u.thread.arg; in new_thread_handler()
135 userspace(&current->thread.regs.regs, current_thread_info()->aux_fp_regs); in new_thread_handler()
[all …]
/linux-6.1.9/arch/s390/kernel/
Dprocess.c93 dst->thread.fpu.regs = dst->thread.fpu.fprs; in arch_dup_task_struct()
102 dst->thread.ri_cb = NULL; in arch_dup_task_struct()
103 dst->thread.gs_cb = NULL; in arch_dup_task_struct()
104 dst->thread.gs_bc_cb = NULL; in arch_dup_task_struct()
121 p->thread.ksp = (unsigned long) frame; in copy_thread()
123 save_access_regs(&p->thread.acrs[0]); in copy_thread()
126 memset(&p->thread.per_user, 0, sizeof(p->thread.per_user)); in copy_thread()
127 memset(&p->thread.per_event, 0, sizeof(p->thread.per_event)); in copy_thread()
129 p->thread.per_flags = 0; in copy_thread()
131 p->thread.user_timer = 0; in copy_thread()
[all …]
Dguarded_storage.c17 kfree(tsk->thread.gs_cb); in guarded_storage_release()
18 kfree(tsk->thread.gs_bc_cb); in guarded_storage_release()
25 if (!current->thread.gs_cb) { in gs_enable()
33 current->thread.gs_cb = gs_cb; in gs_enable()
41 if (current->thread.gs_cb) { in gs_disable()
43 kfree(current->thread.gs_cb); in gs_disable()
44 current->thread.gs_cb = NULL; in gs_disable()
55 gs_cb = current->thread.gs_bc_cb; in gs_set_bc_cb()
60 current->thread.gs_bc_cb = gs_cb; in gs_set_bc_cb()
71 gs_cb = current->thread.gs_bc_cb; in gs_clear_bc_cb()
[all …]

12345678910>>...40