Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Mark Huffman Decoder Assembly noexecstack on All Architectures #2964

Merged
merged 6 commits into from
Jan 5, 2022

Conversation

felixhandte
Copy link
Contributor

@felixhandte felixhandte commented Dec 30, 2021

Apparently, even when the assembly file is empty (because ZSTD_ENABLE_ASM_X86_64_BMI2 is false), it still is marked as possibly needing an executable stack and so the whole library is marked as such. This commit applies a simple patch for this problem by moving the noexecstack indication outside the macro guard.

In addition, this PR ships flags to the Makefile-driven builds to explicitly request a non-executable stack. This ought to be redundant, but it appears on at least one platform (MIPS) to succeed where the source code note fails.

This PR builds on #2857.

This PR addresses #2963.

Apparently, even when the assembly file is empty (because
`ZSTD_ENABLE_ASM_X86_64_BMI2` is false), it still is marked as possibly
needing an executable stack and so the whole library is marked as such. This
commit applies a simple patch for this problem by moving the noexecstack
indication outside the macro guard.

This commit builds on facebook#2857.

This commit addresses facebook#2963.
@felixhandte felixhandte force-pushed the noexecstack-all-archs branch 2 times, most recently from ce054ae to 35652b0 Compare January 4, 2022 19:44
@felixhandte felixhandte force-pushed the noexecstack-all-archs branch from 35652b0 to 35208f7 Compare January 4, 2022 21:57
Hopefully this marks the binary artifacts `noexecstack` even on platforms
where binaries default to true.
@felixhandte felixhandte force-pushed the noexecstack-all-archs branch from bd136c8 to 4620ce6 Compare January 5, 2022 20:12
@terrelln terrelln added the release-blocking Must be done by the release label Jan 5, 2022
@felixhandte felixhandte merged commit 7e67951 into facebook:dev Jan 5, 2022
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
build CLA Signed release-blocking Must be done by the release
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants