Skip to content

Commit 259b5da

Browse files
jdschuetgcabiddu
authored andcommitted
Update README and INSTALL docs for 21.11 Release
Update documentation for QATlib 21.11 release. Signed-off-by: Schuetze, Joel D <[email protected]> Signed-off-by: Fiona Trahe <[email protected]>
1 parent 3db9a03 commit 259b5da

File tree

2 files changed

+61
-24
lines changed

2 files changed

+61
-24
lines changed

INSTALL

Lines changed: 26 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -176,9 +176,15 @@ Compilation and installation - quickstart instructions
176176
# into your home dir
177177
sudo su -l $USER
178178

179+
# Compression sample code expects to find data files at a known location,
180+
# so call the samples-install target to put them there
181+
sudo make samples-install
182+
179183
# Run! (takes several minutes to complete)
180-
./cpa_sample_code
184+
cpa_sample_code
181185

186+
# no need to leave the samples installed, so cleanup
187+
sudo make sample-uninstall
182188

183189
===============================================================================
184190

@@ -269,6 +275,10 @@ Compilation and installation - detailed instructions
269275
./quickassist/lookaside/access_layer/src/sample_code/README.txt
270276

271277
Examples:
278+
Compression sample code expects to find data files at a known
279+
location, so call the samples-install target to put them there:
280+
sudo make samples-install
281+
272282
Run all performance tests:
273283
./cpa_sample_code
274284

@@ -293,8 +303,8 @@ Compilation and installation - detailed instructions
293303
6) Remove the libraries and cleanup
294304

295305
Uninstall:
306+
sudo make sample-uninstall #if samples installed
296307
sudo systemctl stop qat
297-
sudo systemctl disable qat
298308
sudo make uninstall
299309

300310
Clean up:
@@ -431,6 +441,20 @@ Common issues
431441
Likely cause: QAT driver in Linux kernel before v5.16 doesn't support
432442
compression service. Upgrade to a later kernel.
433443

444+
Issue: "Could not open corpus file: /usr/local/share/qat/calgary"
445+
seen when running compression sample code.
446+
Likely cause: sample code data files not installed at the expected location
447+
Run: sudo make samples-install
448+
449+
Issue: Error "memFreeNUMA:1313 Address to be freed cannot be NULL"
450+
seen when running cpa_sample_code.
451+
Also dmesg | grep MEMLOCK shows messages like this:
452+
"hvfio_pin_pages_remote: RLIMIT_MEMLOCK (204800000) exceeded"
453+
Likely cause: Not enough locked memory. Increase the amount of locked
454+
memory for your user – see instructions above.
455+
After updating re-login so the changes take effect:
456+
sudo su -l $USER
457+
434458
===============================================================================
435459

436460

README.md

Lines changed: 35 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@
2020

2121
| Date | Doc Revision | Version | Details |
2222
|----------|:-------------:|------:|:------|
23+
| November 2021 | 005 | 21.11 | - Added qatlib-tests rpm package<br>- Added option to configure script to skip building sample code |
2324
| August 2021 | 004 | 21.08 | - Added support for deflate compression - Compress and Verify (CnV) and Compress and Verify and Recover (CnVnR)<br>- Added Physical Function to Virtual Function (PFVF) communication support |
2425
| May 2021 | 003 | 21.05 | - Added support for AES-CCM 192/265<br>- Added support for SHA3-224/384/512 (no partials support)<br>- Added support for ChaCha20-Poly1305<br>- Added support for PKE 8K (RSA, DH, ModExp, ModInv)<br>- Fixed device enumeration on different nodes<br>- Fixed pci_vfio_set_command for 32 bit builds |
2526
| November 2020 | 002 | 20.10 | - Fixed service stopping during uninstallation<br>- Fixed "Cannot open /sys/kernel/iommu_groups/vfio/devices/" error<br>- Fixes based on static code analysis<br>- Fixes based on secure code reviews<br>- Refactored logging mechanism<br>- Updated library versioning scheme<br>- Improvements to make install target<br>- Fix so service file installed in /usr/lib64 can be properly detected<br>- Remove execute permissions from non-executable files<br>- Clarified documentation of licensing<br>- Removed libudev dependency from the package<br>- Removed OpenSSL/libcrypto extracts, instead link against system OpenSSL/libcrypto |
@@ -115,7 +116,7 @@ The following assumptions are made concerning the deployment environment:
115116
## Examples
116117
Example applications that showcase usage of the QAT APIs are included in the
117118
package (quickassist/lookaside/access_layer/src/sample_code).
118-
Please refer to [Intel® QuickAssist Technology API Programmer's Guide](https:/01.org/sites/default/files/downloads//330684-009-intel-qat-api-programmers-guide.pdf).
119+
Please refer to [Intel® QuickAssist Technology API Programmer's Guide](https://01.org/sites/default/files/downloads/330684-009-intel-qat-api-programmers-guide.pdf).
119120

120121
## Open Issues
121122
Known issues relating to the Intel® QAT software are described
@@ -138,19 +139,19 @@ where: \<Component\> is one of the following:
138139

139140
| Issue ID | Description |
140141
|-------------|------------|
141-
| QATE-3241 | [CY - cpaCySymPerformOp when used with parameter checking may reveal the amount of padding.](#qate-3241) |
142-
| QATE-41707 | [CY - Incorrect digest returned when performing a plain hash operation on input data of size 4GB or larger. ](#qate-41707) |
143-
| QATE-74786 | [DC - cpaDcDeflateCompressBound API returns incorrect output buffer size when input size exceeds 477218588 bytes.](#qate-74786) |
142+
| QATE-3241 | [CY - cpaCySymPerformOp when used with parameter checking may reveal the amount of padding.](#qate-3241) |
143+
| QATE-41707 | [CY - Incorrect digest returned when performing a plain hash operation on input data of size 4GB or larger.](#qate-41707) |
144144
| QATE-76073 | [GEN - If PF device configuration is modified without restarting qatmgr, undefined behavior may occur.](#qate-76073) |
145-
| QATE-76698 | [GEN- Multi-process applications running in guest will fail when running with default Policy settings .](#qate-76698) |
145+
| QATE-76698 | [GEN- Multi-process applications running in guest will fail when running with default Policy settings.](#qate-76698) |
146+
| QATE-12241 | [CY - TLS1.2 with secret key lengths greater than 64 are not supported.](#qate-12241) |
146147

147148
## QATE-3241
148149
| Title | CY - cpaCySymPerformOp when used with parameter checking may reveal the amount of padding. |
149150
|----------|:-------------
150151
| Reference # | QATE-3241 |
151152
| Description | When Performing a CBC Decryption as a chained request using cpaCySymPerformOp it is necessary to pass a length of the data to MAC (messageLenToHashInBytes). With ICP_PARAM_CHECK enabled, this checks the length of data to MAC is valid and, if not, it aborts the whole operation and outputs an error on stderr. |
152153
| Implication | The length of the data to MAC is based on the amount of padding. This should remain private and not be revealed. The issue is not observed when the length is checked in constant time before passing the value to the API. This is done by OpenSSL. |
153-
| Resolution | 1. Build without ICP_PARAM_CHECK, but this opens the risk of buffer overrun. <BR> 2. Validate the length before using the API. |
154+
| Resolution | 1. Build without ICP_PARAM_CHECK, but this opens the risk of buffer overrun. <BR> 2. Validate the length before using the API. |
154155
| Affected OS | Linux |
155156
| Driver/Module | CPM-IA - Crypto |
156157

@@ -165,21 +166,11 @@ where: \<Component\> is one of the following:
165166
| Affected OS | Linux |
166167
| Driver/Module | CPM-IA - Crypto |
167168

168-
## QATE-74786
169-
| Title | DC - cpaDcDeflateCompressBound API returns incorrect output buffer size when input size exceeds 477218588 bytes. |
170-
|----------|:-------------
171-
| Reference # | QATE-74786 |
172-
| Description | When cpaDcDeflateCompressBound API is called with input size > 477218588 bytes incorrect buffer size is returned. For any buffer input size, the API should not produce output buffer size greater than the max limit (4 GB). |
173-
| Implication | Incorrect output buffer size is returned instead of error. |
174-
| Resolution | Ensure input buffer sizes are less than maximum limit size (477218588 bytes). |
175-
| Affected OS | Linux |
176-
| Driver/Module | CPM-IA - Data Compression |
177-
178169
## QATE-76073
179170
| Title | GEN - If PF device configuration is modified without restarting qatmgr, undefined behavior may occur. |
180171
|----------|:-------------
181172
| Reference # | QATE-76073 |
182-
| Description | When qatmgr is initialized, it reads the current configuration of the PF device. If the PF device configuration is modified without restarting the qatmgr, the updated device configuration is not comprehended by qatmgr. |
173+
| Description | When qatmgr is initialized, it reads the current configuration of the PF device. If the PF device configuration is modified without restarting the qatmgr, the updated device configuration is not comprehended by qatmgr. |
183174
| Implication | Undefined behavior may occur. |
184175
| Resolution | If PF device is reconfigured and reloaded, ensure to stop and start the qatmgr. |
185176
| Affected OS | Linux |
@@ -189,19 +180,31 @@ where: \<Component\> is one of the following:
189180
| Title | GEN - Multi-process applications running in guest will fail when running with default Policy settings. |
190181
|----------|:-------------
191182
| Reference # | QATE-76698 |
192-
| Description | The default Policy setting results in process receiving all available VFs allocated to guest operating system. In the case of a multi-process application, failures will be observed as all available QAT resources are consumed by the first process. |
183+
| Description | The default Policy setting results in process receiving all available VFs allocated to guest operating system. In the case of a multi-process application, failures will be observed as all available QAT resources are consumed by the first process. |
193184
| Implication | Multi-process applications running in guest OS will fail with default Policy settings. |
194185
| Resolution | If more than 1 process is needed in a guest OS, set POLICY=n (where n>0) in /etc/sysconfig/qat and restart qatmgr. The process will then receive n VFs. |
195186
| Affected OS | Linux |
196187
| Driver/Module | CPM-IA - General |
197188

189+
## QATE-12241
190+
| Title | CY - TLS1.2 with secret key lengths greater than 64 are not supported |
191+
|----------|:-------------
192+
| Reference # | QATE-12241 |
193+
| Description | Algorithms, as with Diffie-Hellman using 8K parameters that can use a secret key length greater than 64 bytes is not supported.|
194+
| Implication | Key generation would fail for TLS1.2 algorithms that use more than 64 bytes secret length keys. |
195+
| Resolution | For TLS1.2 algorithms, with secret keys greater than 64 bytes, use software for key generation. This issue will be addressed in a future release, which will allow TLS1.2 algorithms with secret keys greater than 64 bytes for key generation to succeed. |
196+
| Affected OS | Linux |
197+
| Driver/Module | CPM-IA - Crypto |
198+
199+
198200
## Resolved Issues
199201
Resolved issues relating to the Intel® QAT software are described
200202
in this section.
201203

202204
| Issue ID | Description |
203205
|-------------|------------|
204-
| QATE-76846 | [GEN - Forking and re-initialising use-cases do not work](#qate-76846) |
206+
| QATE-76846 | [GEN - Forking and re-initialising use-cases do not work](#qate-76846) |
207+
| QATE-78459 | [DC - cpaDcDeflateCompressBound API returns incorrect output buffer size when input size exceeds 477218588 bytes.](#qate-74786) |
205208

206209
## QATE-76846
207210
| Title | GEN - Forking and re-initialising use-cases do not work |
@@ -213,6 +216,16 @@ in this section.
213216
| Affected OS | Linux |
214217
| Driver/Module | CPM-IA - General |
215218

219+
## QATE-78459
220+
| Title | DC - cpaDcDeflateCompressBound API returns incorrect output buffer size when input size exceeds 477218588 bytes. |
221+
|----------|:-------------
222+
| Reference # | QATE-74786 |
223+
| Description | When cpaDcDeflateCompressBound API is called with input size > 477218588 bytes incorrect buffer size is returned. For any buffer input size, the API should not produce output buffer size greater than the max limit (4 GB). |
224+
| Implication | Incorrect output buffer size is returned instead of error. |
225+
| Resolution | The issue is not present in qatlib. |
226+
| Affected OS | Linux |
227+
| Driver/Module | CPM-IA - Data Compression |
228+
216229
## Licensing
217230
* This product is released under the BSD-3-Clause.
218231

@@ -229,14 +242,14 @@ Copyright &copy; 2016-2021, Intel Corporation. All rights reserved.
229242

230243
| Term | Description |
231244
|----------|:-------------:|
232-
| API | Application Programming Interface |
233-
| BIOS | Basic Input/Output System |
245+
| API | Application Programming Interface |
246+
| BIOS | Basic Input/Output System |
234247
| BSD | Berkeley Standard Distribution |
235248
| CY | Cryptographic |
236249
| CnV | Compress and Verify |
237250
| CnVnR | Compress and Verify and Recover |
238251
| DC | Compression |
239-
| DMA | Direct Memory Access |
252+
| DMA | Direct Memory Access |
240253
| EFI | Extensible Firmware Interface |
241254
| FW | Firmware |
242255
| GPL | General Public License |

0 commit comments

Comments
 (0)