Skip to content

Commit

Permalink
powerpc/mm: fix section mismatch for setup_kup()
Browse files Browse the repository at this point in the history
commit b28c975 ("powerpc/64: Setup KUP on secondary CPUs")
moved setup_kup() out of the __init section. As stated in that commit,
"this is only for 64-bit". But this function is also used on PPC32,
where the two functions called by setup_kup() are in the __init
section, so setup_kup() has to either be kept in the __init
section on PPC32 or marked __ref.

This patch marks it __ref, it fixes the below build warnings.

  MODPOST vmlinux.o
WARNING: vmlinux.o(.text+0x169ec): Section mismatch in reference from the function setup_kup() to the function .init.text:setup_kuep()
The function setup_kup() references
the function __init setup_kuep().
This is often because setup_kup lacks a __init
annotation or the annotation of setup_kuep is wrong.

WARNING: vmlinux.o(.text+0x16a04): Section mismatch in reference from the function setup_kup() to the function .init.text:setup_kuap()
The function setup_kup() references
the function __init setup_kuap().
This is often because setup_kup lacks a __init
annotation or the annotation of setup_kuap is wrong.

Fixes: b28c975 ("powerpc/64: Setup KUP on secondary CPUs")
Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
  • Loading branch information
chleroy authored and mpe committed May 6, 2019
1 parent c4e3184 commit 67d53f3
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion arch/powerpc/mm/init-common.c
Expand Up @@ -45,7 +45,7 @@ static int __init parse_nosmap(char *p)
}
early_param("nosmap", parse_nosmap);

void setup_kup(void)
void __ref setup_kup(void)
{
setup_kuep(disable_kuep);
setup_kuap(disable_kuap);
Expand Down

0 comments on commit 67d53f3

Please sign in to comment.