File s390-tools-sles15sp2-10-zipl-stage3-Mark-start_kernel-__noreturn.patch of Package s390-tools.16701

Subject: [PATCH] [FEAT VS1804] zipl/stage3: Mark start_kernel __noreturn
From: Marc Hartmayer <mhartmay@linux.ibm.com>

Summary:     genprotimg: Introduce new tool for the creation of PV images
Description: genprotimg takes a kernel, host-key documents, optionally an
             initrd, optionally a file with the kernel command line, and it
             generates a single, loadable image file. The image consists of a
             concatenation of a plain text boot loader, the encrypted
             components for kernel, initrd, and cmdline, and the
             integrity-protected PV header, containing metadata necessary for
             running the guest in PV mode. It's possible to use this image file
             as a kernel for zIPL or for a direct kernel boot using QEMU.
Upstream-ID: edfb6a03d862e332223eda02be46109be12c0a4e
Problem-ID:  VS1804

Upstream-Description:

             zipl/stage3: Mark start_kernel __noreturn

             Signed-off-by: Philipp Rudo <prudo@linux.ibm.com>
             Reviewed-by: Stefan Haberland <sth@linux.ibm.com>
             Signed-off-by: Jan Höppner <hoeppner@linux.ibm.com>


Signed-off-by: Marc Hartmayer <mhartmay@linux.ibm.com>
---
 zipl/boot/stage3.c |    4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

--- a/zipl/boot/stage3.c
+++ b/zipl/boot/stage3.c
@@ -175,8 +175,7 @@ static void ebcdic_to_ascii(unsigned cha
 			target[i] = ebc[source[i]];
 }
 
-static void
-start_kernel(void)
+static inline void __noreturn start_kernel(void)
 {
 	struct psw_t *psw = &S390_lowcore.program_new_psw;
 	unsigned long addr, code;
@@ -199,6 +198,7 @@ start_kernel(void)
 		: [addr] "=&d" (addr),
 		  [code] "+&d" (code)
 		: [psw] "a" (psw) );
+	while (1);
 }
 
 unsigned int
openSUSE Build Service is sponsored by