qemu-s390x
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH V2 0/18] s390x: Add Full Boot Order Support


From: Thomas Huth
Subject: Re: [PATCH V2 0/18] s390x: Add Full Boot Order Support
Date: Mon, 30 Sep 2024 15:14:44 +0200
User-agent: Mozilla Thunderbird

On 27/09/2024 02.50, jrossi@linux.ibm.com wrote:
From: Jared Rossi <jrossi@linux.ibm.com>

Loosely a v2, this updated patch set is a significant rework to most aspects of
the initially proposed multi-device boot order. Of particular note, the
original patch set used code jumps to restart the IPL while this version
does not. In order to remove the code jumps, two significant prerequisite
changes are required for the pc-bios. Firstly, the netboot code is linked into
the main s390-ccw.img, which allows for return after a failed netboot, based on
the patch set from Thomas Huth <thuth@redhat.com>
(https://lists.gnu.org/archive/html/qemu-devel/2024-06/msg03956.html).
Secondly, IPL errors that result in an immediate termination are converted
to instead provide a return value back to the main IPL calling function.

The routines for building and loading fallback device IPLBs are largely
unchanged: An IPLB is built for each device with a boot index
specified (up to 8 devices). The IPLBs location in memory is passed to the guest
using the global QIPL structure, which is stored at a fixed address. If the
first device in the boot order successfully IPLs, then the additional IPLBs are
never used; however, if the first device fails, subsequent IPLBs are retrieved
from memory and the IPL process restarts using the specifications contained in
the new IPLB.

This continues until IPL is successful or there are no IPLBs left to try.

The per-device loadparm attribute is still uniformly added to CCW devices
although it may only be assigned a value if the device has a boot index.
This will need further rework if a more targeted approach is desired.

Two automated test cases are planned for v3: a minimal test where a guest has
two boot devices defined and the first fails, and also a limit test where the
guest has 8 boot devices defined but only the last one can actually IPL.

Thanks, this looks already much better than the "jump back to start" stuff in v1 !

One thing I noticed while testing your patches: Booting from ISO images seems to be broken for me now, e.g. something like:

./qemu-system-s390x -nographic -accel kvm -m 1G \
 -bios pc-bios/s390-ccw/s390-ccw.img \
-drive if=none,id=d1,file=Fedora-Server-dvd-s390x-38-1.6.iso,format=raw,media=cdrom \
 -device virtio-scsi -device scsi-cd,drive=d1,bootindex=1

used to work fine in the past, but gives me a "Failed to IPL this ISO image!" error now.

Does ISO IPL-ing work for you?

 Thomas





reply via email to

[Prev in Thread] Current Thread [Next in Thread]