s390-tools/s390-tools-sles15sp5-02-zipl-boot-declare-that-no-executable-stack-is-requir.patch

48 lines
1.1 KiB
Diff
Raw Normal View History

---
zipl/boot/entry.S | 5 +++++
zipl/boot/head.S | 5 +++++
zipl/boot/stage2.lds.S | 1 +
zipl/boot/stage3.lds.S | 1 +
4 files changed, 12 insertions(+)
--- a/zipl/boot/entry.S
+++ b/zipl/boot/entry.S
@@ -18,3 +18,8 @@ pgm_check_handler:
basr %r14,%r14
lmg %r0,%r15,__LC_SAVE_AREA_SYNC
lpswe __LC_PGM_OLD_PSW(%r0)
+
+/* The code doesn't require an executable stack */
+#if defined(__linux__) && defined(__ELF__)
+.section .note.GNU-stack,"",%progbits
+#endif
--- a/zipl/boot/head.S
+++ b/zipl/boot/head.S
@@ -28,3 +28,8 @@ _start:
brasl %r14,initialize
.Lstack: .long 0x10000-160
.previous
+
+/* The code doesn't require an executable stack */
+#if defined(__linux__) && defined(__ELF__)
+.section .note.GNU-stack,"",%progbits
+#endif
--- a/zipl/boot/stage2.lds.S
+++ b/zipl/boot/stage2.lds.S
@@ -94,5 +94,6 @@ SECTIONS
/DISCARD/ : {
*(.eh_frame)
*(.interp)
+ *(.note.GNU-stack)
}
}
--- a/zipl/boot/stage3.lds.S
+++ b/zipl/boot/stage3.lds.S
@@ -79,5 +79,6 @@ SECTIONS
/DISCARD/ : {
*(.eh_frame)
*(.interp)
+ *(.note.GNU-stack)
}
}