[PATCH 4/5] s390x: Add boot device fallback infrastructure

2024-05-29 Thread jrossi
From: Jared Rossi Add a routine for loading the next IPLB if a device fails to boot. This includes some minor changes to the List-Directed IPL routine so that the failing device may be retried using the legacy boot pointers before moving on to the next device. Signed-off-by: Jared Rossi ---

[PATCH 1/5] s390x: Create include files for s390x IPL definitions

2024-05-29 Thread jrossi
From: Jared Rossi Currently, stuctures defined in both hw/s390x/ipl.h and pc-bios/s390-ccw/iplb.h must be kept in sync, which is prone to error. Instead, create a new directory at include/hw/s390x/ipl/ to contain the definitions that must be shared. Signed-off-by: Jared Rossi ---

[PATCH 0/5] s390x: Add Full Boot Order Support

2024-05-29 Thread jrossi
From: Jared Rossi This patch set primarily adds support for the specification of multiple boot devices, allowing for the guest to automatically use an alternative device on a failed boot without needing to be reconfigured. It additionally provides the ability to define the loadparm attribute on

[PATCH 3/5] s390x: Build IPLB chain for multiple boot devices

2024-05-29 Thread jrossi
From: Jared Rossi Write a chain of IPLBs into memory for future use. The IPLB chain is placed immediately before the BIOS in memory at the highest unused page boundary providing sufficient space to fit the chain. Because this is not a fixed address, the location of the next IPLB and number of

[PATCH 2/5] s390x: Add loadparm to CcwDevice

2024-05-29 Thread jrossi
From: Jared Rossi Add a loadparm property to the CcwDevice object so that different loadparms can be defined on a per-device basis when using multiple boot devices. The machine/global loadparm is still supported. If both a global and per-device loadparm are defined, the per-device value will

[PATCH 5/5] s390x: Enable and document boot device fallback on panic

2024-05-29 Thread jrossi
From: Jared Rossi On a panic during IPL (i.e. a device failed to boot) check for another device to boot from, as indicated by the presence of an unused IPLB. If an IPLB is successfully loaded, then jump to the start of BIOS, restarting IPL using the updated IPLB. Otherwise enter disabled wait.

[RESEND PATCH 1/1] pc-bios: Add support for List-Directed IPL from ECKD DASD

2023-02-21 Thread jrossi
From: Jared Rossi Check for a List Directed IPL Boot Record, which would supersede the CCW type entries. If the record is valid, proceed to use the new style pointers and perform LD-IPL. Each block pointer is interpreted as either an LD-IPL pointer or a legacy CCW pointer depending on the type

[RESEND PATCH 0/1] pc-bios: Support List-Directed IPL from ECKD DASD

2023-02-21 Thread jrossi
From: Jared Rossi Add support for List-Directed IPL (LD-IPL) type pointers. We check for a boot record indicating LD-IPL and use it if it is valid, otherwise we use the CCW CDL or LDL format as usual. When a block is accessed during IPL the block number is first calculated based on the