Message ID | 89cf27bf43ee07a0b2879b9e8e2f5cd6386a3645.1648366338.git.christophe.leroy@csgroup.eu (mailing list archive) |
---|---|
State | Accepted |
Headers | show |
Series | powerpc/64: Fix build failure with allyesconfig in book3s_64_entry.S | expand |
Context | Check | Description |
---|---|---|
snowpatch_ozlabs/github-powerpc_ppctests | success | Successfully ran 8 jobs. |
snowpatch_ozlabs/github-powerpc_selftests | success | Successfully ran 8 jobs. |
snowpatch_ozlabs/github-powerpc_sparse | success | Successfully ran 4 jobs. |
snowpatch_ozlabs/github-powerpc_clang | success | Successfully ran 7 jobs. |
snowpatch_ozlabs/github-powerpc_kernel_qemu | success | Successfully ran 24 jobs. |
Excerpts from Christophe Leroy's message of March 27, 2022 5:32 pm: > Using conditional branches between two files is hasardous, > they may get linked to far from each other. > > arch/powerpc/kvm/book3s_64_entry.o:(.text+0x3ec): relocation truncated > to fit: R_PPC64_REL14 (stub) against symbol `system_reset_common' > defined in .text section in arch/powerpc/kernel/head_64.o > > Reorganise the code to use non conditional branches. Thanks for the fix, I agree this is better. Reviewed-by: Nicholas Piggin <npiggin@gmail.com> > > Cc: Nicholas Piggin <npiggin@gmail.com> > Fixes: 89d35b239101 ("KVM: PPC: Book3S HV P9: Implement the rest of the P9 path in C") > Signed-off-by: Christophe Leroy <christophe.leroy@csgroup.eu> > --- > arch/powerpc/kvm/book3s_64_entry.S | 7 ++++--- > 1 file changed, 4 insertions(+), 3 deletions(-) > > diff --git a/arch/powerpc/kvm/book3s_64_entry.S b/arch/powerpc/kvm/book3s_64_entry.S > index 05e003eb5d90..99fa36df36fa 100644 > --- a/arch/powerpc/kvm/book3s_64_entry.S > +++ b/arch/powerpc/kvm/book3s_64_entry.S > @@ -414,10 +414,11 @@ END_FTR_SECTION_IFSET(CPU_FTR_DAWR1) > */ > ld r10,HSTATE_SCRATCH0(r13) > cmpwi r10,BOOK3S_INTERRUPT_MACHINE_CHECK > - beq machine_check_common > + beq 1f > > cmpwi r10,BOOK3S_INTERRUPT_SYSTEM_RESET > - beq system_reset_common > + bne . > > - b . > + b system_reset_common > +1: b machine_check_common > #endif > -- > 2.35.1 > >
On Sun, 27 Mar 2022 09:32:26 +0200, Christophe Leroy wrote: > Using conditional branches between two files is hasardous, > they may get linked to far from each other. > > arch/powerpc/kvm/book3s_64_entry.o:(.text+0x3ec): relocation truncated > to fit: R_PPC64_REL14 (stub) against symbol `system_reset_common' > defined in .text section in arch/powerpc/kernel/head_64.o > > [...] Applied to powerpc/fixes. [1/1] powerpc/64: Fix build failure with allyesconfig in book3s_64_entry.S https://git.kernel.org/powerpc/c/af41d2866f7d75bbb38d487f6ec7770425d70e45 cheers
diff --git a/arch/powerpc/kvm/book3s_64_entry.S b/arch/powerpc/kvm/book3s_64_entry.S index 05e003eb5d90..99fa36df36fa 100644 --- a/arch/powerpc/kvm/book3s_64_entry.S +++ b/arch/powerpc/kvm/book3s_64_entry.S @@ -414,10 +414,11 @@ END_FTR_SECTION_IFSET(CPU_FTR_DAWR1) */ ld r10,HSTATE_SCRATCH0(r13) cmpwi r10,BOOK3S_INTERRUPT_MACHINE_CHECK - beq machine_check_common + beq 1f cmpwi r10,BOOK3S_INTERRUPT_SYSTEM_RESET - beq system_reset_common + bne . - b . + b system_reset_common +1: b machine_check_common #endif
Using conditional branches between two files is hasardous, they may get linked to far from each other. arch/powerpc/kvm/book3s_64_entry.o:(.text+0x3ec): relocation truncated to fit: R_PPC64_REL14 (stub) against symbol `system_reset_common' defined in .text section in arch/powerpc/kernel/head_64.o Reorganise the code to use non conditional branches. Cc: Nicholas Piggin <npiggin@gmail.com> Fixes: 89d35b239101 ("KVM: PPC: Book3S HV P9: Implement the rest of the P9 path in C") Signed-off-by: Christophe Leroy <christophe.leroy@csgroup.eu> --- arch/powerpc/kvm/book3s_64_entry.S | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-)