From: Thomas Huth <thuth@redhat.com>
To: qemu-s390x@nongnu.org,
Christian Borntraeger <borntraeger@linux.ibm.com>,
Jared Rossi <jrossi@linux.ibm.com>
Cc: qemu-devel@nongnu.org, Eric Farman <farman@linux.ibm.com>,
Claudio Imbrenda <imbrenda@linux.ibm.com>,
"Collin L . Walling" <walling@linux.ibm.com>,
Janosch Frank <frankja@linux.ibm.com>,
"Jason J . Herne" <jjherne@linux.ibm.com>,
Marc Hartmayer <mhartmay@linux.ibm.com>
Subject: [PATCH 2/7] hw/s390x/ipl: Provide more memory to the s390-ccw.img firmware
Date: Fri, 21 Jun 2024 10:24:17 +0200 [thread overview]
Message-ID: <20240621082422.136217-3-thuth@redhat.com> (raw)
In-Reply-To: <20240621082422.136217-1-thuth@redhat.com>
We are going to link the SLOF libc into the s390-ccw.img, and this
libc needs more memory for providing space for malloc() and friends.
Thus bump the memory size that we reserve for the bios to 3 MiB
instead of only 2 MiB. While we're at it, add a proper check that
there is really enough memory assigned to the machine before blindly
using it.
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
hw/s390x/ipl.c | 10 +++++++++-
1 file changed, 9 insertions(+), 1 deletion(-)
diff --git a/hw/s390x/ipl.c b/hw/s390x/ipl.c
index e934bf89d1..9362de0b6f 100644
--- a/hw/s390x/ipl.c
+++ b/hw/s390x/ipl.c
@@ -45,6 +45,7 @@
#define INITRD_PARM_START 0x010408UL
#define PARMFILE_START 0x001000UL
#define ZIPL_IMAGE_START 0x009000UL
+#define BIOS_MAX_SIZE 0x300000UL
#define IPL_PSW_MASK (PSW_MASK_32 | PSW_MASK_64)
static bool iplb_extended_needed(void *opaque)
@@ -144,7 +145,14 @@ static void s390_ipl_realize(DeviceState *dev, Error **errp)
* even if an external kernel has been defined.
*/
if (!ipl->kernel || ipl->enforce_bios) {
- uint64_t fwbase = (MIN(ms->ram_size, 0x80000000U) - 0x200000) & ~0xffffUL;
+ uint64_t fwbase;
+
+ if (ms->ram_size < BIOS_MAX_SIZE) {
+ error_setg(errp, "not enough RAM to load the BIOS file");
+ return;
+ }
+
+ fwbase = (MIN(ms->ram_size, 0x80000000U) - BIOS_MAX_SIZE) & ~0xffffUL;
bios_filename = qemu_find_file(QEMU_FILE_TYPE_BIOS, ipl->firmware);
if (bios_filename == NULL) {
--
2.45.2
next prev parent reply other threads:[~2024-06-21 8:25 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-06-21 8:24 [PATCH 0/7] pc-bios/s390-ccw: Merge the netboot loader into s390-ccw.img Thomas Huth
2024-06-21 8:24 ` [PATCH 1/7] pc-bios/s390-ccw: Remove duplicated LDFLAGS Thomas Huth
2024-06-21 8:24 ` Thomas Huth [this message]
2024-06-21 8:24 ` [PATCH 3/7] pc-bios/s390-ccw: Use the libc from SLOF for the main s390-ccw.img binary, too Thomas Huth
2024-06-21 8:24 ` [PATCH 4/7] pc-bios/s390-ccw: Link the netboot code into the main s390-ccw.img binary Thomas Huth
2024-06-21 8:24 ` [PATCH 5/7] hw/s390x: Remove the possibility to load the s390-netboot.img binary Thomas Huth
2024-06-21 8:24 ` [PATCH 6/7] pc-bios/s390-ccw: Merge netboot.mak into the main Makefile Thomas Huth
2024-06-21 8:24 ` [PATCH 7/7] docs/system/s390x/bootdevices: Update the documentation about network booting Thomas Huth
2024-06-21 9:39 ` [PATCH 0/7] pc-bios/s390-ccw: Merge the netboot loader into s390-ccw.img Christian Borntraeger
2024-06-21 9:41 ` Thomas Huth
2024-06-21 20:51 ` Eric Farman
2024-06-24 5:55 ` Thomas Huth
2024-06-28 18:01 ` Jared Rossi
2024-07-01 8:01 ` Thomas Huth
2024-06-24 0:35 ` Jared Rossi
2024-08-26 17:07 ` Jared Rossi
2024-08-27 12:43 ` Thomas Huth
2024-08-27 13:13 ` Jared Rossi
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=20240621082422.136217-3-thuth@redhat.com \
--to=thuth@redhat.com \
--cc=borntraeger@linux.ibm.com \
--cc=farman@linux.ibm.com \
--cc=frankja@linux.ibm.com \
--cc=imbrenda@linux.ibm.com \
--cc=jjherne@linux.ibm.com \
--cc=jrossi@linux.ibm.com \
--cc=mhartmay@linux.ibm.com \
--cc=qemu-devel@nongnu.org \
--cc=qemu-s390x@nongnu.org \
--cc=walling@linux.ibm.com \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.