52 lines
1.9 KiB
Diff
52 lines
1.9 KiB
Diff
|
From 2d9158563e5d34f9147e660f943f631bad80b6dd Mon Sep 17 00:00:00 2001
|
||
|
From: Jared Rossi <jrossi@linux.ibm.com>
|
||
|
Date: Thu, 14 Nov 2024 11:19:52 -0500
|
||
|
Subject: [PATCH 8/9] pc-bios/s390x: Initialize machine loadparm before probing
|
||
|
IPL devices
|
||
|
|
||
|
RH-Author: Thomas Huth <thuth@redhat.com>
|
||
|
RH-MergeRequest: 297: [c10s] Fixes for the new s390x "boot order" feature
|
||
|
RH-Jira: RHEL-68444
|
||
|
RH-Acked-by: Miroslav Rezanina <mrezanin@redhat.com>
|
||
|
RH-Commit: [7/8] 7513fec6ef170ab0c2068a7641a79b77537f1608 (thuth/qemu-kvm-cs9)
|
||
|
|
||
|
Commit bb185de423 ("s390x: Add individual loadparm assignment to
|
||
|
CCW device") allowed boot devices to be assigned a loadparm value independent
|
||
|
of the machine value, however, when no boot devices are defined, the machine
|
||
|
loadparm becomes ignored. Therefore, let's check the machine loadparm
|
||
|
prior to probing the devices.
|
||
|
|
||
|
Signed-off-by: Jared Rossi <jrossi@linux.ibm.com>
|
||
|
Reviewed-by: Thomas Huth <thuth@redhat.com>
|
||
|
Message-ID: <20241114161952.3508554-1-jrossi@linux.ibm.com>
|
||
|
Signed-off-by: Thomas Huth <thuth@redhat.com>
|
||
|
(cherry picked from commit 1056ca1e70dc6e0458238141bcebfb7810cede6d)
|
||
|
---
|
||
|
pc-bios/s390-ccw/main.c | 3 ++-
|
||
|
1 file changed, 2 insertions(+), 1 deletion(-)
|
||
|
|
||
|
diff --git a/pc-bios/s390-ccw/main.c b/pc-bios/s390-ccw/main.c
|
||
|
index 7509755e36..76bf743900 100644
|
||
|
--- a/pc-bios/s390-ccw/main.c
|
||
|
+++ b/pc-bios/s390-ccw/main.c
|
||
|
@@ -191,7 +191,7 @@ static void boot_setup(void)
|
||
|
{
|
||
|
char lpmsg[] = "LOADPARM=[________]\n";
|
||
|
|
||
|
- if (memcmp(iplb.loadparm, NO_LOADPARM, LOADPARM_LEN) != 0) {
|
||
|
+ if (have_iplb && memcmp(iplb.loadparm, NO_LOADPARM, LOADPARM_LEN) != 0) {
|
||
|
ebcdic_to_ascii((char *) iplb.loadparm, loadparm_str, LOADPARM_LEN);
|
||
|
} else {
|
||
|
sclp_get_loadparm_ascii(loadparm_str);
|
||
|
@@ -316,6 +316,7 @@ void main(void)
|
||
|
css_setup();
|
||
|
have_iplb = store_iplb(&iplb);
|
||
|
if (!have_iplb) {
|
||
|
+ boot_setup();
|
||
|
probe_boot_device();
|
||
|
}
|
||
|
|
||
|
--
|
||
|
2.39.3
|
||
|
|