Re: Build Warnings at arch/powerpc/

Madhavan Srinivasan
2025-03-04T11:29:00Z

On 3/4/25 2:26 PM, Christophe Leroy wrote:
>
>
> Le 04/03/2025 à 07:13, Madhavan Srinivasan a écrit :
>>
>>
>> On 3/4/25 10:42 AM, Venkat Rao Bagalkote wrote:
>>> Greetings!!
>>>
>>>
>>> Observing build warnings with linux-next and powerpc repo's. Issue is currently not seen on mainline yet.
>>>
>>> PPC Repo: https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgit.kernel.org%2Fpub%2Fscm%2Flinux%2Fkernel%2Fgit%2Fpowerpc%2Flinux.git&data=05%7C02%7Cchristophe.leroy2%40cs-soprasteria.com%7C8e0f8501f09c48dbb43608dd5ae3c9bf%7C8b87af7d86474dc78df45f69a2011bb5%7C0%7C0%7C638766656585342184%7CUnknown%7CTWFpbGZsb3d8eyJFbXB0eU1hcGkiOnRydWUsIlYiOiIwLjAuMDAwMCIsIlAiOiJXaW4zMiIsIkFOIjoiTWFpbCIsIldUIjoyfQ%3D%3D%7C0%7C%7C%7C&sdata=e5BrJzcrtlITkLF31KltGExQ5Qe8fDVTMV6VfR4w9o8%3D&reserved=0 merge branch
>>>
>>> PPC Kernel Version: 6.14.0-rc4-g1304f486dbf1
>>> next Repo: https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgit.kernel.org%2Fpub%2Fscm%2Flinux%2Fkernel%2Fgit%2Fnext%2Flinux-next.git&data=05%7C02%7Cchristophe.leroy2%40cs-soprasteria.com%7C8e0f8501f09c48dbb43608dd5ae3c9bf%7C8b87af7d86474dc78df45f69a2011bb5%7C0%7C0%7C638766656585355246%7CUnknown%7CTWFpbGZsb3d8eyJFbXB0eU1hcGkiOnRydWUsIlYiOiIwLjAuMDAwMCIsIlAiOiJXaW4zMiIsIkFOIjoiTWFpbCIsIldUIjoyfQ%3D%3D%7C0%7C%7C%7C&sdata=meQyZfB75HhJFCL6AX93slsyVwnogGPYFabDXl%2FLzDA%3D&reserved=0 master branch
>>>
>>> next Kernel Version: 6.14.0-rc5-next-20250303
>>>
>>>
>>> On linux-next kernel issue got introduced b/w next-20250227 and next-20250303
>>>
>>>
>>> Build Warnings:
>>>
>>> arch/powerpc/kvm/book3s_hv_rmhandlers.o: warning: objtool: .text+0xe84: intra_function_call not a direct call
>>> arch/powerpc/crypto/ghashp8-ppc.o: warning: objtool: .text+0x22c: unannotated intra-function call
>>> arch/powerpc/kernel/switch.o: warning: objtool: .text+0x4: intra_function_call not a direct call
>>>
>>>
>>
>> Can you please specific the compiler and compiler version you found this issue with
>>
>
> Can you also tell which defconfig you are using or provide your .config
>
> It might also be helpfull if you can provide a disassembly of the three file.o around the warned address.

I could recreate the issue with gcc 11.4.1 20231218 with today's linux-next (but could not recreate with gcc 14 or gcc 11.3.0)

(20d5c66e1810 (HEAD -> master, tag: next-20250304, origin/master, origin/HEAD) Add linux-next specific files for 20250304)

warning for one of the switch.S file :

CC arch/powerpc/kernel/syscalls.o
AS arch/powerpc/kernel/switch.o
arch/powerpc/kernel/switch.o: warning: objtool: .text+0x4: intra_function_call not a direct call
CC arch/powerpc/kernel/irq.o
CC arch/powerpc/kernel/align.o
CC arch/powerpc/kernel/signal_64.o

Objdump of switch.o:
arch/powerpc/kernel/switch.o: file format elf64-powerpcle

Disassembly of section .text:

0000000000000000 <flush_branch_caches>:
0: a6 02 28 7d mflr r9
4: 05 00 00 48 bl 8 <flush_branch_caches+0x8>
8: 05 00 00 48 bl c <flush_branch_caches+0xc>
c: 05 00 00 48 bl 10 <flush_branch_caches+0x10>
10: 05 00 00 48 bl 14 <flush_branch_caches+0x14>
14: 05 00 00 48 bl 18 <flush_branch_caches+0x18>
18: 05 00 00 48 bl 1c <flush_branch_caches+0x1c>
1c: 05 00 00 48 bl 20 <flush_branch_caches+0x20>
20: 05 00 00 48 bl 24 <flush_branch_caches+0x24>
24: 05 00 00 48 bl 28 <flush_branch_caches+0x28>
28: 05 00 00 48 bl 2c <flush_branch_caches+0x2c>

arch/powerpc/kernel/switch.S failing src section:

.balign 32
.global flush_branch_caches
flush_branch_caches:
/* Save LR into r9 */
mflr r9

// Flush the link stack
.rept 64
ANNOTATE_INTRA_FUNCTION_CALL
bl .+4
.endr
b 1f
nops 6

Maddy

>
> Christophe