[PATCH v1] crypto/qat: fix struct alignment

Brian Dooley brian.dooley at intel.com
Fri Jun 30 13:30:40 CEST 2023


The qat_sym_session struct variable alignment was causing a segfault.
AES expansion keys require 16-byte alignment. Added __rte_aligned to
the expansion keys.

Fixes: ca0ba0e48129 ("crypto/qat: default to IPsec MB for computations")

Signed-off-by: Brian Dooley <brian.dooley at intel.com>
---
 drivers/crypto/qat/qat_sym_session.h | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/crypto/qat/qat_sym_session.h b/drivers/crypto/qat/qat_sym_session.h
index 68cf3eaaf4..674a62ee12 100644
--- a/drivers/crypto/qat/qat_sym_session.h
+++ b/drivers/crypto/qat/qat_sym_session.h
@@ -142,10 +142,10 @@ struct qat_sym_session {
 	qat_sym_build_request_t build_request[2];
 #ifndef RTE_QAT_OPENSSL
 	IMB_MGR *mb_mgr;
-#endif
-	uint64_t expkey[4*15];
-	uint32_t dust[4*15];
+	uint64_t expkey[4*15] __rte_aligned(16);
+	uint32_t dust[4*15] __rte_aligned(16);
 	uint8_t docsis_key_len;
+#endif
 };
 
 int
-- 
2.25.1



More information about the dev mailing list