powerpc: Curb objtool unannotated intra-function call warnings
authorSathvika Vasireddy <sv@linux.ibm.com>
Mon, 14 Nov 2022 17:57:42 +0000 (23:27 +0530)
committerMichael Ellerman <mpe@ellerman.id.au>
Tue, 15 Nov 2022 09:11:47 +0000 (20:11 +1100)
objtool throws the following unannotated intra-function call warnings:
arch/powerpc/kernel/entry_64.o: warning: objtool: .text+0x4: unannotated intra-function call
arch/powerpc/kvm/book3s_hv_rmhandlers.o: warning: objtool: .text+0xe64: unannotated intra-function call
arch/powerpc/kvm/book3s_hv_rmhandlers.o: warning: objtool: .text+0xee4: unannotated intra-function call

Fix these warnings by annotating intra-function calls, using
ANNOTATE_INTRA_FUNCTION_CALL macro, to indicate that the branch targets
are valid.

Tested-by: Naveen N. Rao <naveen.n.rao@linux.vnet.ibm.com>
Reviewed-by: Naveen N. Rao <naveen.n.rao@linux.vnet.ibm.com>
Reviewed-by: Christophe Leroy <christophe.leroy@csgroup.eu>
Acked-by: Josh Poimboeuf <jpoimboe@kernel.org>
Signed-off-by: Sathvika Vasireddy <sv@linux.ibm.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/20221114175754.1131267-5-sv@linux.ibm.com
arch/powerpc/kernel/entry_64.S
arch/powerpc/kvm/book3s_hv_rmhandlers.S

index 3e2e37e..1bf1121 100644 (file)
@@ -14,6 +14,7 @@
  *  code, and exception/interrupt return code for PowerPC.
  */
 
+#include <linux/objtool.h>
 #include <linux/errno.h>
 #include <linux/err.h>
 #include <asm/cache.h>
@@ -73,6 +74,7 @@ flush_branch_caches:
 
        // Flush the link stack
        .rept 64
+       ANNOTATE_INTRA_FUNCTION_CALL
        bl      .+4
        .endr
        b       1f
index a69d36c..96b65b5 100644 (file)
@@ -11,6 +11,7 @@
  */
 
 #include <linux/linkage.h>
+#include <linux/objtool.h>
 #include <asm/ppc_asm.h>
 #include <asm/code-patching-asm.h>
 #include <asm/kvm_asm.h>
@@ -1523,12 +1524,14 @@ kvm_flush_link_stack:
 
        /* Flush the link stack. On Power8 it's up to 32 entries in size. */
        .rept 32
+       ANNOTATE_INTRA_FUNCTION_CALL
        bl      .+4
        .endr
 
        /* And on Power9 it's up to 64. */
 BEGIN_FTR_SECTION
        .rept 32
+       ANNOTATE_INTRA_FUNCTION_CALL
        bl      .+4
        .endr
 END_FTR_SECTION_IFSET(CPU_FTR_ARCH_300)