فهرست منبع

pc-bios/s390x: Initialize machine loadparm before probing IPL devices

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>
Jared Rossi 9 ماه پیش
والد
کامیت
1056ca1e70
1فایلهای تغییر یافته به همراه2 افزوده شده و 1 حذف شده
  1. 2 1
      pc-bios/s390-ccw/main.c

+ 2 - 1
pc-bios/s390-ccw/main.c

@@ -191,7 +191,7 @@ static void boot_setup(void)
 {
 {
     char lpmsg[] = "LOADPARM=[________]\n";
     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);
         ebcdic_to_ascii((char *) iplb.loadparm, loadparm_str, LOADPARM_LEN);
     } else {
     } else {
         sclp_get_loadparm_ascii(loadparm_str);
         sclp_get_loadparm_ascii(loadparm_str);
@@ -316,6 +316,7 @@ void main(void)
     css_setup();
     css_setup();
     have_iplb = store_iplb(&iplb);
     have_iplb = store_iplb(&iplb);
     if (!have_iplb) {
     if (!have_iplb) {
+        boot_setup();
         probe_boot_device();
         probe_boot_device();
     }
     }