|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [PATCH v2 00/11] x86/EFI: prevent write-execute sections
Hello,
The following series aim to remove the presence of any write and execute
section in the PE Xen image. This is required to support the NX
compatible flag in the PE header. By the end of the series the
resulting PE image has no relocations that apply to text sections, as
text sections are strictly mapped read-execute only. Xen itself
attempting to apply relocations to text would result in page-faults.
A smoke test is added to Gitlab to ensure the PE NX support doesn't
regress.
Only patches 5 and 10 are carried over from v1, the rest are new.
Thanks, Roger.
Roger Pau Monne (11):
automation/dockers: add to README how to rebuild all containers
x86/mkreloc: fix obtaining PE image base address
x86/mkreloc: use the string table to get names
x86/mkreloc: print the linear address of relocations to read-only
sections
xen: remove -N from the linker command line
x86/efi: discard .text.header for PE binary
x86/efi: discard multiboot related entry code for PE binary
x86/boot: place trampoline code in a non-execute section
x86/efi: avoid a relocation in efi_arch_post_exit_boot()
x86/efi: do not merge all .init sections
automation/x86: add a xen.efi test with a strict NX OVMF build
automation/build/README.md | 7 ++
automation/build/fedora/41-x86_64.dockerfile | 5 ++
automation/gitlab-ci/test.yaml | 9 +++
automation/scripts/qemu-smoke-x86-64-efi.sh | 22 +++++-
xen/arch/arm/Makefile | 6 +-
xen/arch/ppc/Makefile | 6 +-
xen/arch/riscv/Makefile | 6 +-
xen/arch/x86/Makefile | 12 +--
xen/arch/x86/boot/head.S | 3 +-
xen/arch/x86/efi/efi-boot.h | 7 +-
xen/arch/x86/efi/mkreloc.c | 77 +++++++++++++++++---
xen/arch/x86/xen.lds.S | 20 +++--
12 files changed, 138 insertions(+), 42 deletions(-)
--
2.48.1
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |