]> git.ipfire.org Git - thirdparty/qemu.git/commit
pc-bios: s390x: Save iplb location in lowcore
authorJanosch Frank <frankja@linux.ibm.com>
Wed, 4 Mar 2020 11:42:31 +0000 (06:42 -0500)
committerMichael Roth <mdroth@linux.vnet.ibm.com>
Mon, 22 Jun 2020 17:51:41 +0000 (12:51 -0500)
commit580c08b326c1b24f3ad3d1ab0b04fae16807af18
tree25fd3d2e4121e4660a7762720cfb0eb6541ed183
parent9dd68ac26b5a413dc948efe9bbf414702bc200da
pc-bios: s390x: Save iplb location in lowcore

The POP states that for a list directed IPL the IPLB is stored into
memory by the machine loader and its address is stored at offset 0x14
of the lowcore.

ZIPL currently uses the address in offset 0x14 to access the IPLB and
acquire flags about secure boot. If the IPLB address points into
memory which has an unsupported mix of flags set, ZIPL will panic
instead of booting the OS.

As the lowcore can have quite a high entropy for a guest that did drop
out of protected mode (i.e. rebooted) we encountered the ZIPL panic
quite often.

Signed-off-by: Janosch Frank <frankja@linux.ibm.com>
Tested-by: Marc Hartmayer <mhartmay@linux.ibm.com>
Message-Id: <20200304114231.23493-19-frankja@linux.ibm.com>
Reviewed-by: Christian Borntraeger <borntraeger@de.ibm.com>
Reviewed-by: David Hildenbrand <david@redhat.com>
Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
(cherry picked from commit 9bfc04f9ef6802fff0fc77130ff345a541783363)
Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
pc-bios/s390-ccw/jump2ipl.c
pc-bios/s390-ccw/main.c
pc-bios/s390-ccw/netmain.c
pc-bios/s390-ccw/s390-arch.h
pc-bios/s390-ccw/s390-ccw.h