xemu/pc-bios/s390-ccw
Claudio Imbrenda f24ec9fead pc-bios/s390-ccw: fix sclp_get_loadparm_ascii
The existing s390 bios gets the LOADPARM information from the system using
an SCLP call that specifies a buffer length too small to contain all the
output.

The recent fixes in the SCLP code have exposed this bug, since now the
SCLP call will return an error (as per architecture) instead of
writing partially and completing successfully.

The solution is simply to specify the full page length as the SCCB
length instead of a smaller size.

Fixes: 832be0d8a3 ("s390x: sclp: Report insufficient SCCB length")
Fixes: 9a22473c70 ("pc-bios/s390-ccw: get LOADPARM stored in SCP Read Info")

Reported-by: Marc Hartmayer <mhartmay@linux.ibm.com>
Signed-off-by: Claudio Imbrenda <imbrenda@linux.ibm.com>
Message-Id: <1574944437-31182-1-git-send-email-imbrenda@linux.ibm.com>
Acked-by: Christian Borntraeger <borntraeger@de.ibm.com>
Tested-by: Thomas Huth <thuth@redhat.com>
Reviewed-by: Janosch Frank <frankja@linux.ibm.com>
Tested-by: Marc Hartmayer <mhartmay@linux.ibm.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
2019-11-29 09:16:02 +01:00
..
bootmap.c s390-bios: Skip bootmap signature entries 2019-05-08 10:52:14 +02:00
bootmap.h s390-bios: Skip bootmap signature entries 2019-05-08 10:52:14 +02:00
bswap.h pc-bios/s390-ccw: Move byteswap functions to a separate header 2017-07-14 12:29:48 +02:00
cio.c s390-bios: cio error handling 2019-04-12 12:40:35 +02:00
cio.h s390-bios: Add channel command codes/structs needed for dasd-ipl 2019-04-12 12:40:35 +02:00
dasd-ipl.c s390-bios: Support booting from real dasd device 2019-04-12 12:40:35 +02:00
dasd-ipl.h s390-bios: Support booting from real dasd device 2019-04-12 12:40:35 +02:00
helper.h s390-bios: ptr2u32 and u32toptr 2019-04-12 12:40:35 +02:00
iplb.h pc-bios/s390-ccw: define loadparm length 2018-06-18 15:08:44 +02:00
jump2ipl.c pc-bios/s390-ccw/net: Use diag308 to reset machine before jumping to the OS 2018-05-02 11:27:14 +02:00
libc.c pc-bios/s390-ccw: Clean up harmless misuse of isdigit() 2019-05-08 10:52:14 +02:00
libc.h s390-bios: cio error handling 2019-04-12 12:40:35 +02:00
main.c pc-bios/s390-ccw: Do not pre-initialize empty array 2019-09-18 17:47:27 +02:00
Makefile s390-bios: Support booting from real dasd device 2019-04-12 12:40:35 +02:00
menu.c pc-bios/s390-ccw: Clean up harmless misuse of isdigit() 2019-05-08 10:52:14 +02:00
netboot.mak s390-bios: Decouple channel i/o logic from virtio 2019-04-12 12:40:35 +02:00
netmain.c pc-bios/s390-ccw/net: fix a possible memory leak in get_uuid() 2019-09-18 17:47:27 +02:00
s390-arch.h s390-bios: Support booting from real dasd device 2019-04-12 12:40:35 +02:00
s390-ccw.h s390-bios: Support for running format-0/1 channel programs 2019-04-12 12:40:35 +02:00
sclp.c pc-bios/s390-ccw: fix sclp_get_loadparm_ascii 2019-11-29 09:16:02 +01:00
sclp.h pc-bios/s390-ccw: define loadparm length 2018-06-18 15:08:44 +02:00
scsi.h pc-bios/s390-ccw: Get Block Limits VPD device data 2017-05-19 12:29:01 +02:00
start.S s390-bios: Support for running format-0/1 channel programs 2019-04-12 12:40:35 +02:00
virtio-blkdev.c pc-bios/s390-ccw: Move virtio-block related functions into a separate file 2017-07-14 12:29:48 +02:00
virtio-net.c pc-bios/s390-ccw: Add virtio-net driver code 2017-07-14 12:29:48 +02:00
virtio-scsi.c pc-bios/s390-ccw: Fix problem with invalid virtio-scsi LUN when rebooting 2017-11-20 10:35:12 +01:00
virtio-scsi.h pc-bios/s390-ccw: Build a reasonable max_sectors limit 2017-05-19 12:29:01 +02:00
virtio.c s390-bios: Use control unit type to determine boot method 2019-04-12 12:40:35 +02:00
virtio.h pc-bios/s390-ccw: Add virtio-net driver code 2017-07-14 12:29:48 +02:00