s390/boot: remove non-functioning image bootable check
authorVasily Gorbik <gor@linux.ibm.com>
Wed, 15 Feb 2023 13:27:45 +0000 (14:27 +0100)
committerHeiko Carstens <hca@linux.ibm.com>
Mon, 20 Mar 2023 10:02:50 +0000 (11:02 +0100)
check_image_bootable() has been introduced with commit 627c9b62058e
("s390/boot: block uncompressed vmlinux booting attempts") to make sure
that users don't try to boot uncompressed vmlinux ELF image in qemu. It
used to be possible quite some time ago. That commit prevented confusion
with uncompressed vmlinux image starting to boot and even printing
kernel messages until it crashed. Users might have tried to report the
problem without realizing they are doing something which was not intended.
Since commit f1d3c5323772 ("s390/boot: move sclp early buffer from fixed
address in asm to C") check_image_bootable() doesn't function properly
anymore, as well as booting uncompressed vmlinux image in qemu doesn't
really produce any output and crashes. Moving forward it doesn't make
sense to fix check_image_bootable() anymore, so simply remove it.

Acked-by: Alexander Gordeev <agordeev@linux.ibm.com>
Acked-by: Heiko Carstens <hca@linux.ibm.com>
Signed-off-by: Vasily Gorbik <gor@linux.ibm.com>
Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
arch/s390/boot/startup.c
arch/s390/include/asm/setup.h
arch/s390/kernel/early.c

index 11413f0..16ee346 100644 (file)
@@ -29,7 +29,6 @@ unsigned long __bootdata_preserved(vmemmap_size);
 unsigned long __bootdata_preserved(MODULES_VADDR);
 unsigned long __bootdata_preserved(MODULES_END);
 unsigned long __bootdata(ident_map_size);
-int __bootdata(is_full_image) = 1;
 struct initrd_data __bootdata(initrd_data);
 
 u64 __bootdata_preserved(stfle_fac_list[16]);
index 3a1f882..fc887e3 100644 (file)
@@ -150,8 +150,6 @@ static inline unsigned long kaslr_offset(void)
        return __kaslr_offset;
 }
 
-extern int is_full_image;
-
 struct initrd_data {
        unsigned long start;
        unsigned long size;
index d26f024..8225a4c 100644 (file)
@@ -34,8 +34,6 @@
 #include <asm/switch_to.h>
 #include "entry.h"
 
-int __bootdata(is_full_image);
-
 #define decompressor_handled_param(param)                      \
 static int __init ignore_decompressor_param_##param(char *s)   \
 {                                                              \
@@ -288,17 +286,6 @@ static void __init setup_boot_command_line(void)
        strscpy(boot_command_line, early_command_line, COMMAND_LINE_SIZE);
 }
 
-static void __init check_image_bootable(void)
-{
-       if (is_full_image)
-               return;
-
-       sclp_early_printk("Linux kernel boot failure: An attempt to boot a vmlinux ELF image failed.\n");
-       sclp_early_printk("This image does not contain all parts necessary for starting up. Use\n");
-       sclp_early_printk("bzImage or arch/s390/boot/compressed/vmlinux instead.\n");
-       disabled_wait();
-}
-
 static void __init sort_amode31_extable(void)
 {
        sort_extable(__start_amode31_ex_table, __stop_amode31_ex_table);
@@ -307,7 +294,6 @@ static void __init sort_amode31_extable(void)
 void __init startup_init(void)
 {
        reset_tod_clock();
-       check_image_bootable();
        time_early_init();
        init_kernel_storage_key();
        lockdep_off();