Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit f151f3b9 authored by Kevin Cernekee's avatar Kevin Cernekee Committed by John Crispin
Browse files

MIPS: tlbex: Fix section mismatches



The new functions introduced in commit 02a54177 (MIPS: tlbex: Deal with
re-definition of label) should be marked __cpuinit, to eliminate a
warning that can pop up when CONFIG_EXPORT_UASM is disabled:

      LD      arch/mips/mm/built-in.o
    WARNING: arch/mips/mm/built-in.o(.text+0x2a4c): Section mismatch in reference from the function uasm_bgezl_hazard() to the function .cpuinit.text:uasm_il_bgezl()
    The function uasm_bgezl_hazard() references
    the function __cpuinit uasm_il_bgezl().
    This is often because uasm_bgezl_hazard lacks a __cpuinit
    annotation or the annotation of uasm_il_bgezl is wrong.

    WARNING: arch/mips/mm/built-in.o(.text+0x2a68): Section mismatch in reference from the function uasm_bgezl_label() to the function .cpuinit.text:uasm_build_label()
    The function uasm_bgezl_label() references
    the function __cpuinit uasm_build_label().
    This is often because uasm_bgezl_label lacks a __cpuinit
    annotation or the annotation of uasm_build_label is wrong.

(This warning might not occur if the function was inlined.)

Signed-off-by: default avatarKevin Cernekee <cernekee@gmail.com>
Patchwork: http://patchwork.linux-mips.org/patch/4517


Signed-off-by: default avatarJohn Crispin <blogic@openwrt.org>
parent 0e4a43ed
Loading
Loading
Loading
Loading
+6 −2
Original line number Original line Diff line number Diff line
@@ -183,7 +183,9 @@ UASM_L_LA(_tlb_huge_update)


static int __cpuinitdata hazard_instance;
static int __cpuinitdata hazard_instance;


static void uasm_bgezl_hazard(u32 **p, struct uasm_reloc **r, int instance)
static void __cpuinit uasm_bgezl_hazard(u32 **p,
					struct uasm_reloc **r,
					int instance)
{
{
	switch (instance) {
	switch (instance) {
	case 0 ... 7:
	case 0 ... 7:
@@ -194,7 +196,9 @@ static void uasm_bgezl_hazard(u32 **p, struct uasm_reloc **r, int instance)
	}
	}
}
}


static void uasm_bgezl_label(struct uasm_label **l, u32 **p, int instance)
static void __cpuinit uasm_bgezl_label(struct uasm_label **l,
				       u32 **p,
				       int instance)
{
{
	switch (instance) {
	switch (instance) {
	case 0 ... 7:
	case 0 ... 7: