| /linux/arch/sparc/kernel/ |
| H A D | uprobes.c | 93 static unsigned long relbranch_fixup(u32 insn, struct uprobe_task *utask, in relbranch_fixup() argument 98 return utask->autask.saved_tnpc + 0x4UL; in relbranch_fixup() 106 unsigned long real_pc = (unsigned long) utask->vaddr; in relbranch_fixup() 107 unsigned long ixol_addr = utask->xol_vaddr; in relbranch_fixup() 194 struct uprobe_task *utask = current->utask; in arch_uprobe_pre_xol() local 195 struct arch_uprobe_task *autask = ¤t->utask->autask; in arch_uprobe_pre_xol() 206 instruction_pointer_set(regs, utask->xol_vaddr); in arch_uprobe_pre_xol() 220 struct uprobe_task *utask = current->utask; in arch_uprobe_post_xol() local 221 struct arch_uprobe_task *autask = &utask->autask; in arch_uprobe_post_xol() 225 if (utask->state == UTASK_SSTEP_ACK) { in arch_uprobe_post_xol() [all …]
|
| /linux/kernel/events/ |
| H A D | uprobes.c | 1869 static bool xol_get_insn_slot(struct uprobe *uprobe, struct uprobe_task *utask) in xol_get_insn_slot() argument 1879 utask->xol_vaddr = area->vaddr + slot_nr * UPROBE_XOL_SLOT_BYTES; in xol_get_insn_slot() 1880 arch_uprobe_copy_ixol(area->page, utask->xol_vaddr, in xol_get_insn_slot() 1888 static void xol_free_insn_slot(struct uprobe_task *utask) in xol_free_insn_slot() argument 1891 unsigned long offset = utask->xol_vaddr - area->vaddr; in xol_free_insn_slot() 1894 utask->xol_vaddr = 0; in xol_free_insn_slot() 1934 struct uprobe_task *utask = current->utask; in uprobe_get_trap_addr() local 1936 if (unlikely(utask && utask->active_uprobe)) in uprobe_get_trap_addr() 1937 return utask->vaddr; in uprobe_get_trap_addr() 1942 static void ri_pool_push(struct uprobe_task *utask, struct return_instance *ri) in ri_pool_push() argument [all …]
|
| H A D | callchain.c | 185 struct uprobe_task *utask = current->utask; in fixup_uretprobe_trampoline_entries() local 189 if (likely(!utask || !utask->return_instances)) in fixup_uretprobe_trampoline_entries() 194 ri = utask->return_instances; in fixup_uretprobe_trampoline_entries()
|
| /linux/arch/csky/kernel/probes/ |
| H A D | uprobes.c | 50 struct uprobe_task *utask = current->utask; in arch_uprobe_pre_xol() local 52 utask->autask.saved_trap_no = current->thread.trap_no; in arch_uprobe_pre_xol() 55 instruction_pointer_set(regs, utask->xol_vaddr); in arch_uprobe_pre_xol() 64 struct uprobe_task *utask = current->utask; in arch_uprobe_post_xol() local 67 current->thread.trap_no = utask->autask.saved_trap_no; in arch_uprobe_post_xol() 69 instruction_pointer_set(regs, utask->vaddr + auprobe->insn_size); in arch_uprobe_post_xol() 103 struct uprobe_task *utask = current->utask; in arch_uprobe_abort_xol() local 105 current->thread.trap_no = utask->autask.saved_trap_no; in arch_uprobe_abort_xol() 111 instruction_pointer_set(regs, utask->vaddr); in arch_uprobe_abort_xol()
|
| /linux/arch/loongarch/kernel/ |
| H A D | uprobes.c | 40 struct uprobe_task *utask = current->utask; in arch_uprobe_pre_xol() local 42 utask->autask.saved_trap_nr = current->thread.trap_nr; in arch_uprobe_pre_xol() 44 instruction_pointer_set(regs, utask->xol_vaddr); in arch_uprobe_pre_xol() 51 struct uprobe_task *utask = current->utask; in arch_uprobe_post_xol() local 54 current->thread.trap_nr = utask->autask.saved_trap_nr; in arch_uprobe_post_xol() 55 instruction_pointer_set(regs, utask->vaddr + LOONGARCH_INSN_SIZE); in arch_uprobe_post_xol() 62 struct uprobe_task *utask = current->utask; in arch_uprobe_abort_xol() local 64 current->thread.trap_nr = utask->autask.saved_trap_nr; in arch_uprobe_abort_xol() 65 instruction_pointer_set(regs, utask->vaddr); in arch_uprobe_abort_xol()
|
| /linux/arch/arm/probes/uprobes/ |
| H A D | core.c | 135 struct uprobe_task *utask = current->utask; in arch_uprobe_pre_xol() local 138 auprobe->prehandler(auprobe, &utask->autask, regs); in arch_uprobe_pre_xol() 140 utask->autask.saved_trap_no = current->thread.trap_no; in arch_uprobe_pre_xol() 142 regs->ARM_pc = utask->xol_vaddr; in arch_uprobe_pre_xol() 149 struct uprobe_task *utask = current->utask; in arch_uprobe_post_xol() local 153 current->thread.trap_no = utask->autask.saved_trap_no; in arch_uprobe_post_xol() 154 regs->ARM_pc = utask->vaddr + 4; in arch_uprobe_post_xol() 157 auprobe->posthandler(auprobe, &utask->autask, regs); in arch_uprobe_post_xol() 172 struct uprobe_task *utask = current->utask; in arch_uprobe_abort_xol() local 174 current->thread.trap_no = utask->autask.saved_trap_no; in arch_uprobe_abort_xol() [all …]
|
| /linux/arch/arm64/kernel/probes/ |
| H A D | uprobes.c | 73 struct uprobe_task *utask = current->utask; in arch_uprobe_pre_xol() local 79 instruction_pointer_set(regs, utask->xol_vaddr); in arch_uprobe_pre_xol() 88 struct uprobe_task *utask = current->utask; in arch_uprobe_post_xol() local 93 instruction_pointer_set(regs, utask->vaddr + 4); in arch_uprobe_post_xol() 131 struct uprobe_task *utask = current->utask; in arch_uprobe_abort_xol() local 137 instruction_pointer_set(regs, utask->vaddr); in arch_uprobe_abort_xol() 221 struct uprobe_task *utask = current->utask; in uprobe_single_step_handler() local 223 WARN_ON(utask && (instruction_pointer(regs) != utask->xol_vaddr + 4)); in uprobe_single_step_handler()
|
| /linux/arch/riscv/kernel/probes/ |
| H A D | uprobes.c | 61 struct uprobe_task *utask = current->utask; in arch_uprobe_pre_xol() local 63 utask->autask.saved_cause = current->thread.bad_cause; in arch_uprobe_pre_xol() 66 instruction_pointer_set(regs, utask->xol_vaddr); in arch_uprobe_pre_xol() 73 struct uprobe_task *utask = current->utask; in arch_uprobe_post_xol() local 76 current->thread.bad_cause = utask->autask.saved_cause; in arch_uprobe_post_xol() 78 instruction_pointer_set(regs, utask->vaddr + auprobe->insn_size); in arch_uprobe_post_xol() 110 struct uprobe_task *utask = current->utask; in arch_uprobe_abort_xol() local 112 current->thread.bad_cause = utask->autask.saved_cause; in arch_uprobe_abort_xol() 117 instruction_pointer_set(regs, utask->vaddr); in arch_uprobe_abort_xol()
|
| /linux/arch/mips/kernel/ |
| H A D | uprobes.c | 107 struct uprobe_task *utask = current->utask; in arch_uprobe_pre_xol() local 119 utask->autask.saved_trap_nr = current->thread.trap_nr; in arch_uprobe_pre_xol() 121 regs->cp0_epc = current->utask->xol_vaddr; in arch_uprobe_pre_xol() 128 struct uprobe_task *utask = current->utask; in arch_uprobe_post_xol() local 130 current->thread.trap_nr = utask->autask.saved_trap_nr; in arch_uprobe_post_xol() 192 struct uprobe_task *utask = current->utask; in arch_uprobe_abort_xol() local 194 current->thread.trap_nr = utask->autask.saved_trap_nr; in arch_uprobe_abort_xol() 195 instruction_pointer_set(regs, utask->vaddr); in arch_uprobe_abort_xol()
|
| /linux/arch/powerpc/kernel/ |
| H A D | uprobes.c | 66 struct arch_uprobe_task *autask = ¤t->utask->autask; in arch_uprobe_pre_xol() 70 regs_set_return_ip(regs, current->utask->xol_vaddr); in arch_uprobe_pre_xol() 114 struct uprobe_task *utask = current->utask; in arch_uprobe_post_xol() local 118 current->thread.trap_nr = utask->autask.saved_trap_nr; in arch_uprobe_post_xol() 127 regs_set_return_ip(regs, (unsigned long)ppc_inst_next((void *)utask->vaddr, auprobe->insn)); in arch_uprobe_post_xol() 170 struct uprobe_task *utask = current->utask; in arch_uprobe_abort_xol() local 172 current->thread.trap_nr = utask->autask.saved_trap_nr; in arch_uprobe_abort_xol() 173 instruction_pointer_set(regs, utask->vaddr); in arch_uprobe_abort_xol()
|
| /linux/arch/s390/kernel/ |
| H A D | uprobes.c | 38 regs->psw.addr = current->utask->xol_vaddr; in arch_uprobe_pre_xol() 80 struct uprobe_task *utask = current->utask; in arch_uprobe_post_xol() local 88 regs->psw.addr += utask->vaddr - utask->xol_vaddr; in arch_uprobe_post_xol() 92 regs->gprs[reg] += utask->vaddr - utask->xol_vaddr; in arch_uprobe_post_xol() 97 if (regs->psw.addr - utask->xol_vaddr == ilen) in arch_uprobe_post_xol() 98 regs->psw.addr = utask->vaddr + ilen; in arch_uprobe_post_xol() 103 current->thread.per_event.address = utask->vaddr; in arch_uprobe_post_xol() 139 regs->psw.addr = current->utask->vaddr; in arch_uprobe_abort_xol() 140 current->thread.per_event.address = current->utask->vaddr; in arch_uprobe_abort_xol()
|
| /linux/arch/x86/kernel/ |
| H A D | uprobes.c | 603 struct uprobe_task *utask = current->utask; in riprel_pre_xol() local 606 utask->autask.saved_scratch_register = *sr; in riprel_pre_xol() 607 *sr = utask->vaddr + auprobe->defparam.ilen; in riprel_pre_xol() 614 struct uprobe_task *utask = current->utask; in riprel_post_xol() local 617 *sr = utask->autask.saved_scratch_register; in riprel_post_xol() 1265 struct uprobe_task *utask = current->utask; in default_post_xol_op() local 1269 long correction = utask->vaddr - utask->xol_vaddr; in default_post_xol_op() 1273 if (emulate_push_stack(regs, utask->vaddr + auprobe->defparam.ilen)) in default_post_xol_op() 1278 utask->autask.saved_tf = true; in default_post_xol_op() 1635 struct uprobe_task *utask = current->utask; in arch_uprobe_pre_xol() local [all …]
|
| /linux/sound/core/ |
| H A D | compress_offload.c | 1059 static int snd_compr_task_new(struct snd_compr_stream *stream, struct snd_compr_task *utask) in snd_compr_task_new() argument 1066 if (utask->origin_seqno != 0 || utask->input_size != 0) in snd_compr_task_new() 1071 task->seqno = utask->seqno = snd_compr_seqno_next(stream); in snd_compr_task_new() 1072 task->input_size = utask->input_size; in snd_compr_task_new() 1095 utask->input_fd = fd_i; in snd_compr_task_new() 1096 utask->output_fd = fd_o; in snd_compr_task_new() 1123 struct snd_compr_task *utask) in snd_compr_task_start_prepare() argument 1129 if (utask->input_size > task->input->size) in snd_compr_task_start_prepare() 1131 task->flags = utask->flags; in snd_compr_task_start_prepare() 1132 task->input_size = utask->input_size; in snd_compr_task_start_prepare() [all …]
|
| /linux/drivers/video/fbdev/ |
| H A D | uvesafb.c | 74 struct uvesafb_task *utask; in uvesafb_cn_callback() local 91 utask = (struct uvesafb_task *)msg->data; in uvesafb_cn_callback() 94 if (task->t.buf_len < utask->buf_len || in uvesafb_cn_callback() 95 utask->buf_len > msg->len - sizeof(*utask)) { in uvesafb_cn_callback() 103 memcpy(&task->t, utask, sizeof(*utask)); in uvesafb_cn_callback() 106 memcpy(task->buf, utask + 1, task->t.buf_len); in uvesafb_cn_callback()
|
| /linux/kernel/trace/ |
| H A D | trace_uprobe.c | 211 udd = (void *) current->utask->vaddr; in translate_user_vaddr() 1560 current->utask->vaddr = (unsigned long) &udd; in uprobe_dispatcher() 1591 current->utask->vaddr = (unsigned long) &udd; in uretprobe_dispatcher()
|
| H A D | bpf_trace.c | 1062 return ((struct uprobe_dispatch_data *)current->utask->vaddr)->bp_addr; in BPF_CALL_1()
|
| /linux/arch/x86/events/ |
| H A D | core.c | 2863 if (!current->utask) in is_uprobe_at_func_entry() 2866 auprobe = current->utask->auprobe; in is_uprobe_at_func_entry()
|
| /linux/include/linux/ |
| H A D | sched.h | 1566 struct uprobe_task *utask; member
|