[PATCH] zipl: Do not use larl for 31 bit code

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Mike,

You reported a zipl build problem for 31 bit:
http://marc.info/?l=linux-s390&m=132307473025493&w=2

The following patch (for s390-tools-1.15.0) should fix this problem:
---
From: Michael Holzheu <holzheu@xxxxxxxxxxxxxxxxxx>
Subject: zipl: Do not use larl for 31 bit code

The larl instruction is not available for pre z900 machines in 31 bit mode.
In order to be able to compile zipl also for that machines, with this
patch the larl instruction is replaced by instructions that work on
older machines.

Signed-off-by: Michael Holzheu <holzheu@xxxxxxxxxxxxxxxxxx>
---
 zipl/boot/dumpcommon.S |    6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

--- a/zipl/boot/dumpcommon.S
+++ b/zipl/boot/dumpcommon.S
@@ -1005,7 +1005,7 @@ _count_mem_32:
         mr    %r2,%r1                   # mem size in bytes in %r3
 
         st    %r3,.Ldh_real_mem_size+4-0b(%r13)
-        larl  %r7,.Lmem_upper_limit+4
+        l     %r7,.Lmem_upper_limit_addr-0b(%r13)
         l     %r6,0(%r7)                     # check if we have an upper limit
         clr   %r3,%r6
         bl    .Lsavemem-0b(%r13)
@@ -1018,13 +1018,15 @@ _count_mem_32:
 
         clr   %r6,%r3
         bne   .Lexit-0b(%r13)
-        larl  %r2,.Lmsg_mem_limit_set          # print mem limit warning
+        la    %r2,.Lmsg_mem_limit_set-0b(%r13) # print mem limit warning
         bras  %r14,_sclp_print
 .Lexit:
         lm    %r6,%r15,120(%r15)
         br    %r14
 .Lonemb:
         .int 0x100000
+.Lmem_upper_limit_addr:
+	.long	.Lmem_upper_limit+4
 
 
 # expand Macros


--
To unsubscribe from this list: send the line "unsubscribe linux-s390" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Kernel Development]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite Info]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Linux Media]     [Device Mapper]

  Powered by Linux