Lines Matching refs:tpl

2704 static __always_inline void *text_poke_addr(const struct smp_text_poke_loc *tpl)  in text_poke_addr()  argument
2706 return _stext + tpl->rel_addr; in text_poke_addr()
2720 struct smp_text_poke_loc *tpl; in smp_text_poke_int3_handler() local
2749 tpl = __inline_bsearch(ip, text_poke_array.vec, text_poke_array.nr_entries, in smp_text_poke_int3_handler()
2752 if (!tpl) in smp_text_poke_int3_handler()
2755 tpl = text_poke_array.vec; in smp_text_poke_int3_handler()
2756 if (text_poke_addr(tpl) != ip) in smp_text_poke_int3_handler()
2760 ip += tpl->len; in smp_text_poke_int3_handler()
2762 switch (tpl->opcode) { in smp_text_poke_int3_handler()
2775 int3_emulate_call(regs, (long)ip + tpl->disp); in smp_text_poke_int3_handler()
2780 int3_emulate_jmp(regs, (long)ip + tpl->disp); in smp_text_poke_int3_handler()
2784 int3_emulate_jcc(regs, tpl->opcode & 0xf, (long)ip, tpl->disp); in smp_text_poke_int3_handler()
2971 struct smp_text_poke_loc *tpl; in __smp_text_poke_batch_add() local
2975 tpl = &text_poke_array.vec[text_poke_array.nr_entries++]; in __smp_text_poke_batch_add()
2979 memcpy((void *)tpl->text, opcode+i, len-i); in __smp_text_poke_batch_add()
2986 tpl->rel_addr = addr - (void *)_stext; in __smp_text_poke_batch_add()
2987 tpl->len = len; in __smp_text_poke_batch_add()
2988 tpl->opcode = insn.opcode.bytes[0]; in __smp_text_poke_batch_add()
2994 tpl->opcode = insn.opcode.bytes[1] - 0x10; in __smp_text_poke_batch_add()
2997 switch (tpl->opcode) { in __smp_text_poke_batch_add()
3006 BUG_ON(tpl->text[i] != INT3_INSN_OPCODE); in __smp_text_poke_batch_add()
3013 switch (tpl->opcode) { in __smp_text_poke_batch_add()
3022 tpl->disp = insn.immediate.value; in __smp_text_poke_batch_add()
3029 tpl->opcode = JMP8_INSN_OPCODE; in __smp_text_poke_batch_add()
3030 tpl->disp = 0; in __smp_text_poke_batch_add()
3035 tpl->opcode = JMP32_INSN_OPCODE; in __smp_text_poke_batch_add()
3036 tpl->disp = 0; in __smp_text_poke_batch_add()