Thread (25 messages) 25 messages, 4 authors, 2017-10-23

Re: [PATCHv3 4/7] powerpc64: Add .opd based function descriptor dereference

From: Michael Ellerman <mpe@ellerman.id.au>
Date: 2017-10-04 11:06:42
Also in: lkml

Petr Mladek [off-list ref] writes:
On Sat 2017-09-30 11:53:16, Sergey Senozhatsky wrote:
quoted
diff --git a/arch/powerpc/kernel/module_64.c b/arch/powerpc/kernel/module_64.c
index 0b0f89685b67..94caec045a90 100644
--- a/arch/powerpc/kernel/module_64.c
+++ b/arch/powerpc/kernel/module_64.c
@@ -712,6 +717,17 @@ int apply_relocate_add(Elf64_Shdr *sechdrs,
 	return 0;
 }
 
+#ifdef PPC64_ELF_ABI_v1
+unsigned long dereference_module_function_descriptor(struct module *mod,
+						     unsigned long addr)
+{
+	if (addr < mod->arch.start_opd || addr >= mod->arch.end_opd)
+		return addr;
+
+	return dereference_function_descriptor(addr);
+}
+#endif /* PPC64_ELF_ABI_v1 */
I would personally move this up in the source file. It is related to
the definition of func_desc() and other functions that are
also PPC_ELF_ABI-specific.
Yeah that would be neater. There's already a PPC64_ELF_ABI_v2 block, you
could put this in the else case of that.

But we can do that later if you're not respinning otherwise.

cheers
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help