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 F04D3A04BC; Fri, 9 Oct 2020 05:53:38 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 3A9C91BF1D; Fri, 9 Oct 2020 05:53:36 +0200 (CEST) Received: from NAM11-CO1-obe.outbound.protection.outlook.com (mail-co1nam11on2136.outbound.protection.outlook.com [40.107.220.136]) by dpdk.org (Postfix) with ESMTP id 6448B1BEA8; Fri, 9 Oct 2020 05:53:33 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=mtnFatuVajLxOAUXmdu+V66wFg46fnndltLOfapYCPH3y1X6rYkeMauf/Dw9KLTefRgn61Ve3lDTlMqO2du6TH/+9geuNdJG7h3odLmtlT7wiVDl3qZmA1KNCJiUP70DghfW/m9f+RJo14wqWt2PYvkbM0vVRNLYqSBKeNbsXlKCr2FY4hYutYg7Cg8n3jWBRf6biGX70vx6RD+Q9N7uFgeSq7bvBLZo/6HYydm5WuF3HmYb4kNOQ1NFIs82WvBa36gE2LijRKD/Yu1Mtmfr9+2428wF9Fliy557Jhna0hiO1YEFSIT8hn+SfHPNHsnB2l0lnSaFLpEnHEAaSz3Fqg== 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=IWaU/daYTOCruu6hQkUHR8+EaZavAZsd/Vk7h9MsjlM=; b=WaJjxxuAZBWoHEdP/cRwWWoqvuqyIXwOVBhW2BEpLVyNX/JwL+rVIwMxjMvKZy3VSXMAmpnW+B0TDaM/fyqE/ExBDE+5kRS+bSqDLOALzl612fQmvYyvzwzvWiYw8sskoQKMVcMSIHRJzkyFrC45jk5E1pJ0Xn/EPl3lHfh1jVRD8O3HnZSriRgY7vKZloR2Ifun2du6hT2X5zJDaPSyXGeTzJhkTdlG7pMww+yz9sD/qzx65d+QCk/RT9EL0jgGEn2LSmlgj0rKowZrj7PsBaMXUrPjmVgnBZa+2Z30XsvbsDRtuLInegTxhlFO/p724EATOVXOJLBJbPCopNW2+A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=microsoft.com; dmarc=pass action=none header.from=microsoft.com; dkim=pass header.d=microsoft.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=IWaU/daYTOCruu6hQkUHR8+EaZavAZsd/Vk7h9MsjlM=; b=QNuZjsjyO+SalsZiEFnIHxbtQbelW+RockRbgtbZetUE/YF1jr6ItY1+YoNz/wd5QTuXud3zCVShBCIvgSedSkFenHY2l2D/aNoDsqORlqOhCilttRS7RUEGhMBroW/Kov3qGKGANppRgKN/UC9MSwGU/NqhFX5azeuHx2i0M60= Received: from BYAPR21MB1159.namprd21.prod.outlook.com (2603:10b6:a03:103::13) by BYAPR21MB1623.namprd21.prod.outlook.com (2603:10b6:a02:c7::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3455.10; Fri, 9 Oct 2020 03:53:30 +0000 Received: from BYAPR21MB1159.namprd21.prod.outlook.com ([fe80::e553:6fe1:1d77:7192]) by BYAPR21MB1159.namprd21.prod.outlook.com ([fe80::e553:6fe1:1d77:7192%8]) with mapi id 15.20.3477.010; Fri, 9 Oct 2020 03:53:30 +0000 From: Long Li To: wangyunjian , "dev@dpdk.org" CC: Stephen Hemminger , KY Srinivasan , Haiyang Zhang , "jerry.lilijun@huawei.com" , "xudingke@huawei.com" , "stable@dpdk.org" Thread-Topic: [dpdk-dev] [PATCH v2] net/netvsc: fix txq leak in error path Thread-Index: AQHWnE6tvfh2ZEqNyES6CJ7uCAOo7qmOpbLg Date: Fri, 9 Oct 2020 03:53:30 +0000 Message-ID: References: <1602036385-10760-1-git-send-email-wangyunjian@huawei.com> In-Reply-To: <1602036385-10760-1-git-send-email-wangyunjian@huawei.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: msip_labels: MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_ActionId=1de43658-41f3-4a33-a243-dda2d3dde59e; MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_ContentBits=0; MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_Enabled=true; MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_Method=Standard; MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_Name=Internal; MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_SetDate=2020-10-09T03:49:14Z; MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_SiteId=72f988bf-86f1-41af-91ab-2d7cd011db47; authentication-results: huawei.com; dkim=none (message not signed) header.d=none;huawei.com; dmarc=none action=none header.from=microsoft.com; x-originating-ip: [2001:4898:80e8:7:ede7:db5c:c6fe:798] x-ms-publictraffictype: Email x-ms-office365-filtering-ht: Tenant x-ms-office365-filtering-correlation-id: c037093e-9752-4560-7c80-08d86c06e316 x-ms-traffictypediagnostic: BYAPR21MB1623: x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:8273; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: WuVI8nO3VOzStCE42nrugdstmMg9+JiS8BIj+C8MUKx1EeTim6CBtSLGMbDKaqj0xOW/7KATgrETwA1DjjvgsikOKA8NfW7pSMDl24O+d3Uttke6rATg+eAqKFXvcJSbBu7vKlAa55lyw1vt7d5gDZ8cGFr+x/j6DUnTH25T1NOHq8Xx9jkjw69dtSjVwXpMddkZnjop2+dwyNr6Bu+HotMvicrMC9xeSARGHd/AeTpadFIq6RKYWeCuqUaDFv100103aCOMPb9ZS6ES8M0y/XmbkkAh3IyjxLyHCdiEqa57TCE+qixlTp/ZNuHAGZxhGVcJpE3zdPdjYl365+NuSw== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:BYAPR21MB1159.namprd21.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(346002)(366004)(396003)(136003)(376002)(39860400002)(5660300002)(8990500004)(66556008)(66446008)(76116006)(66946007)(64756008)(71200400001)(52536014)(66476007)(4326008)(82950400001)(10290500003)(86362001)(2906002)(186003)(9686003)(316002)(8936002)(7696005)(33656002)(83380400001)(6506007)(55016002)(8676002)(478600001)(110136005)(54906003)(82960400001); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata: WIbpak1LKWVZXPkb6oRqBVtlD/tGhJ08R2odnbIzYCURgmeU9hRGTLew6XXWcOj9EzndBlUzw4NdXx+Anvv6FccX8l2D0nQgSXqPXcT1l0ulYyvlJQ5POdXnB9BQwUoXLm7FfkyMg1IPWp53zWiINambLV0li190bQkwWKL+Y7TYAHpX3b4JczATJNWdYKDp7r0BDJ9j8tprC09Eb+v3Xa0jTT2BYLiaFDo/d3rnzaPV4n0Aupj63548xOj5i41TbpbVJ2oTj5xZJSgo5dkQ+vXhtI06GLpoMGd/zNvNT2zeg36eCyAUawUF4FBo3byf/3n/VdMC/KY8h7+tPkPzN4cy1HaYLZ42/aE3rAFckFatjX7THLEfNXECruevRKJAwAFZP5yl6wdcN+tnntbD7tkMJnPcP9ZfIwdHvRunoeD3Y4deokipQDwmjn9TbMjMOzkBbaaJfD1Vvtk8F9aa4/Z27EAU7Q+vd9ufRBAIJ7IhUXnzipjAjY6p5WL2iJPvILwIbVIJu0Ga3xk3yiORodF/SOXJUHaXL//zsvHPQaEBVCKYWFf1VPEU5Q8lBa6mdT1H0tm155IoCwfA82cNcDPGJl9mhd+lQzJQ20x0nro94R0G33c5IpTZD4WLzBmNEbg8+4ZOYgx4wacH1J3tvWS66ULlK5Npy9pL8RJkat3peEoos/znC1JkxnywgKWyblxqq4RXwO4xKZ/dCM2zDg== Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: microsoft.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: BYAPR21MB1159.namprd21.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: c037093e-9752-4560-7c80-08d86c06e316 X-MS-Exchange-CrossTenant-originalarrivaltime: 09 Oct 2020 03:53:30.6881 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 72f988bf-86f1-41af-91ab-2d7cd011db47 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: C1cTX7feeJGXVjTEuC/jGts1eDBBYh72ptgxhyn9oBt8fQInPfKES7V9TWrOk488brFrIZ7qDIxhMNumrZKrZQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR21MB1623 Subject: Re: [dpdk-dev] [PATCH v2] net/netvsc: fix txq leak in error path 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" >Subject: [dpdk-dev] [PATCH v2] net/netvsc: fix txq leak in error path > >From: Yunjian Wang > >In hn_dev_tx_queue_setup() allocated memory for txq, we don't free it >when error happens and it will lead to memory leak. > >We can check for tx_free_thresh at the beginning of the function to fix it= , >before calling txq =3D rte_zmalloc_socket(). > >Fixes: cc0251813277 ("net/netvsc: split send buffers from Tx descriptors") >Cc: stable@dpdk.org > >Signed-off-by: Yunjian Wang Acked-by: Long Li >--- >v2: > fix code styles suggested by Long Li >--- > drivers/net/netvsc/hn_rxtx.c | 19 +++++++++---------- > 1 file changed, 9 insertions(+), 10 deletions(-) > >diff --git a/drivers/net/netvsc/hn_rxtx.c b/drivers/net/netvsc/hn_rxtx.c >index 65f1abae5..5d59db513 100644 >--- a/drivers/net/netvsc/hn_rxtx.c >+++ b/drivers/net/netvsc/hn_rxtx.c >@@ -252,16 +252,6 @@ hn_dev_tx_queue_setup(struct rte_eth_dev *dev, > > PMD_INIT_FUNC_TRACE(); > >- txq =3D rte_zmalloc_socket("HN_TXQ", sizeof(*txq), >RTE_CACHE_LINE_SIZE, >- socket_id); >- if (!txq) >- return -ENOMEM; >- >- txq->hv =3D hv; >- txq->chan =3D hv->channels[queue_idx]; >- txq->port_id =3D dev->data->port_id; >- txq->queue_id =3D queue_idx; >- > tx_free_thresh =3D tx_conf->tx_free_thresh; > if (tx_free_thresh =3D=3D 0) > tx_free_thresh =3D RTE_MIN(nb_desc / 4, @@ -276,6 +266,15 >@@ hn_dev_tx_queue_setup(struct rte_eth_dev *dev, > return -EINVAL; > } > >+ txq =3D rte_zmalloc_socket("HN_TXQ", sizeof(*txq), >RTE_CACHE_LINE_SIZE, >+ socket_id); >+ if (!txq) >+ return -ENOMEM; >+ >+ txq->hv =3D hv; >+ txq->chan =3D hv->channels[queue_idx]; >+ txq->port_id =3D dev->data->port_id; >+ txq->queue_id =3D queue_idx; > txq->free_thresh =3D tx_free_thresh; > > snprintf(name, sizeof(name), >-- >2.23.0