[RESEND,RESEND] depmod: Ignore PowerPC64 ABIv2 .TOC. symbol
diff mbox

Message ID 1465536270.26682.11.camel@ellerman.id.au
State Accepted
Headers show

Commit Message

Michael Ellerman June 10, 2016, 5:24 a.m. UTC
From: Anton Blanchard <anton@samba.org>

The .TOC. symbol on the PowerPC64 ABIv2 identifies the GOT
pointer, similar to how other architectures use _GLOBAL_OFFSET_TABLE_.

This is not a symbol that needs relocation, and should be ignored
by depmod.

---
 tools/depmod.c | 2 ++
 1 file changed, 2 insertions(+)

--
To unsubscribe from this list: send the line "unsubscribe linux-modules" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Comments

Lucas De Marchi June 11, 2016, 3:27 a.m. UTC | #1
On Fri, Jun 10, 2016 at 2:24 AM, Michael Ellerman <mpe@ellerman.id.au> wrote:
> From: Anton Blanchard <anton@samba.org>
>
> The .TOC. symbol on the PowerPC64 ABIv2 identifies the GOT
> pointer, similar to how other architectures use _GLOBAL_OFFSET_TABLE_.
>
> This is not a symbol that needs relocation, and should be ignored
> by depmod.
>
> ---
>  tools/depmod.c | 2 ++
>  1 file changed, 2 insertions(+)
>
> diff --git a/tools/depmod.c b/tools/depmod.c
> index 6e9bb4d..a2e07c1 100644
> --- a/tools/depmod.c
> +++ b/tools/depmod.c
> @@ -2153,6 +2153,8 @@ static void depmod_add_fake_syms(struct depmod *depmod)
>         depmod_symbol_add(depmod, "__this_module", true, 0, NULL);
>         /* On S390, this is faked up too */
>         depmod_symbol_add(depmod, "_GLOBAL_OFFSET_TABLE_", true, 0, NULL);
> +       /* On PowerPC64 ABIv2, .TOC. is more or less _GLOBAL_OFFSET_TABLE_ */
> +       depmod_symbol_add(depmod, "TOC.", true, 0, NULL);
>  }
>
>  static int depmod_load_symvers(struct depmod *depmod, const char *filename)


Applied, thanks

Lucas De Marchi
--
To unsubscribe from this list: send the line "unsubscribe linux-modules" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Patch
diff mbox

diff --git a/tools/depmod.c b/tools/depmod.c
index 6e9bb4d..a2e07c1 100644
--- a/tools/depmod.c
+++ b/tools/depmod.c
@@ -2153,6 +2153,8 @@  static void depmod_add_fake_syms(struct depmod *depmod)
 	depmod_symbol_add(depmod, "__this_module", true, 0, NULL);
 	/* On S390, this is faked up too */
 	depmod_symbol_add(depmod, "_GLOBAL_OFFSET_TABLE_", true, 0, NULL);
+	/* On PowerPC64 ABIv2, .TOC. is more or less _GLOBAL_OFFSET_TABLE_ */
+	depmod_symbol_add(depmod, "TOC.", true, 0, NULL);
 }
 
 static int depmod_load_symvers(struct depmod *depmod, const char *filename)