Fix Intel CET IBT instrumentation in assembly code

Resolves: RHEL-20173

Signed-off-by: Vladis Dronov <vdronov@redhat.com>
This commit is contained in:
Vladis Dronov 2024-03-27 18:31:45 +01:00
parent f07b87b24c
commit 6e0fe14839
2 changed files with 42 additions and 2 deletions

View File

@ -0,0 +1,34 @@
Drop Intel build system specific ifdefs (INTEL_CET_ENABLED and AS_FEATURE_LEVEL) since
they do not exist in the RHEL build system.
While we have __CET__ for cf-protection-enabled builds, we cannot pass it to "nasm" as it
is noted by the "--cf-protection" token in CFLAGS. So enable cf-protection for assembly
files unconditionally.
--- ./quickassist/lookaside/access_layer/src/common/compression/reg_sizes.asm.orig 2024-06-29 16:01:35.806838838 +0200
+++ ./quickassist/lookaside/access_layer/src/common/compression/reg_sizes.asm 2024-06-29 16:03:38.883926951 +0200
@@ -195,20 +195,16 @@
%define XWORD(reg) reg %+ x
-%ifdef INTEL_CET_ENABLED
- %ifdef __NASM_VER__
- %if AS_FEATURE_LEVEL >= 10
- %ifidn __OUTPUT_FORMAT__,elf32
+%ifdef __NASM_VER__
+ %ifidn __OUTPUT_FORMAT__,elf32
section .note.gnu.property note alloc noexec align=4
DD 0x00000004,0x0000000c,0x00000005,0x00554e47
DD 0xc0000002,0x00000004,0x00000003
- %endif
- %ifidn __OUTPUT_FORMAT__,elf64
+ %endif
+ %ifidn __OUTPUT_FORMAT__,elf64
section .note.gnu.property note alloc noexec align=8
DD 0x00000004,0x00000010,0x00000005,0x00554e47
DD 0xc0000002,0x00000004,0x00000003,0x00000000
- %endif
- %endif
%endif
%endif

View File

@ -4,7 +4,7 @@
%global libusdm_soversion 0
Name: qatlib
Version: 24.02.0
Release: 2%{?dist}
Release: 3%{?dist}
Summary: Intel QuickAssist user space library
# The entire source code is released under BSD.
# For a breakdown of inbound licenses see the INSTALL file.
@ -17,6 +17,8 @@ Recommends: qatlib-service
# https://bugzilla.redhat.com/show_bug.cgi?id=1897661
ExcludeArch: %{arm} aarch64 %{power64} s390x i686
Patch1: qatlib-drop-intel-ifdefs.patch
%description
Intel QuickAssist Technology (Intel QAT) provides hardware acceleration
for offloading security, authentication and compression services from the
@ -132,6 +134,10 @@ exit 0
%{_mandir}/man8/qat_init.sh.8*
%changelog
* Wed Jun 26 2024 Vladis Dronov <vdronov@redhat.com> - 24.02.0-3
- Fix Intel CET IBT instrumentation in assembly code (RHEL-20173)
- Update a changelog entry
* Mon Jun 24 2024 Troy Dawson <tdawson@redhat.com> - 24.02.0-2
- Bump release for June 2024 mass rebuild
@ -141,4 +147,4 @@ exit 0
- Use proper SPDX license identifiers
* Fri Jan 26 2024 Vladis Dronov <vdronov@redhat.com> - 23.11.0-3
- Initial import
- Initial import from Fedora 40