[PATCH 0/8] crypto: qat - add rate limiting (RL) support for GEN6 devices

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This patch set introduces and extends the rate limiting (RL) infrastructure
in the Intel QAT (QuickAssist Technology) driver, with a focus on enabling
RL support for QAT GEN6 devices and enhancing support for decompression
service.

The series begins by enforcing service validation in the RL sysfs API to
prevent misconfiguration. It then adds decompression (DECOMP) service,
including its enumeration and visibility via sysfs. Subsequently, service
enums are refactored and consolidated to remove duplication and clearly
differentiate between base and extended services.

Further patches improve modularity by relocating is_service_enabled() into
the appropriate C file, introduce a flexible mechanism using
adf_rl_get_num_svc_aes() and get_svc_slice_cnt() APIs, and implement these
for both GEN4 and GEN6 platforms. Additionally, the compression slice count
(cpr_cnt) is now cached for use within the RL infrastructure.

Finally, the series enables full RL support for GEN6 by initializing the
rl_data and implementing platform-specific logic to query acceleration
engines and slice counts for QAT GEN6 hardware.

Summary of Changes:

Patch #1 Validates service in RL sysfs API.
Patch #2 Adds decompression (DECOMP) service to RL to enable SLA support for
	 DECOMP where supported (e.g., GEN6).
Patch #3 Consolidated the service enums.
Patch #4 Relocates the is_service_enabled() function to improve modularity and
	 aligns code structure.
Patch #5 Adds adf_rl_get_num_svc_aes() to enable querying number of engines per
	 service.
Patch #6 Adds get_svc_slice_cnt() to device data to generalizes AE count lookup.
Patch #7 Adds compression slice count tracking.
Patch #8 Enables RL for GEN6.

Suman Kumar Chakraborty (8):
  crypto: qat - validate service in rate limiting sysfs api
  crypto: qat - add decompression service for rate limiting
  crypto: qat - consolidate service enums
  crypto: qat - relocate service related functions
  crypto: qat - add adf_rl_get_num_svc_aes() in rate limiting
  crypto: qat - add get_svc_slice_cnt() in device data structure
  crypto: qat - add compression slice count for rate limiting
  crypto: qat - enable rate limiting feature for GEN6 devices

 Documentation/ABI/testing/sysfs-driver-qat_rl | 14 +--
 .../intel/qat/qat_420xx/adf_420xx_hw_data.c   |  9 +-
 .../intel/qat/qat_4xxx/adf_4xxx_hw_data.c     |  9 +-
 .../intel/qat/qat_6xxx/adf_6xxx_hw_data.c     | 77 ++++++++++++++++-
 .../intel/qat/qat_6xxx/adf_6xxx_hw_data.h     | 20 +++++
 .../intel/qat/qat_common/adf_accel_devices.h  |  2 +
 .../intel/qat/qat_common/adf_cfg_services.c   | 40 ++++++++-
 .../intel/qat/qat_common/adf_cfg_services.h   | 12 ++-
 .../intel/qat/qat_common/adf_gen4_hw_data.c   | 42 ++++++++-
 .../intel/qat/qat_common/adf_gen4_hw_data.h   |  3 +
 drivers/crypto/intel/qat/qat_common/adf_rl.c  | 86 ++++++-------------
 drivers/crypto/intel/qat/qat_common/adf_rl.h  | 11 +--
 .../intel/qat/qat_common/adf_rl_admin.c       |  1 +
 .../intel/qat/qat_common/adf_sysfs_rl.c       | 21 +++--
 14 files changed, 251 insertions(+), 96 deletions(-)


base-commit: db689623436f9f8b87c434285a4bdbf54b0f86d2
-- 
2.40.1





[Index of Archives]     [Kernel]     [Gnu Classpath]     [Gnu Crypto]     [DM Crypt]     [Netfilter]     [Bugtraq]
  Powered by Linux