git: 58c99df2196c - main - kboot: .note.GNU-stack is needed
Date: Thu, 17 Apr 2025 21:59:08 UTC
The branch main has been updated by imp:
URL: https://cgit.FreeBSD.org/src/commit/?id=58c99df2196c5564a6922dcfe4d03387cebdd10c
commit 58c99df2196c5564a6922dcfe4d03387cebdd10c
Author: Warner Losh <imp@FreeBSD.org>
AuthorDate: 2025-04-17 04:03:26 +0000
Commit: Warner Losh <imp@FreeBSD.org>
CommitDate: 2025-04-17 21:56:45 +0000
kboot: .note.GNU-stack is needed
Add '.section .note.GNU-stack,"",%progbits' to all assembler. Newer
versions of clang complain when this isn't present because executable
stacks are going away in the future. We don't need an executable stack
anyway.
Sponsored by: Netflix
Reviewed by: kevans, andrew, emaste, jhibbits
Differential Revision: https://reviews.freebsd.org/D49855
---
stand/kboot/kboot/arch/aarch64/tramp.S | 2 ++
stand/kboot/kboot/arch/amd64/amd64_tramp.S | 2 ++
stand/kboot/kboot/arch/powerpc64/kerneltramp.S | 2 ++
stand/kboot/libkboot/arch/aarch64/host_syscall.S | 2 ++
stand/kboot/libkboot/arch/amd64/host_syscall.S | 2 ++
stand/kboot/libkboot/arch/powerpc64/host_syscall.S | 2 ++
6 files changed, 12 insertions(+)
diff --git a/stand/kboot/kboot/arch/aarch64/tramp.S b/stand/kboot/kboot/arch/aarch64/tramp.S
index 32616f239c50..f58a95cb8463 100644
--- a/stand/kboot/kboot/arch/aarch64/tramp.S
+++ b/stand/kboot/kboot/arch/aarch64/tramp.S
@@ -99,3 +99,5 @@ tramp_size:
.globl tramp_data_offset
tramp_data_offset:
.long trampoline_data-tramp
+
+ .section .note.GNU-stack,"",%progbits
diff --git a/stand/kboot/kboot/arch/amd64/amd64_tramp.S b/stand/kboot/kboot/arch/amd64/amd64_tramp.S
index b95e99cbaf0f..2f2f765d3547 100644
--- a/stand/kboot/kboot/arch/amd64/amd64_tramp.S
+++ b/stand/kboot/kboot/arch/amd64/amd64_tramp.S
@@ -105,3 +105,5 @@ tramp_size:
tramp_data_offset:
.long trampoline_data-tramp
.size tramp_data_offset, 4
+
+ .section .note.GNU-stack,"",%progbits
diff --git a/stand/kboot/kboot/arch/powerpc64/kerneltramp.S b/stand/kboot/kboot/arch/powerpc64/kerneltramp.S
index 211a6e474d2a..e9678dc02e72 100644
--- a/stand/kboot/kboot/arch/powerpc64/kerneltramp.S
+++ b/stand/kboot/kboot/arch/powerpc64/kerneltramp.S
@@ -99,3 +99,5 @@ endkerneltramp:
.data
CNAME(szkerneltramp):
.long endkerneltramp - CNAME(kerneltramp)
+
+ .section .note.GNU-stack,"",%progbits
diff --git a/stand/kboot/libkboot/arch/aarch64/host_syscall.S b/stand/kboot/libkboot/arch/aarch64/host_syscall.S
index db3ecf0f885d..3b1c345f2cf6 100644
--- a/stand/kboot/libkboot/arch/aarch64/host_syscall.S
+++ b/stand/kboot/libkboot/arch/aarch64/host_syscall.S
@@ -16,3 +16,5 @@ ENTRY(host_syscall)
ret
/* Note: We're exposing the raw return value to the caller */
END(host_syscall)
+
+ .section .note.GNU-stack,"",%progbits
diff --git a/stand/kboot/libkboot/arch/amd64/host_syscall.S b/stand/kboot/libkboot/arch/amd64/host_syscall.S
index 5bf0fca0cec1..0869bfe245f6 100644
--- a/stand/kboot/libkboot/arch/amd64/host_syscall.S
+++ b/stand/kboot/libkboot/arch/amd64/host_syscall.S
@@ -27,3 +27,5 @@ ENTRY(host_syscall)
ret
/* Note: We're exposing the raw return value to the caller */
END(host_syscall)
+
+ .section .note.GNU-stack,"",%progbits
diff --git a/stand/kboot/libkboot/arch/powerpc64/host_syscall.S b/stand/kboot/libkboot/arch/powerpc64/host_syscall.S
index f9108065ebfa..84fde2041704 100644
--- a/stand/kboot/libkboot/arch/powerpc64/host_syscall.S
+++ b/stand/kboot/libkboot/arch/powerpc64/host_syscall.S
@@ -30,3 +30,5 @@ ENTRY(host_syscall)
blr
/* Note: We're exposing the raw return value to the caller */
END(host_syscall)
+
+ .section .note.GNU-stack,"",%progbits