qemu/pc-bios/s390-ccw
Thomas Huth bbf615f7b7 pc-bios/s390-ccw/virtio-blkdev: Simplify/fix virtio_ipl_disk_is_valid()
The s390-ccw bios fails to boot if the boot disk is a virtio-blk
disk with a sector size of 4096. For example:

 dasdfmt -b 4096 -d cdl -y -p -M quick /dev/dasdX
 fdasd -a /dev/dasdX
 install a guest onto /dev/dasdX1 using virtio-blk
 qemu-system-s390x -nographic -hda /dev/dasdX1

The bios then bails out with:

 ! Cannot read block 0 !

Looking at virtio_ipl_disk_is_valid() and especially the function
virtio_disk_is_scsi(), it does not really make sense that we expect
only such a limited disk geometry (like a block size of 512) for
our boot disks. Let's relax the check and allow everything that
remotely looks like a sane disk.

Message-Id: <20220704111903.62400-5-thuth@redhat.com>
Reviewed-by: Eric Farman <farman@linux.ibm.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
2022-07-06 18:33:59 +02:00
..
bootmap.c pc-bios/s390-ccw/bootmap: Improve the guessing logic in zipl_load_vblk() 2022-07-06 18:33:53 +02:00
bootmap.h pc-bios: s390x: Fix bootmap.c zipl component entry data handling 2020-10-06 19:57:35 +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 pc-bios: s390x: cio.c cleanup and compile fix 2020-07-02 09:59:10 +02:00
cio.h pc-bios: s390x: Get rid of magic offsets into the lowcore 2020-07-02 09:59:51 +02:00
dasd-ipl.c docs: fix references to docs/devel/s390-dasd-ipl.rst 2021-06-02 06:51:09 +02:00
dasd-ipl.h s390-bios: Support booting from real dasd device 2019-04-12 12:40:35 +02:00
helper.h pc-bios/s390-ccw: Fix inline assembly for older versions of Clang 2021-05-14 12:38:43 +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: Fix inline assembly for older versions of Clang 2021-05-14 12:38:43 +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: Add a proper prototype for main() 2022-07-06 18:33:26 +02:00
Makefile configure: enable cross-compilation of s390-ccw 2022-06-01 15:47:43 +01:00
menu.c pc-bios/s390-ccw: Fix inline assembly for older versions of Clang 2021-05-14 12:38:43 +02:00
netboot.mak configure: enable cross-compilation of s390-ccw 2022-06-01 15:47:43 +01:00
netmain.c pc-bios: s390x: Move panic() into header and add infinite loop 2020-07-02 10:00:42 +02:00
s390-arch.h pc-bios: s390x: Clear out leftover S390EP string 2020-11-23 09:48:45 +01:00
s390-ccw.h pc-bios/s390-ccw: Add a proper prototype for main() 2022-07-06 18:33:26 +02:00
s390-time.h pc-bios: s390x: Consolidate timing functions into time.h 2020-07-02 09:59:24 +02:00
sclp.c pc-bios/s390-ccw: fix sclp_get_loadparm_ascii 2019-11-29 09:16:02 +01:00
sclp.h misc: Replace zero-length arrays with flexible array member (automatic) 2020-03-16 22:07:42 +01:00
scsi.h pc-bios/s390-ccw: Get Block Limits VPD device data 2017-05-19 12:29:01 +02:00
start.S pc-bios: s390x: Go into disabled wait when encountering a PGM exception 2020-10-06 20:14:48 +02:00
virtio-blkdev.c pc-bios/s390-ccw/virtio-blkdev: Simplify/fix virtio_ipl_disk_is_valid() 2022-07-06 18:33:59 +02:00
virtio-net.c pc-bios: s390x: Move sleep and yield to helper.h 2020-07-02 09:59:51 +02:00
virtio-scsi.c pc-bios/s390-ccw: Do not bail out early if not finding a SCSI disk 2020-10-06 19:36:50 +02:00
virtio-scsi.h pc-bios/s390-ccw: Do not bail out early if not finding a SCSI disk 2020-10-06 19:36:50 +02:00
virtio.c pc-bios/s390-ccw: Fix inline assembly for older versions of Clang 2021-05-14 12:38:43 +02:00
virtio.h pc-bios/s390-ccw/virtio-blkdev: Simplify/fix virtio_ipl_disk_is_valid() 2022-07-06 18:33:59 +02:00