From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by dpdk.org (Postfix) with ESMTP id A68641B958 for ; Fri, 11 Jan 2019 02:08:47 +0100 (CET) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by fmsmga103.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 10 Jan 2019 17:08:46 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.56,463,1539673200"; d="scan'208";a="137264814" Received: from fmsmsx108.amr.corp.intel.com ([10.18.124.206]) by fmsmga001.fm.intel.com with ESMTP; 10 Jan 2019 17:08:46 -0800 Received: from shsmsx154.ccr.corp.intel.com (10.239.6.54) by FMSMSX108.amr.corp.intel.com (10.18.124.206) with Microsoft SMTP Server (TLS) id 14.3.408.0; Thu, 10 Jan 2019 17:08:46 -0800 Received: from shsmsx102.ccr.corp.intel.com ([169.254.2.63]) by SHSMSX154.ccr.corp.intel.com ([169.254.7.46]) with mapi id 14.03.0415.000; Fri, 11 Jan 2019 09:08:44 +0800 From: "Xu, Yanjie" To: "Ananyev, Konstantin" , "dev@dpdk.org" CC: "akhil.goyal@nxp.com" , "De Lara Guarch, Pablo" Thread-Topic: [PATCH v7 00/10] examples/ipsec-secgw: make app to use ipsec library Thread-Index: AQHUqBCs1hrkatqKcEuRLR5oc+Y8iaWpQgOw Date: Fri, 11 Jan 2019 01:08:44 +0000 Message-ID: <7C3BD4BA76EE544E86BA054EFFE7CB4454504875@shsmsx102.ccr.corp.intel.com> References: <1546547138-24965-2-git-send-email-konstantin.ananyev@intel.com> <1547034250-21252-1-git-send-email-konstantin.ananyev@intel.com> In-Reply-To: <1547034250-21252-1-git-send-email-konstantin.ananyev@intel.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-product: dlpe-windows dlp-version: 11.0.400.15 dlp-reaction: no-action x-titus-metadata-40: eyJDYXRlZ29yeUxhYmVscyI6IiIsIk1ldGFkYXRhIjp7Im5zIjoiaHR0cDpcL1wvd3d3LnRpdHVzLmNvbVwvbnNcL0ludGVsMyIsImlkIjoiZWEwMGFkODQtMzU3MS00ZmNiLTg4NmUtODE5MzljZjNmYzlkIiwicHJvcHMiOlt7Im4iOiJDVFBDbGFzc2lmaWNhdGlvbiIsInZhbHMiOlt7InZhbHVlIjoiQ1RQX05UIn1dfV19LCJTdWJqZWN0TGFiZWxzIjpbXSwiVE1DVmVyc2lvbiI6IjE3LjEwLjE4MDQuNDkiLCJUcnVzdGVkTGFiZWxIYXNoIjoiZlN1VExhWmgzXC9PWnRcL2Y0YzZwM0ZGYUZJbHNPek1lNjdHeHpIdkpmQUhtend0VTBEWEttSUI5UFUyT0Z6SjcwIn0= x-ctpclassification: CTP_NT x-originating-ip: [10.239.127.40] Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Subject: Re: [dpdk-dev] [PATCH v7 00/10] examples/ipsec-secgw: make app to use ipsec library X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 11 Jan 2019 01:08:48 -0000 The patch series latest versions be tested by yanjie xu, which work for cr= ypto and inline ipsec cases.=20 -----Original Message----- From: Ananyev, Konstantin=20 Sent: Wednesday, January 9, 2019 7:44 PM To: dev@dpdk.org Cc: akhil.goyal@nxp.com; De Lara Guarch, Pablo ; Ananyev, Konstantin Subject: [PATCH v7 00/10] examples/ipsec-secgw: make app to use ipsec libra= ry This patch series depends on the patch series: ipsec: new library for IPsec data-path processing http://patches.dpdk.org/p= atch/49410/ http://patches.dpdk.org/patch/49411/ http://patches.dpdk.org/patch/49412/ http://patches.dpdk.org/patch/49413/ http://patches.dpdk.org/patch/49414/ http://patches.dpdk.org/patch/49415/ http://patches.dpdk.org/patch/49416/ http://patches.dpdk.org/patch/49417/ http://patches.dpdk.org/patch/49418/ http://patches.dpdk.org/patch/49419/ to be applied first. v6 -> v7 Call drain_crypto_queue() for each processed port (reported/suggested by Akhil) Add ixgbe inline-ipsec test-case into functiona test scripts (for now ipv4 tunnel mode only) v5 -> v6 Address issues reported by Akhil: segfault when using lookaside-proto device HW IPv4 cksum offload not enabled by default crypto-dev dequeue() is called to often v4 -> v5 - Address Akhil comments: documentation update spell checks spacing etc. introduce rxoffload/txoffload parameters single SA for ipv6 update Makefile v3 -> v4 - fix few issues with the test scripts - update docs v2 -> v3 - add IPv6 cases into test scripts - fixes for IPv6 support - fixes for inline-crypto support - some code restructuring v1 -> v2 - Several bug fixes That series contians few bug-fixes and changes to make ipsec-secgw to utili= ze librte_ipsec library: - changes in the related data structures. - changes in the initialization code. - changes in the data-path code. - new command-line parameters to enable librte_ipsec codepath and related features. - test scripts to help automate ipsec-secgw functional testing. Note that right now by default current (non-librte_ipsec) code-path will be= used. User has to run application with new command-line option ('-l') to enable new codepath. The main reason for that: - current librte_ipsec doesn't support all ipsec algorithms and features that the app does. - allow users to run both versions in parallel for some time to figure out any functional or performance degradation with the new code. Test scripts were run with the following crypto devices: - aesni_mb - aesni_gcm - qat - ixgbe inline-ipsec (ipv4 tunnel mode) Konstantin Ananyev (10): examples/ipsec-secgw: allow user to disable some RX/TX offloads examples/ipsec-secgw: allow to specify neighbour mac address examples/ipsec-secgw: fix crypto-op might never get dequeued examples/ipsec-secgw: fix outbound codepath for single SA examples/ipsec-secgw: make local variables static examples/ipsec-secgw: fix inbound SA checking examples/ipsec-secgw: make app to use ipsec library examples/ipsec-secgw: make data-path to use ipsec library examples/ipsec-secgw: add scripts for functional test doc: update ipsec-secgw guide and relelase notes doc/guides/rel_notes/release_19_02.rst | 14 + doc/guides/sample_app_ug/ipsec_secgw.rst | 159 +++++- examples/ipsec-secgw/Makefile | 5 +- examples/ipsec-secgw/ipsec-secgw.c | 488 ++++++++++++++---- examples/ipsec-secgw/ipsec.c | 101 ++-- examples/ipsec-secgw/ipsec.h | 67 +++ examples/ipsec-secgw/ipsec_process.c | 357 +++++++++++++ examples/ipsec-secgw/meson.build | 6 +- examples/ipsec-secgw/parser.c | 91 ++++ examples/ipsec-secgw/parser.h | 8 +- examples/ipsec-secgw/sa.c | 263 +++++++++- examples/ipsec-secgw/sp4.c | 35 +- examples/ipsec-secgw/sp6.c | 35 +- examples/ipsec-secgw/test/common_defs.sh | 162 ++++++ examples/ipsec-secgw/test/data_rxtx.sh | 62 +++ examples/ipsec-secgw/test/linux_test4.sh | 63 +++ examples/ipsec-secgw/test/linux_test6.sh | 64 +++ examples/ipsec-secgw/test/run_test.sh | 80 +++ .../test/trs_aescbc_sha1_common_defs.sh | 69 +++ .../ipsec-secgw/test/trs_aescbc_sha1_defs.sh | 67 +++ .../test/trs_aescbc_sha1_esn_atom_defs.sh | 5 + .../test/trs_aescbc_sha1_esn_defs.sh | 66 +++ .../test/trs_aescbc_sha1_old_defs.sh | 5 + .../test/trs_aesgcm_common_defs.sh | 60 +++ examples/ipsec-secgw/test/trs_aesgcm_defs.sh | 76 +++ .../test/trs_aesgcm_esn_atom_defs.sh | 5 + .../ipsec-secgw/test/trs_aesgcm_esn_defs.sh | 66 +++ .../test/trs_aesgcm_inline_crypto_defs.sh | 6 + .../test/trs_aesgcm_inline_crypto_old_defs.sh | 5 + .../ipsec-secgw/test/trs_aesgcm_old_defs.sh | 5 + .../test/tun_aescbc_sha1_common_defs.sh | 68 +++ .../ipsec-secgw/test/tun_aescbc_sha1_defs.sh | 70 +++ .../test/tun_aescbc_sha1_esn_atom_defs.sh | 5 + .../test/tun_aescbc_sha1_esn_defs.sh | 70 +++ .../test/tun_aescbc_sha1_old_defs.sh | 5 + .../test/tun_aesgcm_common_defs.sh | 60 +++ examples/ipsec-secgw/test/tun_aesgcm_defs.sh | 80 +++ .../test/tun_aesgcm_esn_atom_defs.sh | 5 + .../ipsec-secgw/test/tun_aesgcm_esn_defs.sh | 70 +++ .../test/tun_aesgcm_inline_crypto_defs.sh | 6 + .../test/tun_aesgcm_inline_crypto_old_defs.sh | 5 + .../ipsec-secgw/test/tun_aesgcm_old_defs.sh | 5 + 42 files changed, 2785 insertions(+), 159 deletions(-) create mode 100644= examples/ipsec-secgw/ipsec_process.c create mode 100644 examples/ipsec-secgw/test/common_defs.sh create mode 100644 examples/ipsec-secgw/test/data_rxtx.sh create mode 100644 examples/ipsec-secgw/test/linux_test4.sh create mode 100644 examples/ipsec-secgw/test/linux_test6.sh create mode 100644 examples/ipsec-secgw/test/run_test.sh create mode 100644 examples/ipsec-secgw/test/trs_aescbc_sha1_common_defs.s= h create mode 100644 examples/ipsec-secgw/test/trs_aescbc_sha1_defs.sh create mode 100644 examples/ipsec-secgw/test/trs_aescbc_sha1_esn_atom_defs= .sh create mode 100644 examples/ipsec-secgw/test/trs_aescbc_sha1_esn_defs.sh create mode 100644 examples/ipsec-secgw/test/trs_aescbc_sha1_old_defs.sh create mode 100644 examples/ipsec-secgw/test/trs_aesgcm_common_defs.sh create mode 100644 examples/ipsec-secgw/test/trs_aesgcm_defs.sh create mode 100644 examples/ipsec-secgw/test/trs_aesgcm_esn_atom_defs.sh create mode 100644 examples/ipsec-secgw/test/trs_aesgcm_esn_defs.sh create mode 100644 examples/ipsec-secgw/test/trs_aesgcm_inline_crypto_defs= .sh create mode 100644 examples/ipsec-secgw/test/trs_aesgcm_inline_crypto_old_= defs.sh create mode 100644 examples/ipsec-secgw/test/trs_aesgcm_old_defs.sh create mode 100644 examples/ipsec-secgw/test/tun_aescbc_sha1_common_defs.s= h create mode 100644 examples/ipsec-secgw/test/tun_aescbc_sha1_defs.sh create mode 100644 examples/ipsec-secgw/test/tun_aescbc_sha1_esn_atom_defs= .sh create mode 100644 examples/ipsec-secgw/test/tun_aescbc_sha1_esn_defs.sh create mode 100644 examples/ipsec-secgw/test/tun_aescbc_sha1_old_defs.sh create mode 100644 examples/ipsec-secgw/test/tun_aesgcm_common_defs.sh create mode 100644 examples/ipsec-secgw/test/tun_aesgcm_defs.sh create mode 100644 examples/ipsec-secgw/test/tun_aesgcm_esn_atom_defs.sh create mode 100644 examples/ipsec-secgw/test/tun_aesgcm_esn_defs.sh create mode 100644 examples/ipsec-secgw/test/tun_aesgcm_inline_crypto_defs= .sh create mode 100644 examples/ipsec-secgw/test/tun_aesgcm_inline_crypto_old_= defs.sh create mode 100644 examples/ipsec-secgw/test/tun_aesgcm_old_defs.sh -- 2.17.1