lkml.org 
[lkml]   [2022]   [Apr]   [12]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 5.17 336/343] powerpc/64: Fix build failure with allyesconfig in book3s_64_entry.S
    Date
    From: Christophe Leroy <christophe.leroy@csgroup.eu>

    commit af41d2866f7d75bbb38d487f6ec7770425d70e45 upstream.

    Using conditional branches between two files is hasardous,
    they may get linked too 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.

    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>
    [mpe: Avoid odd-looking bne ., use named local labels]
    Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
    Link: https://lore.kernel.org/r/89cf27bf43ee07a0b2879b9e8e2f5cd6386a3645.1648366338.git.christophe.leroy@csgroup.eu
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    ---
    arch/powerpc/kvm/book3s_64_entry.S | 10 ++++++++--
    1 file changed, 8 insertions(+), 2 deletions(-)

    --- a/arch/powerpc/kvm/book3s_64_entry.S
    +++ b/arch/powerpc/kvm/book3s_64_entry.S
    @@ -414,10 +414,16 @@ END_FTR_SECTION_IFSET(CPU_FTR_DAWR1)
    */
    ld r10,HSTATE_SCRATCH0(r13)
    cmpwi r10,BOOK3S_INTERRUPT_MACHINE_CHECK
    - beq machine_check_common
    + beq .Lcall_machine_check_common

    cmpwi r10,BOOK3S_INTERRUPT_SYSTEM_RESET
    - beq system_reset_common
    + beq .Lcall_system_reset_common

    b .
    +
    +.Lcall_machine_check_common:
    + b machine_check_common
    +
    +.Lcall_system_reset_common:
    + b system_reset_common
    #endif

    \
     
     \ /
      Last update: 2022-04-12 11:11    [W:3.757 / U:0.184 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site