summaryrefslogtreecommitdiffstats
path: root/drivers/misc/ibmasm/ibmasm.h
diff options
context:
space:
mode:
authorHeiko Carstens2005-06-22 02:16:30 +0200
committerLinus Torvalds2005-06-22 04:07:34 +0200
commite9b9a04796eade5241452a913ec6f3433437b4f5 (patch)
tree9cd181fb9e905245dc07913c3a3e421d17ca6ac9 /drivers/misc/ibmasm/ibmasm.h
parent[PATCH] s390: cmm sender parameter visibility (diff)
downloadkernel-qcow2-linux-e9b9a04796eade5241452a913ec6f3433437b4f5.tar.gz
kernel-qcow2-linux-e9b9a04796eade5241452a913ec6f3433437b4f5.tar.xz
kernel-qcow2-linux-e9b9a04796eade5241452a913ec6f3433437b4f5.zip
[PATCH] s390: memory detection > 32GB
The kernel takes a very long time to boot if the memory size is bigger then 32767 MB. The memory size is contained in a structure created by an sclp call. The kernel accesses the field with a LH instrution which performs a sign extension of a 16 bit word. In the case of a memory size with bit 2^15 set this results in a very large value and the memory detection just loops for a long time. In addition if more then 64 GB are used on a 64 bit system the memory size is read from an incorrect storage location. Use zero-extention to read the 16 bit memory size and the correct offset to read the 4 byte memory size on 64 bit. 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>
Diffstat (limited to 'drivers/misc/ibmasm/ibmasm.h')
0 files changed, 0 insertions, 0 deletions