From patchwork Tue Oct 4 12:55:00 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Power, Ciara" X-Patchwork-Id: 117309 Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id B2A21A0543; Tue, 4 Oct 2022 14:55:17 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 91CAE410D2; Tue, 4 Oct 2022 14:55:17 +0200 (CEST) Received: from mga07.intel.com (mga07.intel.com [134.134.136.100]) by mails.dpdk.org (Postfix) with ESMTP id 6F72940DFB for ; Tue, 4 Oct 2022 14:55:16 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1664888116; x=1696424116; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=GHXJPbpzobHHP+L95sVLgUWibsawBVQrSjUit/HkZps=; b=REyA1zS85l4a6T42XWZ3kIDLrCPnuTpo9jiDFMxvAoAIVTGP5Hdp1xfE 0F89UPlkC8zlHNqW+62WshCvnTzDZGHWjDtu0Qss0SRCsEQ8Yj1FPRWFe u4y3hFV5xj1QmJOTtv1XLdfDdfz0Oe95gGa/Gcsuet93TphTyNBGQNork zgz2k1Xy0lzRU1/IRuSdrnxqjhWj6dYPkeZx0iJIVoxRH29mRKC4s54DS uJIDKs+9EW5bwdHhUhPh5rXtjcuiqAlON9RJOixrpcteMa8ziwMJCkQ4Q v+kMlGGKABGRq1lw7kH5vZGa+rDv+0/zkk3jEV6MUs1A7vDaA+4L0Bj7F A==; X-IronPort-AV: E=McAfee;i="6500,9779,10490"; a="366996703" X-IronPort-AV: E=Sophos;i="5.93,157,1654585200"; d="scan'208";a="366996703" Received: from orsmga005.jf.intel.com ([10.7.209.41]) by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 04 Oct 2022 05:55:15 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10490"; a="799106330" X-IronPort-AV: E=Sophos;i="5.93,157,1654585200"; d="scan'208";a="799106330" Received: from silpixa00400355.ir.intel.com (HELO silpixa00400355.ger.corp.intel.com) ([10.237.222.163]) by orsmga005.jf.intel.com with ESMTP; 04 Oct 2022 05:55:13 -0700 From: Ciara Power To: Cc: dev@dpdk.org, kai.ji@intel.com, pablo.de.lara.guarch@intel.com, Ciara Power Subject: [PATCH v4 0/5] add remaining SGL support to AESNI_MB Date: Tue, 4 Oct 2022 12:55:00 +0000 Message-Id: <20221004125505.677795-1-ciara.power@intel.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20220812132334.75707-1-ciara.power@intel.com> References: <20220812132334.75707-1-ciara.power@intel.com> MIME-Version: 1.0 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Currently, the intel-ipsec-mb library only supports SGL for GCM and ChaCha20-Poly1305 algorithms through the JOB API. To add SGL support for other algorithms, a workaround approach is added in the AESNI_MB PMD. SGL feature flags can now be added to the PMD. This patchset also includes a fix for SGL wireless operations, session cleanup and session creation for sessionless operations. Some additional Snow3G SGL and AES tests are also added for various SGL input/output combinations that were not previously being tested. v4: Added error check when appending space for digest to buffer. v3: - Modified fix to reset sessions, and ensure values are then set for sessionless testcases. V2 fix just ensured the same values in session objects were reused, as they were not being reset, which was incorrect. - Reduced code duplication by adding a reusable function. - Changed int to uint64_t for total_len. v2: - Added documentation changes. - Added fix for sessionless cleanup. - Modified blockcipher tests to support various SGL types. - Added more SGL AES tests. - Small fixes. Ciara Power (5): test/crypto: fix wireless auth digest segment crypto/ipsec_mb: fix session creation for sessionless crypto/ipsec_mb: add remaining SGL support test/crypto: add OOP snow3g SGL tests test/crypto: add remaining blockcipher SGL tests app/test/test_cryptodev.c | 58 +++- app/test/test_cryptodev_aes_test_vectors.h | 345 +++++++++++++++++--- app/test/test_cryptodev_blockcipher.c | 50 +-- app/test/test_cryptodev_blockcipher.h | 2 + app/test/test_cryptodev_hash_test_vectors.h | 8 +- doc/guides/cryptodevs/aesni_mb.rst | 1 - doc/guides/cryptodevs/features/aesni_mb.ini | 4 + doc/guides/rel_notes/release_22_11.rst | 5 + drivers/crypto/ipsec_mb/ipsec_mb_private.h | 12 +- drivers/crypto/ipsec_mb/pmd_aesni_mb.c | 180 ++++++++-- lib/cryptodev/rte_cryptodev.c | 1 + 11 files changed, 549 insertions(+), 117 deletions(-)