qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Janosch Frank <frankja@linux.ibm.com>
To: qemu-devel@nongnu.org
Cc: borntraeger@de.ibm.com, qemu-s390x@nongnu.org, cohuck@redhat.com,
	david@redhat.com
Subject: [PATCH v2 6/9] pc-bios: s390x: Move panic() into header and add infinite loop
Date: Thu, 14 May 2020 08:37:26 -0400	[thread overview]
Message-ID: <20200514123729.156283-7-frankja@linux.ibm.com> (raw)
In-Reply-To: <20200514123729.156283-1-frankja@linux.ibm.com>

panic() was defined for the ccw and net bios, i.e. twice, so it's
cleaner to rather put it into the header.

Also let's add an infinite loop into the assembly of disabled_wait() so
the caller doesn't need to take care of it.

Signed-off-by: Janosch Frank <frankja@linux.ibm.com>
Reviewed-by: Pierre Morel <pmorel@linux.ibm.com>
Reviewed-by: David Hildenbrand <david@redhat.com>
---
 pc-bios/s390-ccw/main.c     | 7 -------
 pc-bios/s390-ccw/netmain.c  | 8 --------
 pc-bios/s390-ccw/s390-ccw.h | 9 +++++++--
 pc-bios/s390-ccw/start.S    | 5 +++--
 4 files changed, 10 insertions(+), 19 deletions(-)

diff --git a/pc-bios/s390-ccw/main.c b/pc-bios/s390-ccw/main.c
index 8b912454c9..146a50760b 100644
--- a/pc-bios/s390-ccw/main.c
+++ b/pc-bios/s390-ccw/main.c
@@ -46,13 +46,6 @@ void write_iplb_location(void)
     lowcore->ptr_iplb = ptr2u32(&iplb);
 }
 
-void panic(const char *string)
-{
-    sclp_print(string);
-    disabled_wait();
-    while (1) { }
-}
-
 unsigned int get_loadparm_index(void)
 {
     return atoui(loadparm_str);
diff --git a/pc-bios/s390-ccw/netmain.c b/pc-bios/s390-ccw/netmain.c
index 73def8de4f..ef7ce1e01d 100644
--- a/pc-bios/s390-ccw/netmain.c
+++ b/pc-bios/s390-ccw/netmain.c
@@ -439,14 +439,6 @@ static int net_try_direct_tftp_load(filename_ip_t *fn_ip)
     return rc;
 }
 
-void panic(const char *string)
-{
-    sclp_print(string);
-    for (;;) {
-        disabled_wait();
-    }
-}
-
 void write_subsystem_identification(void)
 {
     SubChannelId *schid = (SubChannelId *) 184;
diff --git a/pc-bios/s390-ccw/s390-ccw.h b/pc-bios/s390-ccw/s390-ccw.h
index c5820e43ae..36b884cced 100644
--- a/pc-bios/s390-ccw/s390-ccw.h
+++ b/pc-bios/s390-ccw/s390-ccw.h
@@ -50,12 +50,11 @@ typedef unsigned long long __u64;
 #include "iplb.h"
 
 /* start.s */
-void disabled_wait(void);
+void disabled_wait(void) __attribute__ ((__noreturn__));
 void consume_sclp_int(void);
 void consume_io_int(void);
 
 /* main.c */
-void panic(const char *string);
 void write_subsystem_identification(void);
 void write_iplb_location(void);
 extern char stack[PAGE_SIZE * 8] __attribute__((__aligned__(PAGE_SIZE)));
@@ -91,6 +90,12 @@ bool menu_is_enabled_enum(void);
 
 #define MAX_BOOT_ENTRIES  31
 
+static inline void panic(const char *string)
+{
+    sclp_print(string);
+    disabled_wait();
+}
+
 static inline void fill_hex(char *out, unsigned char val)
 {
     const char hex[] = "0123456789abcdef";
diff --git a/pc-bios/s390-ccw/start.S b/pc-bios/s390-ccw/start.S
index aa8fceb19d..35be141d8d 100644
--- a/pc-bios/s390-ccw/start.S
+++ b/pc-bios/s390-ccw/start.S
@@ -47,8 +47,9 @@ memsetxc:
  */
 	.globl disabled_wait
 disabled_wait:
-        larl %r1,disabled_wait_psw
-        lpswe   0(%r1)
+        larl	%r1,disabled_wait_psw
+        lpswe	0(%r1)
+1:	j	1b
 
 
 /*
-- 
2.25.1



  parent reply	other threads:[~2020-05-14 12:41 UTC|newest]

Thread overview: 32+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-05-14 12:37 [PATCH v2 0/9] pc-bios: s390x: Cleanup part 1 Janosch Frank
2020-05-14 12:37 ` [PATCH v2 1/9] pc-bios: s390x: cio.c cleanup and compile fix Janosch Frank
2020-05-18 11:52   ` David Hildenbrand
2020-05-18 12:02     ` Janosch Frank
2020-05-20 19:37   ` Thomas Huth
2020-05-14 12:37 ` [PATCH v2 2/9] pc-bios: s390x: Consolidate timing functions into time.h Janosch Frank
2020-05-18 12:01   ` David Hildenbrand
2020-05-18 12:09     ` Janosch Frank
2020-05-18 12:45       ` David Hildenbrand
2020-05-20 19:53   ` Thomas Huth
2020-05-25 12:20     ` Janosch Frank
2020-05-14 12:37 ` [PATCH v2 3/9] pc-bios: s390x: Get rid of magic offsets into the lowcore Janosch Frank
2020-05-18 12:46   ` David Hildenbrand
2020-05-20 19:57   ` Thomas Huth
2020-05-14 12:37 ` [PATCH v2 4/9] pc-bios: s390x: Rename and use PSW_MASK_ZMODE constant Janosch Frank
2020-05-21  5:44   ` Thomas Huth
2020-05-21  5:47     ` Thomas Huth
2020-05-25 12:03       ` Janosch Frank
2020-05-14 12:37 ` [PATCH v2 5/9] pc-bios: s390x: Use PSW masks where possible Janosch Frank
2020-05-21  5:50   ` Thomas Huth
2020-05-25 12:08     ` Janosch Frank
2020-05-14 12:37 ` Janosch Frank [this message]
2020-05-21  5:53   ` [PATCH v2 6/9] pc-bios: s390x: Move panic() into header and add infinite loop Thomas Huth
2020-05-14 12:37 ` [PATCH v2 7/9] pc-bios: s390x: Use ebcdic2ascii table Janosch Frank
2020-05-21  5:56   ` Thomas Huth
2020-05-14 12:37 ` [PATCH v2 8/9] pc-bios: s390x: Replace 0x00 with 0x0 or 0 Janosch Frank
2020-05-18 12:47   ` David Hildenbrand
2020-05-21  6:01   ` Thomas Huth
2020-05-14 12:37 ` [PATCH v2 9/9] pc-bios: s390x: Make u32 ptr check explicit Janosch Frank
2020-05-21  6:03   ` Thomas Huth
2020-05-14 18:43 ` [PATCH v2 0/9] pc-bios: s390x: Cleanup part 1 no-reply
2020-05-20 11:52 ` Cornelia Huck

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20200514123729.156283-7-frankja@linux.ibm.com \
    --to=frankja@linux.ibm.com \
    --cc=borntraeger@de.ibm.com \
    --cc=cohuck@redhat.com \
    --cc=david@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=qemu-s390x@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).