Эх сурвалжийг харах

[PATCH] s390: 31 bit memory size limit

Limit reported memory size to 2GB if running in 31 bit mode.

Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Heiko Carstens 20 жил өмнө
parent
commit
f878e43675

+ 6 - 1
arch/s390/kernel/head.S

@@ -535,8 +535,13 @@ startup:basr  %r13,0                     # get base
 	lhi   %r1,0
 	lhi   %r1,0
 	icm   %r1,3,.Lscpincr1-PARMAREA(%r4) # use this one if != 0
 	icm   %r1,3,.Lscpincr1-PARMAREA(%r4) # use this one if != 0
 	jnz   .Lscnd
 	jnz   .Lscnd
-	l     %r1,.Lscpincr2-PARMAREA+4(%r4) # otherwise use this one
+	lhi   %r1,0x800			# otherwise report 2GB
 .Lscnd:
 .Lscnd:
+	lhi   %r3,0x800			# limit reported memory size to 2GB
+	cr    %r1,%r3
+	jl    .Lno2gb
+	lr    %r1,%r3
+.Lno2gb:
 	xr    %r3,%r3			# same logic
 	xr    %r3,%r3			# same logic
 	ic    %r3,.Lscpa1-PARMAREA(%r4)
 	ic    %r3,.Lscpa1-PARMAREA(%r4)
 	chi   %r3,0x00
 	chi   %r3,0x00