Compare commits
No commits in common. "imports/c8-beta/qatzip-1.0.9-1.el8" and "c8s" have entirely different histories.
imports/c8
...
c8s
3
.gitignore
vendored
3
.gitignore
vendored
@ -1 +1,2 @@
|
|||||||
SOURCES/qatzip-1.0.9.tar.gz
|
SOURCES/qatzip-*.tar.gz
|
||||||
|
/qatzip-*.tar.gz
|
||||||
|
@ -1 +0,0 @@
|
|||||||
50c6dfb8f3eb44bd098588ffcbbe84911346bbc0 SOURCES/qatzip-1.0.9.tar.gz
|
|
6
gating.yaml
Normal file
6
gating.yaml
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
--- !Policy
|
||||||
|
product_versions:
|
||||||
|
- rhel-8
|
||||||
|
decision_context: osci_compose_gate
|
||||||
|
rules:
|
||||||
|
- !PassingTestCaseRule {test_case_name: osci.brew-build.tier0.functional}
|
63
qatapp-32528-fix-large-files.patch
Normal file
63
qatapp-32528-fix-large-files.patch
Normal file
@ -0,0 +1,63 @@
|
|||||||
|
From 906ff19a0bc4d770d0d8cd484bdce8d5fbb1843f Mon Sep 17 00:00:00 2001
|
||||||
|
From: Xinghong Chen <xinghong.chen@intel.com>
|
||||||
|
Date: Wed, 31 Jul 2024 22:57:09 -0400
|
||||||
|
Subject: [PATCH] QATAPP-32528: Fixed the qzip decompress large file issue
|
||||||
|
MIME-Version: 1.0
|
||||||
|
Content-Type: text/plain; charset=UTF-8
|
||||||
|
Content-Transfer-Encoding: 8bit
|
||||||
|
Content-type: text/plain
|
||||||
|
|
||||||
|
* The “bytes_processed” only updated when “DATA_ERROR/BUF_ERROR”
|
||||||
|
happened. It’s OK if during each “src buffer”, it would run into
|
||||||
|
“DATA_ERROR/BUF_ERROR” (This is the majority of cases, for 512M
|
||||||
|
src buffer, it almost always have “incomplete source buffer”
|
||||||
|
return). It’s also ok, if for each “src buffer”, it never run into
|
||||||
|
“DATA_ERROR/BUF_ERROR”, so it wouldn’t call “fseek”,
|
||||||
|
then bytes_processed is useless. But, if we mix those tow scenarios,
|
||||||
|
For some “src buffer” run into “DATA_ERROR/BUF_ERROR” and
|
||||||
|
others don’t. Then “bytes_processed” will miss some process
|
||||||
|
source for which complete decompression without error issue.
|
||||||
|
It cause the “fseek” set to incorrect file stream position.
|
||||||
|
|
||||||
|
Signed-off-by: Xinghong Chen <xinghong.chen@intel.com>
|
||||||
|
Signed-off-by: David Qian <david.qian@intel.com>
|
||||||
|
Signed-off-by: Vladis Dronov <vdronov@redhat.com>
|
||||||
|
---
|
||||||
|
utils/qzip.c | 8 +++++---
|
||||||
|
1 file changed, 5 insertions(+), 3 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/utils/qzip.c b/utils/qzip.c
|
||||||
|
index bd69858..63d3702 100644
|
||||||
|
--- a/utils/qzip.c
|
||||||
|
+++ b/utils/qzip.c
|
||||||
|
@@ -255,7 +255,8 @@ void doProcessFile(QzSession_T *sess, const char *src_file_name,
|
||||||
|
FILE *src_file = NULL;
|
||||||
|
FILE *dst_file = NULL;
|
||||||
|
unsigned int bytes_read = 0;
|
||||||
|
- unsigned long bytes_processed = 0;
|
||||||
|
+ unsigned int bytes_lookahead = 0;
|
||||||
|
+ long offset_revert = 0;
|
||||||
|
unsigned int ratio_idx = 0;
|
||||||
|
const unsigned int ratio_limit =
|
||||||
|
sizeof(g_bufsz_expansion_ratio) / sizeof(unsigned int);
|
||||||
|
@@ -326,14 +327,15 @@ void doProcessFile(QzSession_T *sess, const char *src_file_name,
|
||||||
|
|
||||||
|
puts((is_compress) ? "Compressing..." : "Decompressing...");
|
||||||
|
|
||||||
|
+ bytes_lookahead = bytes_read;
|
||||||
|
ret = doProcessBuffer(sess, src_buffer, &bytes_read, dst_buffer,
|
||||||
|
dst_buffer_size, time_list_head, dst_file,
|
||||||
|
&dst_file_size, is_compress);
|
||||||
|
|
||||||
|
if (QZ_DATA_ERROR == ret || QZ_BUF_ERROR == ret) {
|
||||||
|
- bytes_processed += bytes_read;
|
||||||
|
if (0 != bytes_read) {
|
||||||
|
- if (-1 == fseek(src_file, bytes_processed, SEEK_SET)) {
|
||||||
|
+ offset_revert = (long)bytes_read - (long)bytes_lookahead;
|
||||||
|
+ if (-1 == fseek(src_file, offset_revert, SEEK_CUR)) {
|
||||||
|
ret = ERROR;
|
||||||
|
goto exit;
|
||||||
|
}
|
||||||
|
--
|
||||||
|
2.49.0
|
||||||
|
|
@ -4,21 +4,23 @@
|
|||||||
%global libqatzip_soversion 3
|
%global libqatzip_soversion 3
|
||||||
|
|
||||||
Name: qatzip
|
Name: qatzip
|
||||||
Version: 1.0.9
|
Version: 1.1.2
|
||||||
Release: 1%{?dist}
|
Release: 3%{?dist}
|
||||||
Summary: Intel QuickAssist Technology (QAT) QATzip Library
|
Summary: Intel QuickAssist Technology (QAT) QATzip Library
|
||||||
License: BSD
|
License: BSD-3-Clause
|
||||||
URL: https://github.com/intel/%{githubname}
|
URL: https://github.com/intel/%{githubname}
|
||||||
Source0: %{url}/archive/%{version}/%{name}-%{version}.tar.gz
|
Source0: %{url}/archive/%{version}/%{name}-%{version}.tar.gz
|
||||||
|
|
||||||
BuildRequires: gcc >= 4.8.5
|
BuildRequires: gcc >= 4.8.5
|
||||||
BuildRequires: zlib-devel >= 1.2.7
|
BuildRequires: zlib-devel >= 1.2.7
|
||||||
BuildRequires: qatlib-devel >= 22.07.0
|
BuildRequires: qatlib-devel >= 23.08.0
|
||||||
BuildRequires: autoconf automake libtool make lz4-devel
|
BuildRequires: autoconf automake libtool make lz4-devel
|
||||||
# The purpose of the package is to support hardware that only exists on x86_64 platforms
|
# The purpose of the package is to support hardware that only exists on x86_64 platforms
|
||||||
# https://bugzilla.redhat.com/show_bug.cgi?id=1987280
|
# https://bugzilla.redhat.com/show_bug.cgi?id=1987280
|
||||||
ExclusiveArch: x86_64
|
ExclusiveArch: x86_64
|
||||||
|
|
||||||
|
Patch1: qatapp-32528-fix-large-files.patch
|
||||||
|
|
||||||
%description
|
%description
|
||||||
QATzip is a user space library which builds on top of the Intel
|
QATzip is a user space library which builds on top of the Intel
|
||||||
QuickAssist Technology user space library, to provide extended
|
QuickAssist Technology user space library, to provide extended
|
||||||
@ -46,7 +48,7 @@ This package contains headers and libraries required to build
|
|||||||
applications that use the QATzip APIs.
|
applications that use the QATzip APIs.
|
||||||
|
|
||||||
%prep
|
%prep
|
||||||
%autosetup -p0 -n %{githubname}-%{version}
|
%autosetup -p1 -n %{githubname}-%{version}
|
||||||
|
|
||||||
%build
|
%build
|
||||||
%set_build_flags
|
%set_build_flags
|
||||||
@ -83,8 +85,21 @@ rm -vf %{buildroot}%{_mandir}/*.pdf
|
|||||||
%doc docs/QATzip-man.pdf
|
%doc docs/QATzip-man.pdf
|
||||||
%{_includedir}/qatzip.h
|
%{_includedir}/qatzip.h
|
||||||
%{_libdir}/libqatzip.so
|
%{_libdir}/libqatzip.so
|
||||||
|
%{_libdir}/pkgconfig/*.pc
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Mon Apr 07 2025 Vladis Dronov <vdronov@redhat.com> - 1.1.2-3
|
||||||
|
- Fix large files decompression bug QATAPP-32528 (RHEL-35325)
|
||||||
|
|
||||||
|
* Mon Nov 20 2023 Vladis Dronov <vdronov@redhat.com> - 1.1.2-2
|
||||||
|
- Rebuild qatzip 1.1.2 for qatlib 23.11 (RHEL-15637)
|
||||||
|
|
||||||
|
* Wed Mar 29 2023 Vladis Dronov <vdronov@redhat.com> - 1.1.2-1
|
||||||
|
- Update to qatzip 1.1.2 (bz 2082439)
|
||||||
|
- Update README, update driver configure files
|
||||||
|
- Fix some bugs
|
||||||
|
- Add support for pkgconfig
|
||||||
|
|
||||||
* Mon Aug 08 2022 Vladis Dronov <vdronov@redhat.com> - 1.0.9-1
|
* Mon Aug 08 2022 Vladis Dronov <vdronov@redhat.com> - 1.0.9-1
|
||||||
- Rebuild for qatzip v1.0.9 (bz 2048039)
|
- Rebuild for qatzip v1.0.9 (bz 2048039)
|
||||||
- Update to require qatlib-devel >= 22.07.0 due to soversion bump
|
- Update to require qatlib-devel >= 22.07.0 due to soversion bump
|
1
sources
Normal file
1
sources
Normal file
@ -0,0 +1 @@
|
|||||||
|
SHA512 (qatzip-1.1.2.tar.gz) = 88d2695227e1ce034ae58d2b7d6c4fba4da19aeba2493336acc23b80fd1de33a31ad7cab72eb84dee2ee03fa774a33f7eb30763f1d16b4b120fd84bf38e01d15
|
21
tests/README
Normal file
21
tests/README
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
these tests should be configured as BaseOS CI tests (not as OSCI tests), as
|
||||||
|
they require an x86_64 machine with QAT_4XXX (or later) hardware, so should
|
||||||
|
be run in Beaker.
|
||||||
|
see: https://docs.engineering.redhat.com/display/RTT/Onboarding+gating+tests
|
||||||
|
and: https://docs.engineering.redhat.com/pages/viewpage.action?pageId=53110084
|
||||||
|
and: https://docs.engineering.redhat.com/display/RTT/Creating+and+Updating+beaker+test
|
||||||
|
|
||||||
|
see https://bugzilla.redhat.com/show_bug.cgi?id=1747500#c50 for the details:
|
||||||
|
|
||||||
|
> Test QATzip [ https://github.com/intel/QATzip/blob/master/README.md#test-qatzip ]
|
||||||
|
> Performance Test With QATzip [ https://github.com/intel/QATzip/blob/master/README.md#performance-test-with-qatzip ]
|
||||||
|
>
|
||||||
|
> The first one - “Test QATzip” provides the basic usage of qzip binary, the compression binary.
|
||||||
|
> You can perform basic test such as compression and decompression with this binary to check
|
||||||
|
> the installation of QATzip binary.
|
||||||
|
>
|
||||||
|
> The second one, whose binary is in the test directory of source code, mentioned in
|
||||||
|
> the performance test section, can be used for the verification of installation of QATzip lib.
|
||||||
|
> However, this test binary is not packaged in the rpm package, from an aspect that the user
|
||||||
|
> do not need to verify the installation... Since QATlib provides a different way of configuring
|
||||||
|
> QAT hardware from the original out of tree driver, some of the performance test cases are deprecated.
|
6
tests/nulltest.sh
Executable file
6
tests/nulltest.sh
Executable file
@ -0,0 +1,6 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# we cannot test this since there is no machine with QAT_4XXX hardware in Beaker as of now
|
||||||
|
# Intel promised us to provide OtherQA for qatlib, qatengine, qatzip and QAT kernel patchsets
|
||||||
|
echo QATZip nulltest is PASS
|
||||||
|
exit 0
|
10
tests/tests.yml
Normal file
10
tests/tests.yml
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
---
|
||||||
|
- hosts: localhost
|
||||||
|
roles:
|
||||||
|
- role: standard-test-basic
|
||||||
|
tags:
|
||||||
|
- classic
|
||||||
|
tests:
|
||||||
|
- nulltest:
|
||||||
|
dir: .
|
||||||
|
run: nulltest.sh
|
Loading…
Reference in New Issue
Block a user