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