From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 08815A0519; Fri, 3 Jul 2020 09:47:46 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 3313F1DA16; Fri, 3 Jul 2020 09:47:45 +0200 (CEST) Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by dpdk.org (Postfix) with ESMTP id 8D9F41DA14 for ; Fri, 3 Jul 2020 09:47:42 +0200 (CEST) IronPort-SDR: rBJaXS+/IMpHx1XgdeSfS3UKgxZfoA+6DdhnbWqi8J7dnDwKdapYlXPYjmebItJkifYcLDnOWd f8oOEKvxSAPg== X-IronPort-AV: E=McAfee;i="6000,8403,9670"; a="165177687" X-IronPort-AV: E=Sophos;i="5.75,307,1589266800"; d="scan'208";a="165177687" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga005.jf.intel.com ([10.7.209.41]) by fmsmga101.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 03 Jul 2020 00:47:41 -0700 IronPort-SDR: dOH5ZvtcOdJMod+AVttY7uu0fRGErFw/tRz/zcm5RFBWSM7HkMS+LrOcdVjmgO+DzXyiq4yuNo XrbiXsAbDkUQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.75,307,1589266800"; d="scan'208";a="455813791" Received: from orsmsx102.amr.corp.intel.com ([10.22.225.129]) by orsmga005.jf.intel.com with ESMTP; 03 Jul 2020 00:47:41 -0700 Received: from orsmsx154.amr.corp.intel.com (10.22.226.12) by ORSMSX102.amr.corp.intel.com (10.22.225.129) with Microsoft SMTP Server (TLS) id 14.3.439.0; Fri, 3 Jul 2020 00:47:40 -0700 Received: from ORSEDG002.ED.cps.intel.com (10.7.248.5) by ORSMSX154.amr.corp.intel.com (10.22.226.12) with Microsoft SMTP Server (TLS) id 14.3.439.0; Fri, 3 Jul 2020 00:47:40 -0700 Received: from NAM10-DM6-obe.outbound.protection.outlook.com (104.47.58.106) by edgegateway.intel.com (134.134.137.101) with Microsoft SMTP Server (TLS) id 14.3.439.0; Fri, 3 Jul 2020 00:47:40 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ZE1EQb7gAlEeBjbIGIIbGhOVTp3R0SZ8VDZTOgvNIDaWZiC9tzL9LPZztSwbiEb3W5RrJowVrgRkLzHbqGvt2+YYfry4EVQpDscVrOnTnpiCAyqPdfOhR3fSRkqybNS8dKeS+wcIP+xJR43efBPPuA+jk2wgjqfwpxrGswO8BBgC+AmVxhYKvTTzVZMzBQ9gvhSxyo5SXNopWtkcevLF76biahz1z++zf8+43qV8mQWLeiloNmieCO2lYasSSqDMdjRaBITadHeqICfCyQvA7OcnEnBHW0rT4aMtdAE2yi7M321InFJCdO/Z/Sto+7+/nQqo1ezTh0QNodmxN3LxyA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=z3TWKiqI6QO/csU5dQjM7QfaJsDJK3O2wMcclFadEpc=; b=UzRgNeh0VVeNdWhK48ModHTE7uogeLbplkOuL4jMVGzfcO6TaPNi288SKH8F9REXuRcQYveYUFYUn6mqyz2nQQssjYtb4I3FyvNdWam9krNo72PCQmmK/WBwmIiK6f31zi+GzkzJbrSr6P1aQ68bN69lQHKxmOYY/IUf13WUMQzwUdb62FsQH5ASFhQzSR6/v21iVvJrqcKDwLNOmqA8Ox/hMaFLfwTm0P28akCL70b0st1GLDsSed/COwUgI6AePWrH0IUld5VhDq3pni5FC/tnp3gVigMWVxczdmV/eRf/numpO35k51Lej8h2EE1oB6KX/wRH2b+Jdkzf13SW3Q== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=intel.onmicrosoft.com; s=selector2-intel-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=z3TWKiqI6QO/csU5dQjM7QfaJsDJK3O2wMcclFadEpc=; b=jwxrZ2MUtT/mSK6xQyOZPuHWstNvzuRUsBNVsjvbdxLQ4RxftV34LYB728tUHiluXWMxK3s/eQUvWsKGhjX7m7Sg76ifQ6OmYy7QKlt/MLQl2IQDRKM7WDvWIQ9KdYiPMlIVDDiXQrNLGjOsqQpyCHCv+ObXJsD6Fz6SwbYFgzQ= Received: from BL0PR11MB3316.namprd11.prod.outlook.com (2603:10b6:208:68::28) by BL0PR11MB2916.namprd11.prod.outlook.com (2603:10b6:208:72::27) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3131.23; Fri, 3 Jul 2020 07:47:36 +0000 Received: from BL0PR11MB3316.namprd11.prod.outlook.com ([fe80::b199:47b3:89d5:6d3d]) by BL0PR11MB3316.namprd11.prod.outlook.com ([fe80::b199:47b3:89d5:6d3d%6]) with mapi id 15.20.3131.036; Fri, 3 Jul 2020 07:47:36 +0000 From: "Kusztal, ArkadiuszX" To: Akhil Goyal , "dev@dpdk.org" , "Trahe, Fiona" , "Burakov, Anatoly" Thread-Topic: [PATCH v2] examples: add multi process crypto application Thread-Index: AQHWSjMwrLya1JNjvE2UmHr0S0sJH6j0ueUAgADHxAA= Date: Fri, 3 Jul 2020 07:47:36 +0000 Message-ID: References: <20200624142344.3152-1-arkadiuszx.kusztal@intel.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-reaction: no-action dlp-version: 11.2.0.6 dlp-product: dlpe-windows x-ctpclassification: CTP_NT x-titus-metadata-40: eyJDYXRlZ29yeUxhYmVscyI6IiIsIk1ldGFkYXRhIjp7Im5zIjoiaHR0cDpcL1wvd3d3LnRpdHVzLmNvbVwvbnNcL0ludGVsMyIsImlkIjoiYTcwOWRlMzQtYTRkYy00MDBlLTkwZGYtNmQ2ZjYxNGI3NmVmIiwicHJvcHMiOlt7Im4iOiJDVFBDbGFzc2lmaWNhdGlvbiIsInZhbHMiOlt7InZhbHVlIjoiQ1RQX05UIn1dfV19LCJTdWJqZWN0TGFiZWxzIjpbXSwiVE1DVmVyc2lvbiI6IjE3LjEwLjE4MDQuNDkiLCJUcnVzdGVkTGFiZWxIYXNoIjoiZFJ2OWRkMHRXMHhxVndyYTRSUzFkUHJZNTM5VHFZNEtFR1JicXFDVlZIeEpiZTYrd09kVFwvemlhWFhJdXYzNWwifQ== authentication-results: nxp.com; dkim=none (message not signed) header.d=none;nxp.com; dmarc=none action=none header.from=intel.com; x-originating-ip: [192.198.151.43] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: cf286d14-a885-425f-fdd5-08d81f255a84 x-ms-traffictypediagnostic: BL0PR11MB2916: x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:8882; x-forefront-prvs: 045315E1EE x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: CZYGCOfvZU1iEwsvtp/vp7D+ld0lPT/tEg3YUvCe5lXW6uARumze3qe0rHeH79YaLO1g1NSAslSQ/pWFZq41Awv0bg21HxfPmcMtsdzbyPlO6R6rLqOLbL38lUKJ+8hnbNR7UIEfcNc4MT264DfoY6bSTleqA7tMZ/OXjDbECtl6sg7YB30NLIijtpGt6TcbrOjEHW5mPDrZo1TbtSpdg7GV5pDc2ELjcR9QApJfLhQUEP471JVt3LzoUW6a53ekAZvTC42YE9rQ5QbBIHm2kdyVhkU24ZxuOBry1d/TqO0T0g/RdUO91bXOQWt+1Fod7Fry8oV2xDVfz+85Di2YVg== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:BL0PR11MB3316.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFTY:; SFS:(4636009)(346002)(376002)(366004)(396003)(39860400002)(136003)(83380400001)(55016002)(9686003)(316002)(478600001)(71200400001)(7696005)(110136005)(26005)(6506007)(53546011)(6636002)(5660300002)(52536014)(8676002)(86362001)(66946007)(76116006)(8936002)(186003)(2906002)(66476007)(66556008)(64756008)(66446008)(30864003)(33656002); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata: hVDUTkKXb2Pddj42j+/ZTvmDuAraLxgmtqwgAmL+5wVGoO5u70nF5K6bTAcslv07o0yozsM6AQhNGMmmbikcp6T5imaSAGxC+VBZf0bLpqPLivlhx+Jcc/nL+JF9N1U879Mmn+wLzLnXjRsaeKphrDMwOtduFEYo2Bb/mu6FHJAs5dKCqvI15erI40R+3mdBnzPJ8PBj7qBJsIbGYP4b3KCSVaS7x52W6TK57SjDkHKf2mgW6wuONjAV00XIVKxOMmQvcMCylNH6QM3ULQVzAKvL0MKUlcqj8YwqhkC0n6ANU4AFgvHoN6N/n7ocDKCjPsOpH7+MA/zezNzYZY9fnvQa29DUdmip7TvnyO+2CawhwqOr1WWa1iqQbsxlBNU8c0TAYrtyqAYtpuQRAFupdRvps4pwmKqJpTyqNvXHcXqpu9LGaBW29pVuzHKS8vkTvPTdTwD2j5uE8DyKt1jZ4pufYx+zEABagOouM9X4wwmym/u2ktO5RNkU1yWK0Nff Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: BL0PR11MB3316.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: cf286d14-a885-425f-fdd5-08d81f255a84 X-MS-Exchange-CrossTenant-originalarrivaltime: 03 Jul 2020 07:47:36.4042 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: 0cCU70reQzruK/oZ3SVybrYuZQ/gdQFTVXWonpwB05NMqslORRjzXpSosXpdRJiQA+pWY1rQrzOVZLHsAfyv16Dmu5qhs540ozjvRK8iuog= X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL0PR11MB2916 X-OriginatorOrg: intel.com Subject: Re: [dpdk-dev] [PATCH v2] examples: add multi process crypto application 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: , Errors-To: dev-bounces@dpdk.org Sender: "dev" Hi Akhil, > -----Original Message----- > From: Akhil Goyal > Sent: Thursday, July 2, 2020 9:30 PM > To: Kusztal, ArkadiuszX ; dev@dpdk.org; > Trahe, Fiona ; Burakov, Anatoly > > Subject: RE: [PATCH v2] examples: add multi process crypto application >=20 > Hi Arek/Fiona, >=20 > > This patch adds example application that can test usage of cryptodev > > in multi process environment. > > More can be found in mp_crypto.rst in sample app guides. > > > > Signed-off-by: Arek Kusztal > > --- >=20 > Shouldn't this be part of examples/multi_process? >=20 > > doc/guides/sample_app_ug/index.rst | 1 + > > doc/guides/sample_app_ug/mp_crypto.rst | 153 +++++ > > examples/mp_crypto/Makefile | 58 ++ > > examples/mp_crypto/main.c | 1109 > > ++++++++++++++++++++++++++++++++ > > examples/mp_crypto/meson.build | 18 + > > examples/mp_crypto/mp_crypto.c | 139 ++++ > > examples/mp_crypto/mp_crypto.h | 224 +++++++ > > examples/mp_crypto/mp_crypto_ipc.c | 32 + > > examples/mp_crypto/mp_crypto_parser.c | 511 +++++++++++++++ > > examples/mp_crypto/mp_crypto_parser.h | 149 +++++ > > examples/mp_crypto/mp_crypto_vectors.c | 175 +++++ > > examples/mp_crypto/mp_crypto_vectors.h | 66 ++ > > 12 files changed, 2635 insertions(+) >=20 > Can we split this patch in some logical way so that it can be reviewed ea= sily? >=20 > > create mode 100644 doc/guides/sample_app_ug/mp_crypto.rst > > create mode 100644 examples/mp_crypto/Makefile create mode 100644 > > examples/mp_crypto/main.c create mode 100644 > > examples/mp_crypto/meson.build create mode 100644 > > examples/mp_crypto/mp_crypto.c create mode 100644 > > examples/mp_crypto/mp_crypto.h create mode 100644 > > examples/mp_crypto/mp_crypto_ipc.c > > create mode 100644 examples/mp_crypto/mp_crypto_parser.c > > create mode 100644 examples/mp_crypto/mp_crypto_parser.h > > create mode 100644 examples/mp_crypto/mp_crypto_vectors.c > > create mode 100644 examples/mp_crypto/mp_crypto_vectors.h > > > > diff --git a/doc/guides/sample_app_ug/index.rst > > b/doc/guides/sample_app_ug/index.rst > > index affa9c5..ff033e4 100644 > > --- a/doc/guides/sample_app_ug/index.rst > > +++ b/doc/guides/sample_app_ug/index.rst > > @@ -35,6 +35,7 @@ Sample Applications User Guides > > link_status_intr > > server_node_efd > > service_cores > > + mp_crypto > > multi_process > > qos_metering > > qos_scheduler > > diff --git a/doc/guides/sample_app_ug/mp_crypto.rst > > b/doc/guides/sample_app_ug/mp_crypto.rst > > new file mode 100644 > > index 0000000..d3cb1d9 > > --- /dev/null > > +++ b/doc/guides/sample_app_ug/mp_crypto.rst > > @@ -0,0 +1,153 @@ > > +.. SPDX-License-Identifier: BSD-3-Clause > > + Copyright(c) 2020 Intel Corporation. > > + > > +.. _mp_crypto: > > + > > +Multi-process Crypto Sample Application > > +=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > > + > > +The Multi-process Crypto application is a simple application that > > +allows to run crypto related operations in a multiple process > > +environment. It builds on the EAL primary/secondary process > infrastructure. > > + > > +The application allows a user to configure devices, setup > > +queue-pairs, create and init sessions and specify data-path flow > > +(enqueue/dequeue) in different processes. The app can help to check > > +if the PMD behaves correctly in scenarios like the following: > > + > > +* device is configured in primary process, queue-pairs are setup in > > +secondary > > process > > + > > +* queue pair is shared across processes, i.e. enqueue in one process > > +and > > dequeue in another > > + > > + > Extra line >=20 > > +Compiling the Application > > +------------------------- > > + > > +To compile the sample application see :doc:`compiling`. > > + > > +The application is located in the ``mp_crypto`` sub-directory. > > + > > +Running the Application > > +----------------------- > > + > > +App binary: mp_crypto (in mp_crypto/build/app) > > + > > +For running PRIMARY or SECONDARY process standard EAL options apply: > > + > > +.. code-block:: console > > + > > + ./mp_crypto --proc-type primary > > + > > + ./mp_crypto --proc-type secondary > > + > > +.. Note:: > > + > > + The same set of BDFs must be passed to all processes. > > + > > +.. Note:: > > + The same crypto devices must be created in all processes, e.g. in qat > > + case if asym and sym devices are enabled in the primary process, > they > > + must be enabled in all secondary processes. > > + > > +General help can by checked by running: > > + > > +.. code-block:: console > > + > > + ./mp_crypto -- -h > > + > > +The application has a number of command line options: > > + > > +.. code-block:: console > > + > > + ./mp_crypto -- --devtype [dev-name] > > + > > +This option specifies which driver to use by its name (for example > "crypto_qat"). > > +The same name must be passed to all processes. > > + > > +.. code-block:: console > > + > > + ./mp_crypto -- --config_dev [devA, devB,] > > + > > +This option specifies the list of devices that should be configured > > +by this > > process, > > +this results in a call to the ``rte_cryptodev_configure`` API. devX > > +is a positive integer (including zero), the value is according to > > +probe order (from the > > smallest > > +BDF number), not necessarily the cmdline order. > > + > > +Example command: > > + > > +.. code-block:: console > > + > > + ./mp_crypto -w 03:01.2 -w 03:01.1 -w 03:01.3 --config-dev 0,2 > > + > > +will configure devices 03:01.1 and 03:01.3. > > + > > +.. code-block:: console > > + > > + ./mp_crypto -- --qp-config=3D[devA]:[qp_A, qp_B,];[devB]:[qp_A, > > + qp_C]; > > + > > +devX - positive integer (including zero), as in config_dev command > > + > > +qp_X - positive integer (including zero), specifies which queue pair > > +should be > > setup > > + > > +This command specifies which queue pairs should be setup, resulting > > +in a call to ``rte_cryptodev_queue_pair_setup`` API. > > + > > +.. code-block:: console > > + > > + ./mp_crypto -w 03:01.2 -w 03:01.1 -w 03:01.3 --qp- > config=3D"0:0,1;1:1;2:0,1;" > > + > > +This command will configure queue pairs 0 and 1 on device 0 > > +(03:01.1), queue > > pair 1 > > +on device 1 (03:01.2), queue pairs 0 and 1 on device 2 (03:01.3). The > > +device in > > question > > +should be configured before that, though not necessarily by the same > process. > > + > > +.. code-block:: console > > + > > + ./mp_crypto -- --enq=3D[devX]:[qpX]:[ops]:[vector_id] > > + ./mp_crypto -- --deq=3D[devX]:[qpX]:[ops]:[vector_id] > > + > > +devX - positive integer (including zero), as in config_dev command > > + > > +qp_X - positive integer (including zero), as in qp-config command > qpX >=20 > > + > > +ops - when positive integer - number of operations to > > +enqueue/dequeue, when > > 0 infinite loop > > + > > +vector_id - positive integer (including zero), vector_id used by this > > +process > What is vector_id? How is it meant to be used? >=20 > > + > > +This commands will enqueue/dequeue "ops" number of packets to qp_X > on > > devX. > > +Example usage: > > + > > +.. code-block:: console > > + > > + ./mp_crypto -- --enq=3D2:0:0:0, --deq=3D2:0:0:0, > > + > > +Note. ',' comma character is necessary at the end due to some parser > > shortcomings. > > + > > +To close the application when running in an infinite loop a signal > > +handler is registered to catch interrupt signals i.e. ``ctrl-c`` > > +should be used. When used in primary process other processes will be > > +notified about exiting intention and will close after collecting remai= ning > packets (if dequeuing). > > + > > +Example commands > > +---------------- > > + > > +Use two different devices on 3 separate queues: > > + > > +.. code-block:: console > > + > > + ./mp_crypto --proc-type primary -c 1 -w 03:01.1 -w 03:01.2 -- > > + --devtype > > "crypto_qat" --config-dev 0,1 --qp-config=3D"0:0,1;1:0,1;" --session- > mask=3D0x3 -- > > enq=3D0:0:0:0, --deq=3D0:0:0:0, --print-stats > > + ./mp_crypto --proc-type secondary -c 2 -w 03:01.1 -w 03:01.2 -- > > + --devtype > > "crypto_qat" --enq=3D0:1:0:0, --deq=3D0:1:0:0, --print-stats > > + ./mp_crypto --proc-type secondary -c 4 -w 03:01.1 -w 03:01.2 -- > > + --devtype > > "crypto_qat" --enq=3D1:0:0:0, --deq=3D1:0:0:0, --print-stats > > + > > +Use different processes to enqueue and dequeue to one queue pair: > > + > > +.. code-block:: console > > + > > + ./mp_crypto --proc-type primary -c 1 -w 03:01.1 -- --devtype > > + "crypto_qat" -- > > config-dev 0 --session-mask=3D0x3 --qp-config=3D"0:1;" --enq=3D0:1= :0:0, -- > print- > > stats > > + ./mp_crypto --proc-type secondary -c 2 -w 03:01.1 -- --devtype > "crypto_qat" > > --deq=3D0:1:0:0, --print-stats >=20 > What are the expected results out of this app. Can we have some logs in t= his > doc? [Arek] - yes we will add (soon we will send v3), example output would look = something like that: For following command (enqueue only in primary process, dequeue in one of s= econdary's) ./mp_crypto --proc-type primary -c 1 -w 03:01.1 -w 03:01.2 -w 03:02.7 --log= -level 7 -- --devtype "crypto_qat" --config-dev 2 --session-mask=3D0x3 -= -qp-config=3D"2:1;" --enq=3D2:1:0:0, --print-stats --------------------------------------------------------------------- USER1: Run enqueue on device 2 USER1: Run enqueue on qp 1 USER1: - Setting driver 2 for this process USER1: - Starting PRIMARY process USER1: Number of processes =3D 1 USER1: Configure devices according to mask: 0x4 USER1: - Configure Device id 2 CRYPTODEV: elt_size 16 is expanded to 192 CRYPTODEV: elt_size 16 is expanded to 192 USER1: - Configuring queues: CRYPTODEV: qp 1 on dev 2 is not initialised USER1: Created qp 1 on dev 2 USER1: - Configured 1 queues. USER1: Initialized session =3D 0 USER1: Initialized session =3D 1 USER1: Configuring vector 0, using session 0 USER1: Start enqueuing packets on dev 2 qp 1 CRYPTODEV: qp 1 on dev 2 is initialised USER1: Enqueuing /^C Interrupted, finalizing...USER1: STATS: Enqueued on dev 2 =3D 16337024 USER1: STATS: Enqueue err count on dev 2 =3D 0 Press 'q' to quit: q USER1: Waiting for 1 out of 10 seconds USER1: All secondary processes exited normally --------------------------------------------------------------------- >=20 > Can we kill the primary app first? Will the secondary get killed automati= cally > or will throw error? [Arek] - primary will inform all secondary processes to collect remaining p= ackets (if possible) and finish. Primary will wait at most 10 seconds. SIGI= NT is registered so actually it will work correctly with ctrl-c. > Can we open and kill secondary apps multiple times without killing the > primary? [Arek] - yes. >=20 > This multi process app is only taking care of crypto queues while others= are > for NICs. > Is it not worth to have crypto+NIC multi process app instead of this app? [Arek] - initially main purpose was to check PMD behavior when: 1) configure cryptodev, sessions, queues and do enqueue/dequeue from anothe= r different processes 2) run enqueue/dequeue from different processes on the same queue pair. If it can be done with one app I think it is ok. > I believe most common usecases of crypto are with network traffic. > Can we modify l2fwd-crypto for multi process? >=20 > > + > > +Limitations > > +----------- > > + > > +Software devices are not supported currently, but small changes in > > +code suffice > > to enable it. > > + > > +Only one crypto vector and session type is possible to chose right > > +now and it is > > AES-GCM test case. >=20 > Regards, > Akhil