Commit 82c8059a authored by Michal Berger's avatar Michal Berger Committed by Konrad Sztyber
Browse files

pkgdep/git: Bump QAT driver to latest release



This allows us to drop all of our custom patches.

Change-Id: Ie610f25d2849657bc2ad45e870eee13a704402fa
Signed-off-by: default avatarMichal Berger <michal.berger@intel.com>
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/24546


Reviewed-by: default avatarJim Harris <jim.harris@samsung.com>
Reviewed-by: default avatarKonrad Sztyber <konrad.sztyber@intel.com>
Tested-by: default avatarSPDK CI Jenkins <sys_sgci@intel.com>
parent 3a162b19
Loading
Loading
Loading
Loading
+1 −15
Original line number Diff line number Diff line
@@ -29,20 +29,6 @@ function install_qat() {

	tar -C "$GIT_REPOS/QAT" -xzof - < <(wget -O- "$DRIVER_LOCATION_QAT")

	if ge "$kernel_ver" 6.7.0; then
		patch --dir="$GIT_REPOS/QAT" -p1
	fi < "$rootdir/test/common/config/pkgdep/patches/qat/0001-phys_proc_id.patch"

	if ge "$kernel_ver" 6.8.0; then
		patch --dir="$GIT_REPOS/QAT" -p1 < \
			"$rootdir/test/common/config/pkgdep/patches/qat/0001-strlcpy-to-strscpy.patch"
		patch --dir="$GIT_REPOS/QAT" -p1 < \
			"$rootdir/test/common/config/pkgdep/patches/qat/0001-missing-prototypes.patch"
	fi

	patch --dir="$GIT_REPOS/QAT" -p1 \
		< "$rootdir/test/common/config/pkgdep/patches/qat/0001-no-vmlinux.patch"

	(cd "$GIT_REPOS/QAT" && sudo ./configure --enable-icp-sriov=host && sudo make install)

	if ! sudo service qat_service start; then
@@ -529,7 +515,7 @@ export GIT_REPO_QEMU
export GIT_REPO_QEMU_VFIO
: ${GIT_REPO_LIBISCSI=https://github.com/sahlberg/libiscsi}
export GIT_REPO_LIBISCSI
: ${DRIVER_LOCATION_QAT=https://downloadmirror.intel.com/795697/QAT.L.4.24.0-00005.tar.gz}
: ${DRIVER_LOCATION_QAT=https://downloadmirror.intel.com/828487/QAT.L.4.26.0-00008.tar.gz}
export DRIVER_LOCATION_QAT
: ${GIT_REPO_GIT=https://github.com/git/git/archive/v${GIT_VERSION}.tar.gz}
export GIT_REPO_GIT
+0 −281
Original line number Diff line number Diff line
Since 6.8.x, Linux kernel started to enforce -Wmissing-prototypes and
-Wmissing-declarations by the very default (these options are always
enabled). Try to untagle different QAT pieces to make sure all
prototypes for missing functions are available.

See: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=0fcb70851fbfea1776ae62f67c503fef8f0292b9
---
 quickassist/lookaside/access_layer/include/icp_adf_cfg.h | 4 ----
 .../src/common/compression/icp_sal_dc_err_sim.c          | 2 ++
 .../access_layer/src/common/crypto/sym/key/lac_sym_key.c | 2 ++
 .../access_layer/src/common/crypto/sym/lac_sym_api.c     | 7 +++++++
 .../access_layer/src/common/crypto/sym/lac_sym_dp.c      | 6 ++++++
 .../access_layer/src/common/crypto/sym/lac_sym_stats.c   | 1 +
 .../src/common/crypto/sym/qat/lac_sym_qat_hash.c         | 5 +++++
 .../access_layer/src/common/ctrl/sal_compression.c       | 1 +
 .../lookaside/access_layer/src/common/ctrl/sal_crypto.c  | 1 +
 .../access_layer/src/common/ctrl/sal_get_instances.c     | 9 +++++++++
 .../lookaside/access_layer/src/common/include/lac_sal.h  | 3 +++
 .../access_layer/src/common/utils/lac_buffer_desc.c      | 1 +
 .../lookaside/access_layer/src/common/utils/lac_mem.c    | 1 +
 .../access_layer/src/common/utils/lac_sw_responses.c     | 2 ++
 .../src/qat_kernel/src/lac_adf_interface_linux.c         | 4 ++++
 .../access_layer/src/qat_kernel/src/qat_transport.c      | 2 ++
 .../utilities/libusdm_drv/include/qae_mem_utils.h        | 2 ++
 17 files changed, 49 insertions(+), 4 deletions(-)

diff --git a/quickassist/lookaside/access_layer/include/icp_adf_cfg.h b/quickassist/lookaside/access_layer/include/icp_adf_cfg.h
index c0c1cff..58d1b75 100644
--- a/quickassist/lookaside/access_layer/include/icp_adf_cfg.h
+++ b/quickassist/lookaside/access_layer/include/icp_adf_cfg.h
@@ -97,10 +97,6 @@
 #endif
 /* Lowest Compatible Driver Version */
 #define ICP_CFG_LO_COMPATIBLE_DRV_KEY ("Lowest_Compat_Drv_Ver")
-/* Device node id, tells to which die the device is connected to */
-#define ADF_DEV_NODE_ID ("Device_NodeId")
-/* Device package id, this is accel_dev id */
-#define ADF_DEV_PKG_ID ("Device_PkgId")
 
 /*
  * icp_adf_cfgGetParamValue
diff --git a/quickassist/lookaside/access_layer/src/common/compression/icp_sal_dc_err_sim.c b/quickassist/lookaside/access_layer/src/common/compression/icp_sal_dc_err_sim.c
index d2826af..7d8fb27 100644
--- a/quickassist/lookaside/access_layer/src/common/compression/icp_sal_dc_err_sim.c
+++ b/quickassist/lookaside/access_layer/src/common/compression/icp_sal_dc_err_sim.c
@@ -88,6 +88,8 @@
 #include "dc_err_sim.h"
 #endif
 
+#include "icp_sal.h"
+
 #ifdef ICP_DC_ERROR_SIMULATION
 CpaStatus icp_sal_dc_simulate_error(Cpa8U numErrors, Cpa8S dcError)
 {
diff --git a/quickassist/lookaside/access_layer/src/common/crypto/sym/key/lac_sym_key.c b/quickassist/lookaside/access_layer/src/common/crypto/sym/key/lac_sym_key.c
index 51a1cd8..7a83ce0 100644
--- a/quickassist/lookaside/access_layer/src/common/crypto/sym/key/lac_sym_key.c
+++ b/quickassist/lookaside/access_layer/src/common/crypto/sym/key/lac_sym_key.c
@@ -102,6 +102,8 @@
 #include "lac_hooks.h"
 #include "lac_log.h"
 
+CpaInstanceHandle LacKey_GetHandle(CpaInstanceHandle instanceHandle_in);
+
 /* Number of statistics */
 #define LAC_KEY_NUM_STATS (sizeof(CpaCyKeyGenStats64) / sizeof(Cpa64U))
 
diff --git a/quickassist/lookaside/access_layer/src/common/crypto/sym/lac_sym_api.c b/quickassist/lookaside/access_layer/src/common/crypto/sym/lac_sym_api.c
index 8f3e1ac..f8105e1 100644
--- a/quickassist/lookaside/access_layer/src/common/crypto/sym/lac_sym_api.c
+++ b/quickassist/lookaside/access_layer/src/common/crypto/sym/lac_sym_api.c
@@ -147,6 +147,13 @@ void LacDp_WriteRingMsgOpt(CpaCySymDpOpData *pRequest,
 void getCtxSize(const CpaCySymSessionSetupData *pSessionSetupData,
                 Cpa32U *pSessionCtxSizeInBytes);
 
+void LacSync_GenBufListVerifyCb(void *pCallbackTag,
+                                CpaStatus status,
+                                CpaCySymOp operationType,
+                                void *pOpData,
+                                CpaBufferList *pDstBuffer,
+                                CpaBoolean opResult);
+
 /**
  *****************************************************************************
  * @ingroup LacSym
diff --git a/quickassist/lookaside/access_layer/src/common/crypto/sym/lac_sym_dp.c b/quickassist/lookaside/access_layer/src/common/crypto/sym/lac_sym_dp.c
index 4e9c1aa..5dee5f2 100644
--- a/quickassist/lookaside/access_layer/src/common/crypto/sym/lac_sym_dp.c
+++ b/quickassist/lookaside/access_layer/src/common/crypto/sym/lac_sym_dp.c
@@ -522,6 +522,9 @@ STATIC CpaStatus LacDp_EnqueueParamCheck(const CpaCySymDpOpData *pRequest)
  *
  *****************************************************************************/
 
+void LacDp_WriteRingMsgOpt(CpaCySymDpOpData *pRequest,
+                           icp_qat_fw_la_bulk_req_t *pCurrentQatMsg);
+
 void LacDp_WriteRingMsgOpt(CpaCySymDpOpData *pRequest,
                            icp_qat_fw_la_bulk_req_t *pCurrentQatMsg)
 {
@@ -650,6 +653,9 @@ void LacDp_WriteRingMsgOpt(CpaCySymDpOpData *pRequest,
  *
  *****************************************************************************/
 
+void LacDp_WriteRingMsgFull(CpaCySymDpOpData *pRequest,
+                            icp_qat_fw_la_bulk_req_t *pCurrentQatMsg);
+
 void LacDp_WriteRingMsgFull(CpaCySymDpOpData *pRequest,
                             icp_qat_fw_la_bulk_req_t *pCurrentQatMsg)
 {
diff --git a/quickassist/lookaside/access_layer/src/common/crypto/sym/lac_sym_stats.c b/quickassist/lookaside/access_layer/src/common/crypto/sym/lac_sym_stats.c
index ba62e19..c6a8289 100644
--- a/quickassist/lookaside/access_layer/src/common/crypto/sym/lac_sym_stats.c
+++ b/quickassist/lookaside/access_layer/src/common/crypto/sym/lac_sym_stats.c
@@ -90,6 +90,7 @@
 #include "lac_sym_qat.h"
 #include "lac_sal_types_crypto.h"
 #include "sal_statistics.h"
+#include "lac_sym_stats.h"
 
 /* Number of Symmetric Crypto statistics */
 #define LAC_SYM_NUM_STATS (sizeof(CpaCySymStats64) / sizeof(Cpa64U))
diff --git a/quickassist/lookaside/access_layer/src/common/crypto/sym/qat/lac_sym_qat_hash.c b/quickassist/lookaside/access_layer/src/common/crypto/sym/qat/lac_sym_qat_hash.c
index a6a920f..240279d 100644
--- a/quickassist/lookaside/access_layer/src/common/crypto/sym/qat/lac_sym_qat_hash.c
+++ b/quickassist/lookaside/access_layer/src/common/crypto/sym/qat/lac_sym_qat_hash.c
@@ -117,6 +117,11 @@ typedef struct lac_hash_blk_ptrs_optimised_s
 
 } lac_hash_blk_ptrs_optimised_t;
 
+void LacSymQat_HashOpHwBlockPtrsInit(
+    icp_qat_fw_auth_cd_ctrl_hdr_t *cd_ctrl,
+    void *pHwBlockBase,
+    lac_hash_blk_ptrs_optimised_t *pHashBlkPtrs);
+
 /**
  * This function calculates the pointers into the hash setup block
  * based on the control block
diff --git a/quickassist/lookaside/access_layer/src/common/ctrl/sal_compression.c b/quickassist/lookaside/access_layer/src/common/ctrl/sal_compression.c
index f666415..2237322 100644
--- a/quickassist/lookaside/access_layer/src/common/ctrl/sal_compression.c
+++ b/quickassist/lookaside/access_layer/src/common/ctrl/sal_compression.c
@@ -80,6 +80,7 @@
 #include "Osal.h"
 
 /* ADF includes */
+#include "adf_cfg_strings.h"
 #include "icp_adf_init.h"
 #include "icp_adf_transport.h"
 #include "icp_accel_devices.h"
diff --git a/quickassist/lookaside/access_layer/src/common/ctrl/sal_crypto.c b/quickassist/lookaside/access_layer/src/common/ctrl/sal_crypto.c
index 7ba7c1b..65223a6 100644
--- a/quickassist/lookaside/access_layer/src/common/ctrl/sal_crypto.c
+++ b/quickassist/lookaside/access_layer/src/common/ctrl/sal_crypto.c
@@ -96,6 +96,7 @@
 #include "Osal.h"
 
 /* ADF includes */
+#include "adf_cfg_strings.h"
 #include "icp_adf_init.h"
 #include "icp_adf_transport.h"
 #include "icp_accel_devices.h"
diff --git a/quickassist/lookaside/access_layer/src/common/ctrl/sal_get_instances.c b/quickassist/lookaside/access_layer/src/common/ctrl/sal_get_instances.c
index e28cbde..27b2bfc 100644
--- a/quickassist/lookaside/access_layer/src/common/ctrl/sal_get_instances.c
+++ b/quickassist/lookaside/access_layer/src/common/ctrl/sal_get_instances.c
@@ -101,6 +101,15 @@
 #include "lac_sal_types.h"
 
 #ifndef ICP_DC_ONLY
+
+CpaStatus Lac_GetCyInstancesByType(
+    const CpaAccelerationServiceType accelerationServiceType,
+    Cpa16U numInstances,
+    CpaInstanceHandle *pInstances);
+
+CpaStatus Lac_GetCyNumInstancesByType(
+    const CpaAccelerationServiceType accelerationServiceType,
+    Cpa16U *pNumInstances);
 /**
  ******************************************************************************
  * @ingroup SalCtrl
diff --git a/quickassist/lookaside/access_layer/src/common/include/lac_sal.h b/quickassist/lookaside/access_layer/src/common/include/lac_sal.h
index 74a8ba2..e85d21b 100644
--- a/quickassist/lookaside/access_layer/src/common/include/lac_sal.h
+++ b/quickassist/lookaside/access_layer/src/common/include/lac_sal.h
@@ -698,6 +698,9 @@ CpaBoolean SalCtrl_IsServiceEnabled(Cpa32U enabled_services,
 CpaBoolean SalCtrl_IsServiceSupported(icp_accel_dev_t *device,
                                       sal_service_type_t service);
 
+CpaStatus SalCtrl_GetSupportedServices(icp_accel_dev_t *device,
+                                       Cpa32U enabled_services);
+
 #ifndef ICP_DC_ONLY
 /**
  *******************************************************************************
diff --git a/quickassist/lookaside/access_layer/src/common/utils/lac_buffer_desc.c b/quickassist/lookaside/access_layer/src/common/utils/lac_buffer_desc.c
index 630bd0b..8a4a4fd 100644
--- a/quickassist/lookaside/access_layer/src/common/utils/lac_buffer_desc.c
+++ b/quickassist/lookaside/access_layer/src/common/utils/lac_buffer_desc.c
@@ -79,6 +79,7 @@
 #include "icp_adf_init.h"
 #include "lac_list.h"
 #include "lac_sal_types.h"
+#include "lac_buffer_desc.h"
 #ifndef ICP_DC_DYN_NOT_SUPPORTED
 #include "icp_buffer_desc.h"
 #endif
diff --git a/quickassist/lookaside/access_layer/src/common/utils/lac_mem.c b/quickassist/lookaside/access_layer/src/common/utils/lac_mem.c
index 3e41ece..82817b6 100644
--- a/quickassist/lookaside/access_layer/src/common/utils/lac_mem.c
+++ b/quickassist/lookaside/access_layer/src/common/utils/lac_mem.c
@@ -92,6 +92,7 @@
 #include "lac_sym_qat.h"
 #include "icp_qat_fw_la.h"
 #include "lac_sal_types_crypto.h"
+#include "icp_sal_iommu.h"
 
 #ifdef KERNEL_SPACE
 #include "qdm.h"
diff --git a/quickassist/lookaside/access_layer/src/common/utils/lac_sw_responses.c b/quickassist/lookaside/access_layer/src/common/utils/lac_sw_responses.c
index 6300876..b0c06e1 100644
--- a/quickassist/lookaside/access_layer/src/common/utils/lac_sw_responses.c
+++ b/quickassist/lookaside/access_layer/src/common/utils/lac_sw_responses.c
@@ -90,6 +90,8 @@
 #define ASYM_NOT_SUPPORTED
 #endif
 
+#include "lac_sw_responses.h"
+
 static OsalAtomic lac_sw_resp_num_pools_busy = ATOMIC_INIT(0);
 /**< @ingroup LacSwResponses
  * Number of busy memory pools
diff --git a/quickassist/lookaside/access_layer/src/qat_kernel/src/lac_adf_interface_linux.c b/quickassist/lookaside/access_layer/src/qat_kernel/src/lac_adf_interface_linux.c
index 75209ac..577046a 100644
--- a/quickassist/lookaside/access_layer/src/qat_kernel/src/lac_adf_interface_linux.c
+++ b/quickassist/lookaside/access_layer/src/qat_kernel/src/lac_adf_interface_linux.c
@@ -70,6 +70,8 @@
 #include "icp_adf_init.h"
 #include "lac_sal_ctrl.h"
 #include "lac_log.h"
+#include "icp_adf_accel_mgr.h"
+#include "icp_adf_cfg.h"
 
 STATIC subservice_registation_handle_t *salService = NULL;
 STATIC struct service_hndl adfService = { 0 };
@@ -78,6 +80,8 @@ STATIC icp_accel_dev_t *adfDevicesHead = NULL;
 STATIC ICP_MUTEX adfDevicesLock;
 #define ADF_EVENT_TIMEOUT 10000
 
+int adf_module_load(void);
+void adf_module_unload(void);
 /*
  * Need to keep track of what device is currently in error state
  */
diff --git a/quickassist/lookaside/access_layer/src/qat_kernel/src/qat_transport.c b/quickassist/lookaside/access_layer/src/qat_kernel/src/qat_transport.c
index 8a32f5c..4ee1d36 100644
--- a/quickassist/lookaside/access_layer/src/qat_kernel/src/qat_transport.c
+++ b/quickassist/lookaside/access_layer/src/qat_kernel/src/qat_transport.c
@@ -69,6 +69,8 @@
 #include "icp_adf_init.h"
 #include "icp_adf_transport_dp.h"
 #include "icp_adf_transport.h"
+#include "icp_sal_poll.h"
+#include "icp_adf_poll.h"
 
 char *icp_module_name = "ADF_U2K_SHIM";
 
diff --git a/quickassist/utilities/libusdm_drv/include/qae_mem_utils.h b/quickassist/utilities/libusdm_drv/include/qae_mem_utils.h
index 214831c..91543bd 100644
--- a/quickassist/utilities/libusdm_drv/include/qae_mem_utils.h
+++ b/quickassist/utilities/libusdm_drv/include/qae_mem_utils.h
@@ -661,6 +661,8 @@ void qaeIOMMUDetachDev(void *dev);
  ****************************************************************************/
 void printMemAllocations(void);
 
+int handle_other_ioctls(uint32_t cmd);
+
 #ifndef __KERNEL__
 #ifdef ICP_WITHOUT_THREAD
 #define mem_mutex_lock(x) (0)
-- 
+0 −35
Original line number Diff line number Diff line
Use of KBUILD_BUILTIN forces kernel's Makefile to attempt to rebuild
the vmlinux.o as a dependency for the modpost target. This, in most
cases, will fail, since the usual kernel headers setup won't provide
proper environment for such build to succeed.

Under < make-4.4.1, this failure was silently falling through, however,
the make-4.4.1 fails the entire build immediately when the attempt to
build the kernel_space/libosal.a lib is actually made.

In both cases, this error can be seen in the output:

make[4]: *** No rule to make target 'vmlinux.o', needed by 'modpost'.  Stop.

To workaround this, pass single-build parameter which will null and void
the vmlinux.o target.

---
 .../build_system/build_files/OS/linux_2.6_kernel_space_rules.mk | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/quickassist/build_system/build_files/OS/linux_2.6_kernel_space_rules.mk b/quickassist/build_system/build_files/OS/linux_2.6_kernel_space_rules.mk
index e572641..75193cc 100644
--- a/quickassist/build_system/build_files/OS/linux_2.6_kernel_space_rules.mk
+++ b/quickassist/build_system/build_files/OS/linux_2.6_kernel_space_rules.mk
@@ -72,7 +72,7 @@ endif
 
 $(LIB_STATIC): dirs
 	@echo 'Creating static library ${LIB_STATIC}'; \
-	$(MAKE) -C $(KERNEL_SOURCE_ROOT)/ M=$(PWD) obj-m="" KBUILD_BUILTIN=1; \
+	$(MAKE) -C $(KERNEL_SOURCE_ROOT)/ M=$(PWD) obj-m="" KBUILD_BUILTIN=1 single-build=1; \
 	echo 'Copying outputs';\
 	test -f lib.a  &&  (ar -t lib.a | xargs ar -rcsD $(LIB_STATIC)); \
 	test -f $(LIB_STATIC)  &&  mv -f $(LIB_STATIC) $($(PROG_ACY)_FINAL_OUTPUT_DIR)/$(LIB_STATIC); \
-- 
+0 −24
Original line number Diff line number Diff line
See: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=02fb601d27
---
 quickassist/qat/drivers/crypto/qat/qat_common/adf_ctl_drv.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/quickassist/qat/drivers/crypto/qat/qat_common/adf_ctl_drv.c b/quickassist/qat/drivers/crypto/qat/qat_common/adf_ctl_drv.c
index c961930..8fe27c5 100644
--- a/quickassist/qat/drivers/crypto/qat/qat_common/adf_ctl_drv.c
+++ b/quickassist/qat/drivers/crypto/qat/qat_common/adf_ctl_drv.c
@@ -671,10 +671,10 @@ static int adf_get_dev_node_id(struct pci_dev *pdev)
 		/* if there is only one physical processor don't need
 		 * to do any further calculations
 		 */
-		if (c->phys_proc_id == 0) {
+		if (c->topo.pkg_id == 0) {
 			node_id = 0;
 		} else {
-			bus_per_cpu = MAX_PCI_BUS / (c->phys_proc_id + 1);
+			bus_per_cpu = MAX_PCI_BUS / (c->topo.pkg_id + 1);
 			if (bus_per_cpu != 0)
 				node_id = pdev->bus->number / bus_per_cpu;
 		}
-- 
+0 −533

File deleted.

Preview size limit exceeded, changes collapsed.