From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by smtp.lore.kernel.org (Postfix) with ESMTP id 10C76C6FA82 for ; Fri, 23 Sep 2022 14:47:57 +0000 (UTC) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id C4C7B42BBB; Fri, 23 Sep 2022 16:45:45 +0200 (CEST) Received: from mx0b-0016f401.pphosted.com (mx0b-0016f401.pphosted.com [67.231.156.173]) by mails.dpdk.org (Postfix) with ESMTP id E784342BBC for ; Fri, 23 Sep 2022 16:45:43 +0200 (CEST) Received: from pps.filterd (m0045851.ppops.net [127.0.0.1]) by mx0b-0016f401.pphosted.com (8.17.1.5/8.17.1.5) with ESMTP id 28NCK8Ex002658; Fri, 23 Sep 2022 07:45:43 -0700 Received: from nam11-dm6-obe.outbound.protection.outlook.com (mail-dm6nam11lp2172.outbound.protection.outlook.com [104.47.57.172]) by mx0b-0016f401.pphosted.com (PPS) with ESMTPS id 3js10xjk21-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Fri, 23 Sep 2022 07:45:43 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Cr86YsNeMr5N1VMQikOZpJ9ENlL7QRBFqfxWtkjjBROZu2rbJweNypjIwSMEfH9yoEgBnbhYZDzLgjei6q0oOQgC2VVJ0eueB6dzdjCWFLB2yblf4scqm/bmWKIW72UM8OcL0z47w8KJg09PMAdMwERXpTa6k5uH0mkEy18e4D13Ek9gc7IyAbFoa4yIvEBgrgYuM//ha1FKKc08FcP833NV2ef5lROLBjXKCiTRQJTbQCudNwRJBFY9dEiTXiunNCddrQ3p+TsaQeaTia4fZDE/RwCgtpUzqmn6SLzBqQ6Y2ysYQeHb8rsN0JihMXN9/jx6KLCjWyjENQz5ZOhf2g== 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-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=yXrfbv8U8VtluP7OLgnB5vkxiFC46EB1cRudozAGgyQ=; b=U0J5qdSB4HuqCFyw0Zfn6ZWp+Gqty0KKzDYBFy/HiETIgpDuZiuvcf4M38vjB46fsk1dbWDeNZZoswsJCJZ7Y0DHxx7O3KvLQFR24sv5MmJ6PHpL8FRvfaAAkQRvew15itBBWDyfQ74wxk6kCzxEFPLHyPRIo2NLUGxQOGnrze4yu2BPAYTerycipRKsKOj3D3Xo2reIDaYhfUN4NRvIq3Ia0dUu0sDY5q2qumd/Q9O0I1RfalI6e5Ns8GeZ69jqT5lnbFJ2QEWl6LoxJ/jy70ZezCKXgCHsgxDrLIU5hpVni6OLQjOqw60Iwpu/W6z4ZvhS1qypIOeJtTkXIFG0/A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=marvell.com; dmarc=pass action=none header.from=marvell.com; dkim=pass header.d=marvell.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.onmicrosoft.com; s=selector1-marvell-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=yXrfbv8U8VtluP7OLgnB5vkxiFC46EB1cRudozAGgyQ=; b=eihbkwXK/22RwQjk5CV4GVFmoRcbJ893rcgIflCrvAamSg0+WbGkO5M/8JAK/OM/0qhz/gf2dryeY2duqA5pKmNaOsSNZQmrqTrcPw84kLAWOfcn8LL856H4MruaapRNaUS1wE3FiZ94X4j8o0BRadK7bqcj+4lnOQuzwSbK2dE= Received: from PH0PR18MB4086.namprd18.prod.outlook.com (2603:10b6:510:3::9) by SN4PR18MB4995.namprd18.prod.outlook.com (2603:10b6:806:21b::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5654.20; Fri, 23 Sep 2022 14:45:40 +0000 Received: from PH0PR18MB4086.namprd18.prod.outlook.com ([fe80::bdb5:cfa9:a5bf:755b]) by PH0PR18MB4086.namprd18.prod.outlook.com ([fe80::bdb5:cfa9:a5bf:755b%7]) with mapi id 15.20.5654.016; Fri, 23 Sep 2022 14:45:36 +0000 From: Pavan Nikhilesh Bhagavatula To: Rahul Bhansali , "dev@dpdk.org" , Radu Nicolau , Akhil Goyal CC: Rahul Bhansali Subject: RE: [EXT] [PATCH] examples/ipsec-secgw: free event vector mbufs Thread-Topic: [EXT] [PATCH] examples/ipsec-secgw: free event vector mbufs Thread-Index: AQHYzy5TGrwaWmkfzk61NPzRPilidq3tF4yQ Date: Fri, 23 Sep 2022 14:45:36 +0000 Message-ID: References: <20220923092428.344501-1-rbhansali@marvell.com> In-Reply-To: <20220923092428.344501-1-rbhansali@marvell.com> Accept-Language: en-IN, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-publictraffictype: Email x-ms-traffictypediagnostic: PH0PR18MB4086:EE_|SN4PR18MB4995:EE_ x-ms-office365-filtering-correlation-id: bc1f327c-caf4-4015-ecbf-08da9d7246f3 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: TPPqrGwvyXil0qLx8HCJ65YLO8JsW0XxwZiA2roZQjeGPL3LRhaW4MjnwMgEPgw0yKOaiQN6WN1lcvymKVb3AIa5v+EqAZSZrPGODmfV/In8r/7Vcf0mjfwJtilpae4Y8wF03zmN67an0EXOnLGEl4SjoxoMpJB+XXzxFSltSudJsdTydD76Iouq90sjFpDhevJa04Eg3oMSfbTsf2CAa+DBXNCCpVYrT2RdX5aPITH1E+kd1h/K9Er3ypRs+RwsQOmU2sQOE2hA2C3ZUYpuDeJrEZtFUf2+qrZsPUB6t7xVJ60Dojx3nHPUcA9bDsnCT4WabRmI6BrxVbTn7XZuDhDJ8Iz6cOrzedP1KSZC+erEOJfCVWPEw61S98cCoQRh7EsZpOWgZ9HCQ49YeQi/NiXoALaFNLihaEcifED8p3Hl4xF770dhO72Q4MB1fy6RInWYDt1w6KBmQW22WO4yHNjJCt39/pwea41T65DiFEmqWO6UvG0jU4wmpL/2zimXus9aWzkQC+xneEp3E6EJ8wlOWWkTKNEFHd0Thm6XORzQyXZWFctlYPNV13TQEk1F4G/bBJvb4FLs7L51ZqpKm5adExDRCGq0J0SlXKj6JL4KZ7uLrWa3cHcLXjpEsFq/IyAtxApMn+GRD8xhUzKINU7XD3d6+8yW7k+9WKJdgSV9zuU9vS8RPrZQAbcSSRR4Gn7Qiw8w420y0rWyQKkUP+nhOekFRSRjnCDkh7lGVDRH8SLygFkfmo3g024fq4qkq4IkTX58qAdA6K7S5lu26g== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:PH0PR18MB4086.namprd18.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230022)(4636009)(376002)(396003)(136003)(39860400002)(346002)(366004)(451199015)(66446008)(8936002)(4326008)(66476007)(66556008)(64756008)(76116006)(66946007)(122000001)(86362001)(38070700005)(5660300002)(33656002)(2906002)(52536014)(38100700002)(6506007)(9686003)(26005)(83380400001)(107886003)(55016003)(71200400001)(7696005)(478600001)(110136005)(8676002)(41300700001)(186003)(316002)(6636002); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?C4FtBmPeOaMw0H7QZCmxfYzd3g4X6h/9jV/rymrkJ/qZMoHCY9vLNBJzfdFW?= =?us-ascii?Q?9eiTUW7IoJPat7NpOOkmD3UwqHk41D4FdGuIlH7d19jEvGs6DVqroW04zi9Z?= =?us-ascii?Q?Uh511bThKo73nLR4ta1COMmCFgIfxtwhJHgaaR7MlLufhNki+eikrYNz90lo?= =?us-ascii?Q?zgw0VKz19407cSWEwfWPJKP+kv8y/TrFMk5kwZd+IsPlypL67T6EG6i1NKMV?= =?us-ascii?Q?hc7ls1O2RdpzNdq4bVfDcTQfjTYF6cN4gyh5G22Q1eYwjCYMgFOQ5yPSlHT1?= =?us-ascii?Q?W3QgMTrhk5iKUnAq0Z4RSc/Wxt1G9i85YVOcp/HrlovNn3UTfKdCMwUwsGHq?= =?us-ascii?Q?uxq0uWDZH0ewBTZjiLo5Coc2100sGWRDa1WEN6a9AM8FzU09FrnR2cb3LfgI?= =?us-ascii?Q?xPQY33mRo68kKU1vdYG9n5eeOp92B636+4yFv66FQQ7Urw3EU630rSLJLlwW?= =?us-ascii?Q?+TM+ys2bXsd12IT20BfzYMyM0xsN8gzDznnSPui5TWNg5RjgbFaiArHl7uNC?= =?us-ascii?Q?G2/NgAKpJAqnB7IOfliUSoOp8R1RLD/KzT/R/A1dhNNx8Fli5deR5rqbEvpd?= =?us-ascii?Q?M4ssU1Fqnri0uwcApXBAiJUbrvS58KgqaYoxGaBmpNFjCJzKeGnW4lvvnC4D?= =?us-ascii?Q?NWt7H4xvoJBZ8yuJMwNxVsFB4b8a9FShVsOkkrrMfTWQtO/nGPBoSKcNvGRF?= =?us-ascii?Q?FxpNrKjb/8qSSYt7xdKOS7VXckOE7AHOr3NEPlkoNEocrdtczxmSTACwy8LT?= =?us-ascii?Q?Ncz1td7zokML1swq4hdxdKB13bUBVlsC412HpxwT3NZsGTrls9ScpawbxapR?= =?us-ascii?Q?DXBEbxZQ9lTFU5pH+c/HQodei07Yk4eizD6bY8bcwhcZPKE/IeStxH9UtIkV?= =?us-ascii?Q?LVfo7ZsUiEMRxxpbILsPSg8LS/H0enbH+MLDzjdWs/eA8soHVEMHBQUaIEXX?= =?us-ascii?Q?ke6Zm9lFPEMfTHOJCpMqTwCkWTXnHB4lL79FHjt/vGij/ys1oghMZuj+fiRz?= =?us-ascii?Q?lJWLFywoHsfR2+fUdbrs7Yblee30GfJ61ikZ600zRCppz/sgcrWY3IQBDgLp?= =?us-ascii?Q?SiycYqXqsDqA1dILrvn4GBFbUIouvF1jGzGDJ6JgiMYRAHmsZ76X7d12kr4V?= =?us-ascii?Q?wQL6/baO3UF4rdD19Dg0AgwqunRKvBvPNqc2XsWgHn9U2lpTbKtP+3o4dV9j?= =?us-ascii?Q?n3KrwXENnYyrJUmifBgfZeaXI7jg3JnBZaiyD6g3OH1nve2pVPwAQ/AOVt8r?= =?us-ascii?Q?aB5SlWzjjIXG4HPcfSOs/ILRFMqcOxvu1DzYS4XoXSVvHaynrcvi/wI+vfSA?= =?us-ascii?Q?kZX+DBi2bkJGrbeQjN5ja6p+Ull7rq/qJYFeAOVKSGwpOOB+4gxWG0bay1V9?= =?us-ascii?Q?KpVaZfE4zYf2BNHp1gEVuMvFmnRqNX1WVdMF0AgweHCUsG8IktVTbwk1xkdu?= =?us-ascii?Q?vXKdakHOVprQYB2F5qmPJ68Vul2DESlTo8AwG05LIZ+8A3WT1i88jD3Fc7s/?= =?us-ascii?Q?PxMNAkfsglRTG4YHrdrxLrWEsNRYsIr2w+Efb3Dkx+lDW7e/ln8StkIf0vS0?= =?us-ascii?Q?4FqfJEzkDpohNnymB7qK0Qlq38wa13v3z9EeOw66?= Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: marvell.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: PH0PR18MB4086.namprd18.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: bc1f327c-caf4-4015-ecbf-08da9d7246f3 X-MS-Exchange-CrossTenant-originalarrivaltime: 23 Sep 2022 14:45:36.8101 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 70e1fb47-1155-421d-87fc-2e58f638b6e0 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: 4+ZXIeBnlvhkstVaOMv/Uw7QBAk2Arw1t2/Nhl7KTh0/UIi2TdUkAEtuX5kTEcDapAKNF8F2LkQTKcgJcO02fB1LmtEKqjrCYv9M54cwSA8= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN4PR18MB4995 X-Proofpoint-ORIG-GUID: 8I7g_-H7fufKGjU2kioV9q3vJ6NLD27X X-Proofpoint-GUID: 8I7g_-H7fufKGjU2kioV9q3vJ6NLD27X X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.205,Aquarius:18.0.895,Hydra:6.0.528,FMLib:17.11.122.1 definitions=2022-09-23_04,2022-09-22_02,2022-06-22_01 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 > Free mbufs from event vector list when enqueue operation fails > and during event port flush for cleanup. >=20 > Signed-off-by: Rahul Bhansali > --- > examples/ipsec-secgw/ipsec_worker.c | 34 +++++++++++++++++++++------ > -- > 1 file changed, 25 insertions(+), 9 deletions(-) >=20 > diff --git a/examples/ipsec-secgw/ipsec_worker.c b/examples/ipsec- > secgw/ipsec_worker.c > index 5e69450d27..105326ddd3 100644 > --- a/examples/ipsec-secgw/ipsec_worker.c > +++ b/examples/ipsec-secgw/ipsec_worker.c > @@ -699,6 +699,14 @@ > process_ipsec_ev_drv_mode_outbound_vector(struct rte_event_vector > *vec, > return j; > } >=20 > +static void > +ipsec_event_vector_free(struct rte_event *ev) > +{ > + struct rte_event_vector *vec =3D ev->vec; > + rte_pktmbuf_free_bulk(vec->mbufs + vec->elem_offset, vec- > >nb_elem - vec->elem_offset); The vector spec has changed in v2, this should be=20 rte_pktmbuf_free_bulk(vec->mbufs + vec->elem_offset, vec->nb_elem); > + rte_mempool_put(rte_mempool_from_obj(vec), vec); > +} > + > static inline void > ipsec_ev_vector_process(struct lcore_conf_ev_tx_int_port_wrkr *lconf, > struct eh_event_link_info *links, > @@ -720,9 +728,10 @@ ipsec_ev_vector_process(struct > lcore_conf_ev_tx_int_port_wrkr *lconf, >=20 > if (likely(ret > 0)) { > vec->nb_elem =3D ret; > - rte_event_eth_tx_adapter_enqueue(links[0].eventdev_id, > - links[0].event_port_id, > - ev, 1, 0); > + ret =3D > rte_event_eth_tx_adapter_enqueue(links[0].eventdev_id, > + links[0].event_port_id, > ev, 1, 0); > + if (unlikely(ret =3D=3D 0)) > + ipsec_event_vector_free(ev); > } else { > rte_mempool_put(rte_mempool_from_obj(vec), vec); > } > @@ -735,17 +744,21 @@ ipsec_ev_vector_drv_mode_process(struct > eh_event_link_info *links, > { > struct rte_event_vector *vec =3D ev->vec; > struct rte_mbuf *pkt; > + uint16_t ret; >=20 > pkt =3D vec->mbufs[0]; > + vec->attr_valid =3D 1; > + vec->port =3D pkt->port; >=20 > if (!is_unprotected_port(pkt->port)) > vec->nb_elem =3D > process_ipsec_ev_drv_mode_outbound_vector(vec, >=20 > data); > - if (vec->nb_elem > 0) > - rte_event_eth_tx_adapter_enqueue(links[0].eventdev_id, > - links[0].event_port_id, > - ev, 1, 0); > - else > + if (likely(vec->nb_elem > 0)) { > + ret =3D > rte_event_eth_tx_adapter_enqueue(links[0].eventdev_id, > + links[0].event_port_id, > ev, 1, 0); > + if (unlikely(ret =3D=3D 0)) > + ipsec_event_vector_free(ev); > + } else > rte_mempool_put(rte_mempool_from_obj(vec), vec); > } >=20 > @@ -759,7 +772,10 @@ static void > ipsec_event_port_flush(uint8_t eventdev_id __rte_unused, struct > rte_event ev, > void *args __rte_unused) > { > - rte_pktmbuf_free(ev.mbuf); > + if (ev.event_type & RTE_EVENT_TYPE_VECTOR) > + ipsec_event_vector_free(&ev); > + else > + rte_pktmbuf_free(ev.mbuf); > } >=20 > /* Workers registered */ > -- > 2.25.1