Home
last modified time | relevance | path

Searched refs:plt (Results 1 – 25 of 67) sorted by relevance

123

/Linux-v6.6/arch/arm/kernel/
Dmodule-plts.c31 static void prealloc_fixed(struct mod_plt_sec *pltsec, struct plt_entries *plt) in prealloc_fixed() argument
39 for (i = 0; i < ARRAY_SIZE(plt->ldr); ++i) in prealloc_fixed()
40 plt->ldr[i] = PLT_ENT_LDR; in prealloc_fixed()
42 BUILD_BUG_ON(sizeof(fixed_plts) > sizeof(plt->lit)); in prealloc_fixed()
43 memcpy(plt->lit, fixed_plts, sizeof(fixed_plts)); in prealloc_fixed()
50 struct plt_entries *plt; in get_module_plt() local
55 pltsec->plt_ent = (struct plt_entries *)pltsec->plt->sh_addr; in get_module_plt()
56 plt = pltsec->plt_ent; in get_module_plt()
58 prealloc_fixed(pltsec, plt); in get_module_plt()
61 if (plt->lit[idx] == val) in get_module_plt()
[all …]
/Linux-v6.6/drivers/net/phy/
Dphy_led_triggers.c31 struct phy_led_trigger *plt; in phy_led_trigger_change_speed() local
39 plt = phy_speed_to_led_trigger(phy, phy->speed); in phy_led_trigger_change_speed()
40 if (!plt) { in phy_led_trigger_change_speed()
47 if (plt != phy->last_triggered) { in phy_led_trigger_change_speed()
54 led_trigger_event(&plt->trigger, LED_FULL); in phy_led_trigger_change_speed()
55 phy->last_triggered = plt; in phy_led_trigger_change_speed()
68 struct phy_led_trigger *plt, in phy_led_trigger_register() argument
72 plt->speed = speed; in phy_led_trigger_register()
73 phy_led_trigger_format_name(phy, plt->name, sizeof(plt->name), suffix); in phy_led_trigger_register()
74 plt->trigger.name = plt->name; in phy_led_trigger_register()
[all …]
/Linux-v6.6/arch/riscv/kernel/
Dmodule-sections.c36 struct mod_section *plt_sec = &mod->arch.plt; in module_emit_plt_entry()
37 struct plt_entry *plt = get_plt_entry(val, plt_sec, got_plt_sec); in module_emit_plt_entry() local
40 if (plt) in module_emit_plt_entry()
41 return (unsigned long)plt; in module_emit_plt_entry()
46 plt = (struct plt_entry *)plt_sec->shdr->sh_addr; in module_emit_plt_entry()
47 plt[i] = emit_plt_entry(val, in module_emit_plt_entry()
48 (unsigned long)&plt[i], in module_emit_plt_entry()
55 return (unsigned long)&plt[i]; in module_emit_plt_entry()
102 mod->arch.plt.shdr = sechdrs + i; in module_frob_arch_sections()
109 if (!mod->arch.plt.shdr) { in module_frob_arch_sections()
[all …]
/Linux-v6.6/arch/x86/boot/compressed/
Dvmlinux.lds.S84 .got.plt (INFO) : {
85 *(.got.plt)
87 ASSERT(SIZEOF(.got.plt) == 0 ||
89 SIZEOF(.got.plt) == 0x18,
91 SIZEOF(.got.plt) == 0xc,
104 .plt : {
105 *(.plt) *(.plt.*)
107 ASSERT(SIZEOF(.plt) == 0, "Unexpected run-time procedure linkages detected!")
/Linux-v6.6/arch/arm64/kernel/
Dmodule-plts.c28 struct plt_entry plt; in get_plt_entry() local
35 plt = __get_adrp_add_pair(dst, (u64)pc, AARCH64_INSN_REG_16); in get_plt_entry()
36 plt.br = cpu_to_le32(br); in get_plt_entry()
38 return plt; in get_plt_entry()
75 struct plt_entry *plt = (struct plt_entry *)sechdrs[pltsec->plt_shndx].sh_addr; in module_emit_plt_entry() local
80 if (is_forbidden_offset_for_adrp(&plt[i].adrp)) in module_emit_plt_entry()
83 plt[i] = get_plt_entry(val, &plt[i]); in module_emit_plt_entry()
90 if (j >= 0 && plt_entries_equal(plt + i, plt + j)) in module_emit_plt_entry()
91 return (u64)&plt[j]; in module_emit_plt_entry()
97 return (u64)&plt[i]; in module_emit_plt_entry()
[all …]
Dvmlinux.lds.S199 .got.plt : { *(.got.plt) }
200 ASSERT(SIZEOF(.got.plt) == 0 || SIZEOF(.got.plt) == 0x18,
335 .plt : {
336 *(.plt) *(.plt.*) *(.iplt) *(.igot .igot.plt)
338 ASSERT(SIZEOF(.plt) == 0, "Unexpected run-time procedure linkages detected!")
Dftrace.c201 struct plt_entry *plt = mod->arch.ftrace_trampolines; in get_ftrace_plt() local
203 return &plt[FTRACE_PLT_IDX]; in get_ftrace_plt()
230 struct plt_entry *plt; in ftrace_find_callable_addr() local
273 plt = get_ftrace_plt(mod); in ftrace_find_callable_addr()
274 if (!plt) { in ftrace_find_callable_addr()
279 *addr = (unsigned long)plt; in ftrace_find_callable_addr()
/Linux-v6.6/arch/loongarch/kernel/
Dmodule-sections.c41 struct mod_section *plt_sec = &mod->arch.plt; in module_emit_plt_entry()
43 struct plt_entry *plt = get_plt_entry(val, sechdrs, plt_sec, plt_idx_sec); in module_emit_plt_entry() local
46 if (plt) in module_emit_plt_entry()
47 return (Elf_Addr)plt; in module_emit_plt_entry()
52 plt = (struct plt_entry *)sechdrs[plt_sec->shndx].sh_addr; in module_emit_plt_entry()
53 plt[nr] = emit_plt_entry(val); in module_emit_plt_entry()
61 return (Elf_Addr)&plt[nr]; in module_emit_plt_entry()
117 mod->arch.plt.shndx = i; in module_frob_arch_sections()
128 if (!mod->arch.plt.shndx) { in module_frob_arch_sections()
161 plt_sec = sechdrs + mod->arch.plt.shndx; in module_frob_arch_sections()
[all …]
Dftrace_dyn.c43 struct plt_entry *plt = mod->arch.ftrace_trampolines; in get_ftrace_plt() local
46 return &plt[FTRACE_PLT_IDX]; in get_ftrace_plt()
49 return &plt[FTRACE_REGS_PLT_IDX]; in get_ftrace_plt()
66 struct plt_entry *plt; in ftrace_find_callable_addr() local
101 plt = get_ftrace_plt(mod, *addr); in ftrace_find_callable_addr()
102 if (!plt) { in ftrace_find_callable_addr()
107 *addr = (unsigned long)plt; in ftrace_find_callable_addr()
Dvmlinux.lds.S103 .plt : ALIGN(16) { *(.plt) }
104 .got.plt : ALIGN(16) { *(.got.plt) }
/Linux-v6.6/arch/um/kernel/
Duml.lds.S58 .rel.plt : {
59 *(.rel.plt)
64 .rela.plt : {
65 *(.rela.plt)
96 .got : { *(.got.plt) *(.got) }
Ddyn.lds.S57 .rel.plt : {
58 *(.rel.plt)
63 .rela.plt : {
64 *(.rela.plt)
72 .plt : { *(.plt) }
157 .got : { *(.got.plt) *(.got) }
/Linux-v6.6/arch/ia64/kernel/
Dmodule.c235 patch_plt (struct module *mod, struct plt_entry *plt, long target_ip, unsigned long target_gp) in patch_plt() argument
237 if (apply_imm64(mod, (struct insn *) (plt->bundle[0] + 2), target_gp) in patch_plt()
238 && apply_imm60(mod, (struct insn *) (plt->bundle[1] + 2), in patch_plt()
239 (target_ip - (int64_t) plt->bundle[1]) / 16)) in patch_plt()
245 plt_target (struct plt_entry *plt) in plt_target() argument
247 uint64_t b0, b1, *b = (uint64_t *) plt->bundle[1]; in plt_target()
254 return (long) plt->bundle[1] + 16*off; in plt_target()
285 patch_plt (struct module *mod, struct plt_entry *plt, long target_ip, unsigned long target_gp) in patch_plt() argument
287 if (apply_imm64(mod, (struct insn *) (plt->bundle[0] + 2), target_ip) in patch_plt()
288 && apply_imm64(mod, (struct insn *) (plt->bundle[1] + 2), target_gp)) in patch_plt()
[all …]
/Linux-v6.6/arch/riscv/include/asm/
Dmodule.h23 struct mod_section plt; member
65 unsigned long plt, in emit_plt_entry() argument
80 unsigned long offset = got_plt - plt; in emit_plt_entry()
105 struct plt_entry *plt = (struct plt_entry *)sec_plt->shdr->sh_addr; in get_plt_entry() local
108 return plt + got_plt_idx; in get_plt_entry()
Dmodule.lds.h5 .plt : { BYTE(0) }
7 .got.plt : { BYTE(0) }
/Linux-v6.6/arch/x86/kernel/
Dvmlinux.lds.S468 .got.plt (INFO) : { *(.got.plt) }
469 ASSERT(SIZEOF(.got.plt) == 0 ||
471 SIZEOF(.got.plt) == 0x18,
473 SIZEOF(.got.plt) == 0xc,
486 .plt : {
487 *(.plt) *(.plt.*) *(.iplt)
489 ASSERT(SIZEOF(.plt) == 0, "Unexpected run-time procedure linkages detected!")
/Linux-v6.6/arch/arm64/kernel/vdso/
Dvdso.lds.S63 *(.got.plt)
64 *(.plt)
65 *(.plt.*)
67 *(.igot .igot.plt)
/Linux-v6.6/arch/arm64/kernel/vdso32/
Dvdso.lds.S42 *(.got.plt)
43 *(.plt)
46 *(.igot.plt)
/Linux-v6.6/arch/arm/include/asm/
Dmodule.lds.h4 .plt : { BYTE(0) }
5 .init.plt : { BYTE(0) }
/Linux-v6.6/arch/loongarch/include/asm/
Dmodule.lds.h6 .plt 0 : { BYTE(0) }
7 .plt.idx 0 : { BYTE(0) }
Dmodule.h21 struct mod_section plt; member
87 struct plt_entry *plt = (struct plt_entry *)sechdrs[sec_plt->shndx].sh_addr; in get_plt_entry() local
92 return plt + plt_idx; in get_plt_entry()
/Linux-v6.6/arch/arm64/include/asm/
Dmodule.lds.h2 .plt 0 : { BYTE(0) }
3 .init.plt 0 : { BYTE(0) }
/Linux-v6.6/arch/ia64/include/asm/
Dmodule.lds.h10 .core.plt : { BYTE(0) }
11 .init.plt : { BYTE(0) }
/Linux-v6.6/arch/nios2/boot/compressed/
Dvmlinux.lds.S28 *(.got.plt)
29 *(.igot.plt)
/Linux-v6.6/arch/nios2/kernel/
Dvmlinux.lds.S35 *(.got.plt)
36 *(.igot.plt)

123