53 lines
1.7 KiB
Diff
53 lines
1.7 KiB
Diff
|
From 5db331dc14cea38ceb96f7cd55365f7c7d326c29 Mon Sep 17 00:00:00 2001
|
||
|
From: Thomas Huth <thuth@redhat.com>
|
||
|
Date: Tue, 27 Jun 2023 09:47:01 +0200
|
||
|
Subject: [PATCH 3/4] pc-bios/s390-ccw: Provide space for initial stack frame
|
||
|
in start.S
|
||
|
MIME-Version: 1.0
|
||
|
Content-Type: text/plain; charset=UTF-8
|
||
|
Content-Transfer-Encoding: 8bit
|
||
|
|
||
|
Providing the space of a stack frame is the duty of the caller,
|
||
|
so we should reserve 160 bytes before jumping into the main function.
|
||
|
Otherwise the main() function might write past the stack array.
|
||
|
|
||
|
While we're at it, add a proper STACK_SIZE macro for the stack size
|
||
|
instead of using magic numbers (this is also required for the following
|
||
|
patch).
|
||
|
|
||
|
Reviewed-by: Christian Borntraeger <borntraeger@linux.ibm.com>
|
||
|
Reviewed-by: Cédric Le Goater <clg@redhat.com>
|
||
|
Message-Id: <20230627074703.99608-3-thuth@redhat.com>
|
||
|
Reviewed-by: Eric Farman <farman@linux.ibm.com>
|
||
|
Reviewed-by: Claudio Imbrenda <imbrenda@linux.ibm.com>
|
||
|
Reviewed-by: Marc Hartmayer <mhartmay@linux.ibm.com>
|
||
|
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
|
||
|
Signed-off-by: Thomas Huth <thuth@redhat.com>
|
||
|
(cherry picked from commit 74fe98ee7fb3344dbd085d1fa32c0dc2fc2c831f)
|
||
|
---
|
||
|
pc-bios/s390-ccw/start.S | 5 ++++-
|
||
|
1 file changed, 4 insertions(+), 1 deletion(-)
|
||
|
|
||
|
diff --git a/pc-bios/s390-ccw/start.S b/pc-bios/s390-ccw/start.S
|
||
|
index d29de09cc6..abd6fe6639 100644
|
||
|
--- a/pc-bios/s390-ccw/start.S
|
||
|
+++ b/pc-bios/s390-ccw/start.S
|
||
|
@@ -10,10 +10,13 @@
|
||
|
* directory.
|
||
|
*/
|
||
|
|
||
|
+#define STACK_SIZE 0x8000
|
||
|
+#define STACK_FRAME_SIZE 160
|
||
|
+
|
||
|
.globl _start
|
||
|
_start:
|
||
|
|
||
|
- larl %r15,stack + 0x8000 /* Set up stack */
|
||
|
+ larl %r15,stack + STACK_SIZE - STACK_FRAME_SIZE /* Set up stack */
|
||
|
|
||
|
/* clear bss */
|
||
|
larl %r2,__bss_start
|
||
|
--
|
||
|
2.39.3
|
||
|
|