From: Rusty Russell Date: Tue, 18 Mar 2014 09:42:59 +0000 (+1030) Subject: powerpc: modules: use r12 for stub jump address. X-Git-Tag: firefly_0821_release~176^2~3789^2~40^2~11 X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=b1ce369e820aaca3d91e9d9bbaaf860794d9ab01;p=firefly-linux-kernel-4.4.55.git powerpc: modules: use r12 for stub jump address. In ELFv2, r12 is supposed to equal to PC on entry to a function. Our stubs use r11, so change swap that with r12. Signed-off-by: Rusty Russell --- diff --git a/arch/powerpc/kernel/module_64.c b/arch/powerpc/kernel/module_64.c index 8bfcf1b8b6d4..f8b6d28784ef 100644 --- a/arch/powerpc/kernel/module_64.c +++ b/arch/powerpc/kernel/module_64.c @@ -67,13 +67,13 @@ struct ppc64_stub_entry r2) into the stub. */ static struct ppc64_stub_entry ppc64_stub = { .jump = { - 0x3d820000, /* addis r12,r2, */ - 0x398c0000, /* addi r12,r12, */ + 0x3d620000, /* addis r11,r2, */ + 0x396b0000, /* addi r11,r11, */ /* Save current r2 value in magic place on the stack. */ 0xf8410000|R2_STACK_OFFSET, /* std r2,R2_STACK_OFFSET(r1) */ - 0xe96c0020, /* ld r11,32(r12) */ - 0xe84c0028, /* ld r2,40(r12) */ - 0x7d6903a6, /* mtctr r11 */ + 0xe98b0020, /* ld r12,32(r11) */ + 0xe84b0026, /* ld r2,40(r11) */ + 0x7d8903a6, /* mtctr r12 */ 0x4e800420 /* bctr */ } };