Page MenuHomeFreeBSD

kernel: address executable stack warnings in amd64 gcc build
ClosedPublic

Authored by rlibby on May 11 2026, 4:14 PM.
Tags
None
Referenced Files
F163212313: D56946.id177935.diff
Tue, Jul 21, 2:42 AM
F163177288: D56946.diff
Mon, Jul 20, 6:37 PM
Unknown Object (File)
Sun, Jul 19, 3:58 PM
Unknown Object (File)
Sat, Jul 18, 9:17 AM
Unknown Object (File)
Wed, Jul 15, 7:21 AM
Unknown Object (File)
Wed, Jul 15, 7:21 AM
Unknown Object (File)
Wed, Jul 8, 9:07 PM
Unknown Object (File)
Sun, Jul 5, 6:40 AM
Subscribers

Details

Summary

Mark assembly files as not requiring executable stacks.


Bottom-up approach alternative to D56893.

Test Plan

make buildkernel && env MAKEOBJDIRPREFIX=/usr/obj/gcc14 CROSS_TOOLCHAIN=amd64-gcc14 make buildkernel

find /usr/obj/gcc14/gcc14/usr/src/freebsd/amd64.amd64 -name '*.meta' -exec grep --with-filename warning: {} \; | sort

Resolves this set of executable stack warnings:

./sys/GENERIC/kernel.full.meta:/usr/local/x86_64-unknown-freebsd16.0/bin/ld: warning: vmbus_vector.o: missing .note.GNU-stack section implies executable stack
./sys/GENERIC/modules/usr/src/freebsd/sys/modules/aesni/aesni.ko.full.meta:/usr/local/x86_64-unknown-freebsd16.0/bin/ld: warning: aeskeys_amd64.o: missing .note.GNU-stack section implies executable stack
./sys/GENERIC/modules/usr/src/freebsd/sys/modules/efirt/efirt.ko.full.meta:/usr/local/x86_64-unknown-freebsd16.0/bin/ld: warning: efirt_support.o: missing .note.GNU-stack section implies executable stack
./sys/GENERIC/modules/usr/src/freebsd/sys/modules/hyperv/vmbus/hv_vmbus.ko.full.meta:/usr/local/x86_64-unknown-freebsd16.0/bin/ld: warning: vmbus_vector.o: missing .note.GNU-stack section implies executable stack
./sys/GENERIC/modules/usr/src/freebsd/sys/modules/sgx/sgx.ko.full.meta:/usr/local/x86_64-unknown-freebsd16.0/bin/ld: warning: sgx_support.o: missing .note.GNU-stack section implies executable stack
./sys/GENERIC/modules/usr/src/freebsd/sys/modules/vmm/vmm.ko.full.meta:/usr/local/x86_64-unknown-freebsd16.0/bin/ld: warning: svm_support.o: missing .note.GNU-stack section implies executable stack

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Skipped
Unit
Tests Skipped
Build Status
Buildable 72988
Build 69871: arc lint + arc unit