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 9C101A0350; Mon, 22 Jun 2020 10:24:45 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 831191D5A8; Mon, 22 Jun 2020 10:24:45 +0200 (CEST) Received: from EUR03-AM5-obe.outbound.protection.outlook.com (mail-eopbgr30078.outbound.protection.outlook.com [40.107.3.78]) by dpdk.org (Postfix) with ESMTP id 0B1D01D573 for ; Mon, 22 Jun 2020 10:24:45 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=IPSayvcv4sTl9t/CjR0eop0cAnBp3HW1jnjwcm3B7FtOFtWCy/Ja1Zo5M11TLVLnUgOluj5vHuVVeWOr9FOfnRY/fImVlsBhNpUiGfEcsbDo7GSqlraP1c6FaXG9lZy2xm96dKUnPhRgelnV4oOEJJ8HOl/uqoC858XCYRwMumGGD+rHX0humn3ywSsK9m7oCwr3eGMvK0M+iDSExt6cr9vdMokpLsB1XBUZl59m9OKYGMY2utMQzkXoycflNVANyjqvLt0saf3xxMIOt6T+kqAdJLJSJbpqFgEoANnw+clmhvMS1m9xRmjeg0LRt2yewC/VNVizmBzvwwbJWSbb+g== 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=AVLrivem8D+S7EOambo0miQBe8HAuN/Z1Eavo6mkNk4=; b=CBci+I9IA+bjebVV5ym7qrfXlYSl72x3Q2lrxptseI8PzvdbaSR3f/KnIdx0lO9s6ZiPKEYmtigSzigRqi9U3N5gBeHV8DcXK1molr16fMCd+CVFZzNArhjQZ9cZk+qgtQlCli78+d3n9QKeliz/tXFNysXZ0PHopLhb2+MW/Lmpu3fcdFr8t59/4h9x9UGnCXw0wFnXq6W/se/sJlkjSijddUG/dFY3MTrFWd36PYyi9GkqrZKjLVEN5pgqxbRX28a66Lw+V3Fuy8dzc12GZdSpdw8SHa2zo65k2ZiTuJqt3LPGTZHPdXNld21DAyc4VcT3qQIWYZebDOf2MasILA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oss.nxp.com; dmarc=pass action=none header.from=oss.nxp.com; dkim=pass header.d=oss.nxp.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=NXP1.onmicrosoft.com; s=selector2-NXP1-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=AVLrivem8D+S7EOambo0miQBe8HAuN/Z1Eavo6mkNk4=; b=MYaummD3kd6ItswgJduYNxacTZH9wkjvTrrldEWCee1vMssojEJjQDCDPc/VmUuugICWCtIw3PtVLznlxhUJ71jTclXQWJ91UXhPYZNAJY9BC22PbkI/F1HO3IiI1RFbMJjF0m3vmpJZVr3L/cqnw6mp8cTa5HG+jkAvCv25b/I= Authentication-Results: dpdk.org; dkim=none (message not signed) header.d=none;dpdk.org; dmarc=none action=none header.from=oss.nxp.com; Received: from VI1PR04MB5837.eurprd04.prod.outlook.com (2603:10a6:803:ec::28) by VI1PR04MB3070.eurprd04.prod.outlook.com (2603:10a6:802:4::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3109.25; Mon, 22 Jun 2020 08:24:44 +0000 Received: from VI1PR04MB5837.eurprd04.prod.outlook.com ([fe80::d4d6:f65d:34cd:aa43]) by VI1PR04MB5837.eurprd04.prod.outlook.com ([fe80::d4d6:f65d:34cd:aa43%3]) with mapi id 15.20.3109.027; Mon, 22 Jun 2020 08:24:43 +0000 To: "Wei Hu (Xavier)" , hemant.agrawal@nxp.com Cc: dev@dpdk.org References: <1592813340-44094-1-git-send-email-xavier.huwei@huawei.com> <1592813340-44094-2-git-send-email-xavier.huwei@huawei.com> From: "Sachin Saxena (OSS)" Message-ID: <78b8fd4e-9f31-0c61-e80c-aa8e0c17fc09@oss.nxp.com> Date: Mon, 22 Jun 2020 13:54:37 +0530 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:68.0) Gecko/20100101 Thunderbird/68.9.0 In-Reply-To: <1592813340-44094-2-git-send-email-xavier.huwei@huawei.com> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Content-Language: en-US X-ClientProxiedBy: SG2PR06CA0131.apcprd06.prod.outlook.com (2603:1096:1:1d::33) To VI1PR04MB5837.eurprd04.prod.outlook.com (2603:10a6:803:ec::28) MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from [192.168.1.10] (106.215.19.107) by SG2PR06CA0131.apcprd06.prod.outlook.com (2603:1096:1:1d::33) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3109.22 via Frontend Transport; Mon, 22 Jun 2020 08:24:42 +0000 X-Originating-IP: [106.215.19.107] X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-HT: Tenant X-MS-Office365-Filtering-Correlation-Id: f75682e8-5b7d-42c6-3654-08d81685b762 X-MS-TrafficTypeDiagnostic: VI1PR04MB3070: X-MS-Exchange-SharedMailbox-RoutingAgent-Processed: True X-MS-Exchange-Transport-Forked: True X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:7219; X-Forefront-PRVS: 0442E569BC X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: jwHy6UHofI2qBUShbhu1Tv0pSp1OW8rAMnVPhj+L5uZ8Yqk/cvVPI4hr+4Kp1Ku+61K8IpbsC6RR9ApYo3ZNM04o9GbGbZkO6QHI7uUOW5cXRFvCzaHZvWgBzARzy6Z7g8u+TNS/KJHDwAV7ktF9+jmvavJr8ENsPl/KybfB1aCYCSYO1p4leC+37/Sfk03qw42nwjD5hQmsivsVH2GsSvDhezy8bnLypbevyrhhPjEcmC8+rYBUesWLIWbwnffuuqs9j/q7IbBajgJWP1FrT5CXqe5B1SBwzVaJMDknTPtSmmkinNPTlKW1r4y9vAjHOH0yWT/uUZg84m1HkZ3SxI2IIQ3K4/1wC1nbsJjXEoP63Yx89FKyNvICkHzFCRSH X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:VI1PR04MB5837.eurprd04.prod.outlook.com; PTR:; CAT:NONE; SFTY:; SFS:(4636009)(396003)(366004)(39860400002)(136003)(376002)(346002)(2616005)(5660300002)(83380400001)(4326008)(52116002)(31686004)(8676002)(8936002)(86362001)(66476007)(66556008)(316002)(16576012)(31696002)(66946007)(186003)(956004)(16526019)(478600001)(26005)(6486002)(2906002)(1006002)(6666004)(53546011)(43740500002); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData: UGxrxAIos/XAH7ni3Vx+ugK2fSj/c3lc4GGx/uewhA3z7tcM9N1QtxigH3kIlcYJ9jUjwCUsp4tpzGBGu26a32zd/9kMBEOesDFMNAmmF65rV+aaRrm8XTXDc8x6Rnqt43OXJJmOVtXWJ6fs9SPNaCb6GENBO0SZk36QFFAGMKrYOSBl6yj4Sdk7nZ05+wiCB0GTaSJM89BROzvfFtOQiEFSVp5J7tv0C5cGbVxAZ93rteByztQuBarygGceCYfKyhxlkE3+3DYeltueCXTT78yhfjSoCc2v7TQzw5u6kk/iQEx2IxveKeKJLQo+UGBlCNYLKIUI+hACwGmDLny6KHsuf9ygto8mXx/dx+bkaHZgiXKL65Hg+DFSvUDhuD9CHPn1LI5r3C81Wskd0/xykFyVpAgzCAqVTdPascKhD48DlMLNBj5X3T/6tgECr2E0kBoz9JQI2Y/FCchbeeDJiNitONz05D9jjhqvB3TviQgPUDWy9Unv6z6GbwvCYvwh X-OriginatorOrg: oss.nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: f75682e8-5b7d-42c6-3654-08d81685b762 X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Jun 2020 08:24:43.9101 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: VxZd7z4gomYa8rXDls1IXmmx1pDjxwfV3YpBu1cSvtdWSw7xPajY47roKNL6IrcdvgQVG2h8BHAvky+BzGUl3A== X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR04MB3070 Subject: Re: [dpdk-dev] [PATCH v4 1/2] ethdev: fix data room size verification in Rx queue setup 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" Acked-by: Sachin Saxena On 22-Jun-20 1:38 PM, Wei Hu (Xavier) wrote: > In the rte_eth_rx_queue_setup API function, the local variable named > mbp_buf_size, which is the data room size of the input parameter mp, > is checked to guarantee that each memory chunck used for net device > in the mbuf is bigger than the min_rx_bufsize. But if mbp_buf_size is > less than RTE_PKTMBUF_HEADROOM, the value of the following statement > will be a large number since the mbp_buf_size is a unsigned value. > mbp_buf_size - RTE_PKTMBUF_HEADROOM > As a result, it will cause a segment fault in this situation. > > This patch fixes it by modify the check condition to guarantee that the > local varibale named mbp_buf_size is bigger than RTE_PKTMBUF_HEADROOM. > > Fixes: af75078fece3 ("first public release") > Cc: stable@dpdk.org > > Signed-off-by: Chengchang Tang > Signed-off-by: Wei Hu (Xavier) > Reviewed-by: Andrew Rybchenko > --- > v3 -> v4: No change. > v2 -> v3: No change. > v1 -> v2: Simplify the check condition of mbp_buf_size according to > Andrew Rybchenko's comment. > --- > lib/librte_ethdev/rte_ethdev.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/lib/librte_ethdev/rte_ethdev.c b/lib/librte_ethdev/rte_ethdev.c > index 8e10a6f..b0b0474 100644 > --- a/lib/librte_ethdev/rte_ethdev.c > +++ b/lib/librte_ethdev/rte_ethdev.c > @@ -1822,7 +1822,7 @@ rte_eth_rx_queue_setup(uint16_t port_id, uint16_t rx_queue_id, > } > mbp_buf_size = rte_pktmbuf_data_room_size(mp); > > - if ((mbp_buf_size - RTE_PKTMBUF_HEADROOM) < dev_info.min_rx_bufsize) { > + if (mbp_buf_size < dev_info.min_rx_bufsize + RTE_PKTMBUF_HEADROOM) { > RTE_ETHDEV_LOG(ERR, > "%s mbuf_data_room_size %d < %d (RTE_PKTMBUF_HEADROOM=%d + min_rx_bufsize(dev)=%d)\n", > mp->name, (int)mbp_buf_size,