Lines Matching refs:me
346 struct module *me) in module_frob_arch_sections() argument
354 me->arch.stubs_section = i; in module_frob_arch_sections()
356 me->arch.toc_section = i; in module_frob_arch_sections()
364 me->arch.start_opd = sechdrs[i].sh_addr; in module_frob_arch_sections()
365 me->arch.end_opd = sechdrs[i].sh_addr + in module_frob_arch_sections()
380 if (!me->arch.stubs_section) { in module_frob_arch_sections()
381 pr_err("%s: doesn't contain .stubs.\n", me->name); in module_frob_arch_sections()
389 if (!me->arch.toc_section) in module_frob_arch_sections()
390 me->arch.toc_section = me->arch.stubs_section; in module_frob_arch_sections()
393 sechdrs[me->arch.stubs_section].sh_size = get_stubs_size(hdr, sechdrs); in module_frob_arch_sections()
403 static inline unsigned long my_r2(const Elf64_Shdr *sechdrs, struct module *me) in my_r2() argument
405 return (sechdrs[me->arch.toc_section].sh_addr & ~0xfful) + 0x8000; in my_r2()
419 struct module *me) in create_stub() argument
426 reladdr = (unsigned long)entry - my_r2(sechdrs, me); in create_stub()
429 me->name, (void *)reladdr, (void *)my_r2); in create_stub()
446 struct module *me) in stub_for_addr() argument
451 num_stubs = sechdrs[me->arch.stubs_section].sh_size / sizeof(*stubs); in stub_for_addr()
454 stubs = (void *)sechdrs[me->arch.stubs_section].sh_addr; in stub_for_addr()
463 if (!create_stub(sechdrs, &stubs[i], addr, me)) in stub_for_addr()
514 static int restore_r2(const char *name, u32 *instruction, struct module *me) in restore_r2() argument
531 me->name, *instruction, instruction); in restore_r2()
543 struct module *me) in apply_relocate_add() argument
555 if (!me->arch.toc_fixed) { in apply_relocate_add()
560 sym->st_value = my_r2(sechdrs, me); in apply_relocate_add()
561 me->arch.toc_fixed = true; in apply_relocate_add()
592 *(unsigned long *)location = my_r2(sechdrs, me); in apply_relocate_add()
597 value -= my_r2(sechdrs, me); in apply_relocate_add()
600 me->name, value); in apply_relocate_add()
610 value -= my_r2(sechdrs, me); in apply_relocate_add()
618 value -= my_r2(sechdrs, me); in apply_relocate_add()
621 me->name, value); in apply_relocate_add()
631 value -= my_r2(sechdrs, me); in apply_relocate_add()
634 me->name, value); in apply_relocate_add()
644 value -= my_r2(sechdrs, me); in apply_relocate_add()
656 value = stub_for_addr(sechdrs, value, me); in apply_relocate_add()
660 (u32 *)location + 1, me)) in apply_relocate_add()
671 me->name, (long int)value); in apply_relocate_add()
704 value = my_r2(sechdrs, me) - (unsigned long)location; in apply_relocate_add()
745 me->name, in apply_relocate_add()
773 struct module *me, unsigned long addr) in create_ftrace_stub() argument
786 num_stubs = sechdrs[me->arch.stubs_section].sh_size / sizeof(*entry); in create_ftrace_stub()
789 entry = (void *)sechdrs[me->arch.stubs_section].sh_addr; in create_ftrace_stub()
793 pr_err("%s: Unable to find a free slot for ftrace stub.\n", me->name); in create_ftrace_stub()
803 me->name, (void *)addr); in create_ftrace_stub()
818 struct module *me, unsigned long addr) in create_ftrace_stub() argument
820 return stub_for_addr(sechdrs, addr, me); in create_ftrace_stub()