]> git.proxmox.com Git - mirror_ubuntu-hirsute-kernel.git/commitdiff
s390/decompressor: correct some asm symbols annotations
authorVasily Gorbik <gor@linux.ibm.com>
Tue, 10 Nov 2020 16:05:29 +0000 (17:05 +0100)
committerHeiko Carstens <hca@linux.ibm.com>
Fri, 20 Nov 2020 18:19:11 +0000 (19:19 +0100)
Use SYM_CODE_* annotations for asm functions, so that function lengths
are recognized correctly.

Also currently the most part of startup is marked as startup_kdump. Move
misplaced startup_kdump where it belongs.

$ nm -n -S arch/s390/boot/compressed/vmlinux
Before:
0000000000010000 T startup
0000000000010010 T startup_kdump
After:
0000000000010000 0000000000000014 T startup
0000000000010014 00000000000000b0 t startup_normal
0000000000010180 00000000000000b2 t startup_kdump

Reviewed-by: Alexander Egorenkov <egorenar@linux.ibm.com>
Signed-off-by: Vasily Gorbik <gor@linux.ibm.com>
Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
arch/s390/boot/head.S
arch/s390/boot/head_kdump.S

index bc34ad2c2e494d82075792dd43394c5e5d8c25e2..cf70917f98e889da5e881c9bd5a95400f936ead9 100644 (file)
@@ -279,8 +279,8 @@ iplstart:
 # or linload or SALIPL
 #
        .org    0x10000
-ENTRY(startup)
-       j       .Lep_startup_normal
+SYM_CODE_START(startup)
+       j       startup_normal
        .org    EP_OFFSET
 #
 # This is a list of s390 kernel entry points. At address 0x1000f the number of
@@ -294,9 +294,9 @@ ENTRY(startup)
 # kdump startup-code at 0x10010, running in 64 bit absolute addressing mode
 #
        .org    0x10010
-ENTRY(startup_kdump)
-       j       .Lep_startup_kdump
-.Lep_startup_normal:
+       j       startup_kdump
+SYM_CODE_END(startup)
+SYM_CODE_START_LOCAL(startup_normal)
        mvi     __LC_AR_MODE_ID,1       # set esame flag
        slr     %r0,%r0                 # set cpuid to zero
        lhi     %r1,2                   # mode 2 = esame (dump)
@@ -322,6 +322,7 @@ ENTRY(startup_kdump)
        l       %r15,.Lstack-.LPG0(%r13)
        brasl   %r14,verify_facilities
        brasl   %r14,startup_kernel
+SYM_CODE_END(startup_normal)
 
 .Lstack:
        .long   0x8000 + (1<<(PAGE_SHIFT+BOOT_STACK_ORDER)) - STACK_FRAME_OVERHEAD
@@ -371,7 +372,7 @@ ENTRY(startup_kdump)
 # It simply saves general/control registers and psw in
 # the save area and does disabled wait with a faulty address.
 #
-ENTRY(startup_pgm_check_handler)
+SYM_CODE_START_LOCAL(startup_pgm_check_handler)
        stmg    %r8,%r15,__LC_SAVE_AREA_SYNC
        la      %r8,4095
        stctg   %c0,%c15,__LC_CREGS_SAVE_AREA-4095(%r8)
@@ -390,9 +391,9 @@ ENTRY(startup_pgm_check_handler)
        la      %r8,4095
        lmg     %r0,%r15,__LC_GPREGS_SAVE_AREA-4095(%r8)
        lpswe   __LC_RETURN_PSW         # disabled wait
+SYM_CODE_END(startup_pgm_check_handler)
 .Ldump_info_stack:
        .long   0x5000 + PAGE_SIZE - STACK_FRAME_OVERHEAD
-ENDPROC(startup_pgm_check_handler)
 
 #
 # params at 10400 (setup.h)
index 174d6959bf5bd7d0ba498e532da5322f633f6225..f015469e7db9ab3eb05f77bc7904da971f94a5b1 100644 (file)
@@ -19,8 +19,7 @@
 # Note: This code has to be position independent
 #
 
-.align 2
-.Lep_startup_kdump:
+SYM_CODE_START_LOCAL(startup_kdump)
        lhi     %r1,2                           # mode 2 = esame (dump)
        sigp    %r1,%r0,SIGP_SET_ARCHITECTURE   # Switch to esame mode
        sam64                                   # Switch to 64 bit addressing
 startup_kdump_relocated:
        basr    %r13,0
 0:     lpswe   .Lrestart_psw-0b(%r13)          # Start new kernel...
+SYM_CODE_END(startup_kdump)
 .align 8
 .Lrestart_psw:
        .quad   0x0000000080000000,0x0000000000000000 + startup
 #else
-.align 2
-.Lep_startup_kdump:
+SYM_CODE_START_LOCAL(startup_kdump)
        larl    %r13,startup_kdump_crash
        lpswe   0(%r13)
+SYM_CODE_END(startup_kdump)
 .align 8
 startup_kdump_crash:
        .quad   0x0002000080000000,0x0000000000000000 + startup_kdump_crash