On 10/7/21 11:44, Thomas Huth wrote:
On 07/10/2021 10.50, Janosch Frank wrote:
Let's just define all of the needed things so we can link libcflat.
A significant portion of the lib won't work, like printing and
allocation but we can still use things like memset() which already
improves our lives significantly.
Signed-off-by: Janosch Frank <frankja@xxxxxxxxxxxxx>
---
s390x/snippets/c/cstart.S | 14 ++++++++++++++
1 file changed, 14 insertions(+)
diff --git a/s390x/snippets/c/cstart.S b/s390x/snippets/c/cstart.S
index 031a6b83..2d397669 100644
--- a/s390x/snippets/c/cstart.S
+++ b/s390x/snippets/c/cstart.S
@@ -20,6 +20,20 @@ start:
lghi %r15, stackptr
sam64
brasl %r14, main
+/*
+ * Defining things that the linker needs to link in libcflat and make
+ * them result in sigp stop if called.
+ */
+.globl sie_exit
+.globl sie_entry
+.globl smp_cpu_setup_state
+.globl ipl_args
+.globl auxinfo
+sie_exit:
+sie_entry:
+smp_cpu_setup_state:
+ipl_args:
+auxinfo:
I think this likely could be done in a somewhat nicer way, e.g. by moving
Definitely, as I said, it's a simple fix
mem_init() and sclp_memory_setup() into a separate .c file in the lib, and
by moving expect_pgm_int(), fixup_pgm_int() and friends into another
separate .c file, too, so that we e.g. do not need to link against the code
that uses sie_entry and sie_exit ... but that's a major rework on its own,
so for the time being:
Acked-by: Thomas Huth <thuth@xxxxxxxxxx>
Thanks