Update to qat-zstd-plugin 1.0.0 @ 1e8b930c

NUMA node aware mem allocations and other Code optimizations
Bug Fixes and Static analysis Fixes (OpenScanhub and Latest Coverity)
Support ZSTD v1.5.7 and README refactor
Spec file updates for RPM Packaging

[skip changelog]

Resolves: RHEL-72903

Signed-off-by: Vladislav Dronov <vdronov@redhat.com>
This commit is contained in:
Vladislav Dronov 2026-01-27 17:53:11 +01:00
parent a515f25b77
commit b3c2a6f09e
6 changed files with 49 additions and 81 deletions

View File

@ -1,6 +0,0 @@
--- !Policy
product_versions:
- rhel-10
decision_context: osci_compose_gate
rules:
- !PassingTestCaseRule {test_case_name: osci.brew-build.tier0.functional}

View File

@ -1,46 +0,0 @@
--- a/src/Makefile 2024-10-09 18:14:19.453675299 +0300
+++ b/src/Makefile 2024-10-09 18:25:13.601675269 +0300
@@ -79,18 +79,27 @@
QATFLAGS += -O3
endif
+VERSION_MAJOR=0
+VERSION_MINOR=2
+VERSION_PATCH=0
+VERSION=$(VERSION_MAJOR).$(VERSION_MINOR).$(VERSION_PATCH)
+
qatseqprod.o: qatseqprod.c
$(CC) -c $(CFLAGS) $(QATFLAGS) $(DEBUGFLAGS) $^ -o $@
lib: qatseqprod.o
$(AR) rc libqatseqprod.a $^
- $(CC) -shared $^ $(LDFLAGS) -o libqatseqprod.so
+ $(CC) -shared $^ $(LDFLAGS) -Wl,-soname,libqatseqprod.so.$(VERSION_MAJOR) -o libqatseqprod.so.$(VERSION)
+ ln -sf libqatseqprod.so.$(VERSION) libqatseqprod.so.$(VERSION_MAJOR)
+ ln -sf libqatseqprod.so.$(VERSION_MAJOR) libqatseqprod.so
.PHONY: install
install: lib
[ -e $(DESTDIR)$(LIBDIR) ] || $(INSTALL) -d -m 755 $(DESTDIR)$(LIBDIR)/
[ -e $(DESTDIR)$(INCLUDEDIR) ] || $(INSTALL) -d -m 755 $(DESTDIR)$(INCLUDEDIR)/
- $(INSTALL_PROGRAM) libqatseqprod.so $(DESTDIR)$(LIBDIR)
+ $(INSTALL_PROGRAM) libqatseqprod.so.$(VERSION) $(DESTDIR)$(LIBDIR)
+ ln -sf libqatseqprod.so.$(VERSION) $(DESTDIR)$(LIBDIR)/libqatseqprod.so.$(VERSION_MAJOR)
+ ln -sf libqatseqprod.so.$(VERSION_MAJOR) $(DESTDIR)$(LIBDIR)/libqatseqprod.so
$(INSTALL_DATA) libqatseqprod.a $(DESTDIR)$(LIBDIR)
$(INSTALL_DATA) qatseqprod.h $(DESTDIR)$(INCLUDEDIR)
@echo qatseqprod library successfully installed
@@ -98,10 +107,12 @@
.PHONY: uninstall
uninstall:
$(RM) $(LIBDIR)/libqatseqprod.a
+ $(RM) $(LIBDIR)/libqatseqprod.so.$(VERSION)
+ $(RM) $(LIBDIR)/libqatseqprod.so.$(VERSION_MAJOR)
$(RM) $(LIBDIR)/libqatseqprod.so
$(RM) $(INCLUDEDIR)/qatseqprod.h
@echo qatseqprod library successfully uninstalled
clean:
$(RM) *.o
- $(RM) libqatseqprod.a libqatseqprod.so
+ $(RM) libqatseqprod.a libqatseqprod.so libqatseqprod.so.$(VERSION) libqatseqprod.so.$(VERSION_MAJOR)

View File

@ -1,5 +1,7 @@
# SPDX-License-Identifier: MIT
Name: qat-zstd-plugin
Version: 0.2.0
Version: 1.0.0
Release: %autorelease
Summary: Intel QuickAssist Technology ZSTD Plugin
@ -7,14 +9,14 @@ License: BSD-3-Clause
URL: https://github.com/intel/QAT-ZSTD-Plugin
Source0: %{url}/archive/v%{version}/%{name}-%{version}.tar.gz
Patch0: lib-version.patch
Patch1: test.patch
Patch2: rh-makefile.patch
Patch0: test.patch
Patch1: rh-makefile.patch
BuildRequires: automake
BuildRequires: gcc
BuildRequires: libzstd-devel
BuildRequires: qatlib-devel
BuildRequires: numactl-devel
# Upstream only supports x86_64
ExclusiveArch: x86_64
@ -59,7 +61,7 @@ LD_LIBRARY_PATH=%{buildroot}%{_libdir} ./test/test README.md
%files
%license LICENSE
%{_libdir}/libqatseqprod.so.0
%{_libdir}/libqatseqprod.so.1
%{_libdir}/libqatseqprod.so.%{version}
%files devel

View File

@ -1,16 +1,20 @@
--- a/src/Makefile 2024-10-30 22:20:03.296178391 +0100
+++ b/src/Makefile 2024-10-30 22:21:43.915301707 +0100
@@ -52,11 +52,11 @@ ifneq ($(ICP_ROOT), )
@@ -53,7 +53,7 @@ ifneq ($(ICP_ROOT), )
-I$(ICP_ROOT)/quickassist/include/dc \
-I$(ICP_ROOT)/quickassist/lookaside/access_layer/include \
-I$(ICP_ROOT)/quickassist/utilities/libusdm_drv
- LDFLAGS = -Wl,-rpath,$(ICP_ROOT)/build -L$(ICP_ROOT)/build -lqat_s \
+ LDFLAGS += -Wl,-rpath,$(ICP_ROOT)/build -L$(ICP_ROOT)/build -lqat_s \
-lusdm_drv_s
-lusdm_drv_s -lnuma
else
QATFLAGS = -DINTREE
- LDFLAGS = -lqat -lusdm
+ LDFLAGS += -lqat -lusdm
# In-tree - look for headers in standard locations
@@ -63,7 +63,7 @@ else
else
$(error QAT headers not found in Standard path, Please install QATLib development package or set ICP_ROOT for out-of-tree driver)
endif
- LDFLAGS = -lqat -lusdm -lnuma
+ LDFLAGS += -lqat -lusdm -lnuma
endif
ifdef ZSTDLIB
@ -24,4 +28,4 @@
+LDFLAGS += -L$(LIB) -I$(LIB)
ifneq ($(ICP_ROOT), )
LDFLAGS += -lqat_s -lusdm_drv_s -Wl,-rpath,$(ICP_ROOT)/build -L$(ICP_ROOT)/build
LDFLAGS += -lqat_s -lusdm_drv_s -lnuma -Wl,-rpath,$(ICP_ROOT)/build -L$(ICP_ROOT)/build

View File

@ -1 +1 @@
SHA512 (qat-zstd-plugin-0.2.0.tar.gz) = 9039a346d85bed9a84326a6e664de8d0203b92b167468fd5d7d67ff96be08b3edaba92e28a900ba53440eaed66b3621db72c6a3d1200b74b0893b7ba8a6bf21a
SHA512 (qat-zstd-plugin-1.0.0.tar.gz) = 6ee92f0631d4b66f250db7b55a84f2c6fe37ca70d72ad30c6d7559034ac74f24511963ebd877dfd323e9f66bccf3f311ba215167cb60338f4181cf060fb81286

View File

@ -1,6 +1,6 @@
--- a/test/Makefile
+++ b/test/Makefile
@@ -34,24 +34,12 @@
@@ -34,42 +34,27 @@
# #######################################################################
LIB = ../src
@ -8,25 +8,46 @@
+LDFLAGS = -L$(LIB) -I$(LIB)
ifneq ($(ICP_ROOT), )
LDFLAGS += -lqat_s -lusdm_drv_s -Wl,-rpath,$(ICP_ROOT)/build -L$(ICP_ROOT)/build
LDFLAGS += -lqat_s -lusdm_drv_s -lnuma -Wl,-rpath,$(ICP_ROOT)/build -L$(ICP_ROOT)/build
else
- LDFLAGS += -lqat -lusdm
- LDFLAGS += -lqat -lusdm -lnuma
-endif
-
-ifdef ZSTDLIB
-CFLAGS += -I$(ZSTDLIB)
-LDFLAGS += $(ZSTDLIB)/libzstd.a
-else
-ZSTDLIB := $(shell find /usr /lib /local -name 'libzstd.a' 2>/dev/null | head -n 1)
-ZSTDLIB ?= /usr/local/lib/libzstd.a
-ifneq ("$(wildcard $(ZSTDLIB))","")
- LDFLAGS += $(ZSTDLIB)
-else
- $(error libzstd.a not found, please install libzstd or specify the path manually)
-endif
-ZSTDLIB := $(shell find /usr /lib /local -name 'libzstd.a' 2>/dev/null | head -n 1| xargs dirname)
-LDFLAGS += $(ZSTDLIB)/libzstd.a
+ LDFLAGS += -lzstd -lqatseqprod -lqat -lusdm
endif
default: test benchmark
all: test benchmark
-check_zstdlib:
- @echo checking zstd static libaray '$(ZSTDLIB)/libzstd.a'
- @if [ ! -e $(ZSTDLIB)/libzstd.a ]; then \
- echo libzstd.a is not found, please install libzstd or specify the path manually; \
- exit 1; \
- fi
-
-test: test.c check_zstdlib
+test: test.c
$(Q)$(MAKE) -C $(LIB)
$(CC) $< $(CFLAGS) $(LDFLAGS) -o $@
-benchmark: benchmark.c check_zstdlib
+benchmark: benchmark.c
$(Q)$(MAKE) -C $(LIB)
$(CC) $(CFLAGS) $< $(LDFLAGS) -o $@ -lpthread
clean:
$(Q)$(MAKE) -C $(LIB) $@
$(RM) test benchmark
-.PHONY: clean check_zstdlib
+.PHONY: clean
--- a/test/test.c
+++ b/test/test.c
@@ -44,9 +44,6 @@
@ -39,10 +60,3 @@
#include "zstd.h"
#include "zstd_errors.h"
@@ -143,4 +140,4 @@
free(dstBuffer);
free(decompBuffer);
return 0;
-}
\ No newline at end of file
+}