get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

GET /api/patches/131482/?format=api
HTTP 200 OK
Allow: GET, PUT, PATCH, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept

{
    "id": 131482,
    "url": "http://patchwork.dpdk.org/api/patches/131482/?format=api",
    "web_url": "http://patchwork.dpdk.org/project/dpdk/patch/20230915091551.1459606-9-chaoyong.he@corigine.com/",
    "project": {
        "id": 1,
        "url": "http://patchwork.dpdk.org/api/projects/1/?format=api",
        "name": "DPDK",
        "link_name": "dpdk",
        "list_id": "dev.dpdk.org",
        "list_email": "dev@dpdk.org",
        "web_url": "http://core.dpdk.org",
        "scm_url": "git://dpdk.org/dpdk",
        "webscm_url": "http://git.dpdk.org/dpdk",
        "list_archive_url": "https://inbox.dpdk.org/dev",
        "list_archive_url_format": "https://inbox.dpdk.org/dev/{}",
        "commit_url_format": ""
    },
    "msgid": "<20230915091551.1459606-9-chaoyong.he@corigine.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/20230915091551.1459606-9-chaoyong.he@corigine.com",
    "date": "2023-09-15T09:15:32",
    "name": "[v3,08/27] net/nfp: using the DPDK memory management API",
    "commit_ref": null,
    "pull_url": null,
    "state": "changes-requested",
    "archived": true,
    "hash": "12c3455e4e22b452f6c6e6ebd881c40f58f5e615",
    "submitter": {
        "id": 2554,
        "url": "http://patchwork.dpdk.org/api/people/2554/?format=api",
        "name": "Chaoyong He",
        "email": "chaoyong.he@corigine.com"
    },
    "delegate": {
        "id": 319,
        "url": "http://patchwork.dpdk.org/api/users/319/?format=api",
        "username": "fyigit",
        "first_name": "Ferruh",
        "last_name": "Yigit",
        "email": "ferruh.yigit@amd.com"
    },
    "mbox": "http://patchwork.dpdk.org/project/dpdk/patch/20230915091551.1459606-9-chaoyong.he@corigine.com/mbox/",
    "series": [
        {
            "id": 29520,
            "url": "http://patchwork.dpdk.org/api/series/29520/?format=api",
            "web_url": "http://patchwork.dpdk.org/project/dpdk/list/?series=29520",
            "date": "2023-09-15T09:15:24",
            "name": "refact the nfpcore module",
            "version": 3,
            "mbox": "http://patchwork.dpdk.org/series/29520/mbox/"
        }
    ],
    "comments": "http://patchwork.dpdk.org/api/patches/131482/comments/",
    "check": "success",
    "checks": "http://patchwork.dpdk.org/api/patches/131482/checks/",
    "tags": {},
    "related": [],
    "headers": {
        "Return-Path": "<dev-bounces@dpdk.org>",
        "X-Original-To": "patchwork@inbox.dpdk.org",
        "Delivered-To": "patchwork@inbox.dpdk.org",
        "Received": [
            "from mails.dpdk.org (mails.dpdk.org [217.70.189.124])\n\tby inbox.dpdk.org (Postfix) with ESMTP id EDF76425A3;\n\tFri, 15 Sep 2023 11:17:18 +0200 (CEST)",
            "from mails.dpdk.org (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id 1C1BA40F16;\n\tFri, 15 Sep 2023 11:16:34 +0200 (CEST)",
            "from NAM12-BN8-obe.outbound.protection.outlook.com\n (mail-bn8nam12on2134.outbound.protection.outlook.com [40.107.237.134])\n by mails.dpdk.org (Postfix) with ESMTP id C417340ED0\n for <dev@dpdk.org>; Fri, 15 Sep 2023 11:16:32 +0200 (CEST)",
            "from SJ0PR13MB5545.namprd13.prod.outlook.com (2603:10b6:a03:424::5)\n by CO1PR13MB4773.namprd13.prod.outlook.com (2603:10b6:303:fb::6) with\n Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.21; Fri, 15 Sep\n 2023 09:16:30 +0000",
            "from SJ0PR13MB5545.namprd13.prod.outlook.com\n ([fe80::c05c:6915:1628:70c4]) by SJ0PR13MB5545.namprd13.prod.outlook.com\n ([fe80::c05c:6915:1628:70c4%7]) with mapi id 15.20.6768.029; Fri, 15 Sep 2023\n 09:16:30 +0000"
        ],
        "ARC-Seal": "i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;\n b=WFy0nTTLXDgqWNUs3UUJwvUaUHRCXapd1OxaoUzR75HVygvdhSd60+bRdKp+6dT07h20VlPkKcUK4AcnHK+YUlRhCRsmMrS3smC1GimHsOn7tbrb9jQIVzQuqbdgyFwy8iPT9FhZ/NdNMQ+1pvu4R5yH3UYwFiLqqZBwW216YbiZvYfVBvUJIkZJecULHT9DLtkTLT5Jc4xcbs1c+00y3MYeB7263O55rpgtIN25ohsh/USZ/ej+3Jy1HWcWON7UOsgmzH27PM8SSTybkj9IhxOVvQQkTreGtYQOCynAJA4H9xJXXBaV2n92FaCcwQD5knniXzkLTLHm3eMn2dv+9A==",
        "ARC-Message-Signature": "i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;\n s=arcselector9901;\n 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;\n bh=1QO+/bA8b3vVyBy1OcEPk70fJqxGMTQFMHHRNGBS6yQ=;\n b=W2oobZubAsWXvneI9DECsmGVXI8rDMq63Ogw9n2FfvfqANTCA6mcKOXaPBqe3yiJoIKVj1xAPgMATe9SlvZJgpjsfqUfxQBoDCE1RMFqlrDgSgnjI8EzvSYgc9/xMrleVxQ+W4yxMhVRrkRWY5mVV6fB2hXtlaB+u9YmuzoCDjGffe/ZIHmSSDqrRJYmnhEdCYqav5ak1BLxakmKIcikJN6H+2DZa5eDQ5C5RtXtL5/Z32OFil9qhE+E3rRh+G/h1UeEez+3Xqz/a3oOqqRw4N1aI1BjcXzB92Ew2dOt8B1nOc3YX41FFzw9nLx3KOaV1S+1c0xbV3xGwI0klWJ9DA==",
        "ARC-Authentication-Results": "i=1; mx.microsoft.com 1; spf=pass\n smtp.mailfrom=corigine.com; dmarc=pass action=none header.from=corigine.com;\n dkim=pass header.d=corigine.com; arc=none",
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=corigine.onmicrosoft.com; s=selector2-corigine-onmicrosoft-com;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;\n bh=1QO+/bA8b3vVyBy1OcEPk70fJqxGMTQFMHHRNGBS6yQ=;\n b=COg3LK3EVLVUyYp7BLEGTCpNorHrSJn35TRcE5ka5PQGCDuGlXwunuLnyZ4j3mHPh+jmDXC/JlXmuZf/N4q+xOPPizAoLlOdqkaAhAxAha8OBjncjGGOlEYLwKQeG6k5TyPGpnWzpQZQQuRc0GMsIcIdkRZfgULki43a9YdPQcw=",
        "Authentication-Results": "dkim=none (message not signed)\n header.d=none;dmarc=none action=none header.from=corigine.com;",
        "From": "Chaoyong He <chaoyong.he@corigine.com>",
        "To": "dev@dpdk.org",
        "Cc": "oss-drivers@corigine.com, Chaoyong He <chaoyong.he@corigine.com>,\n\t=?utf-8?q?Niklas_S=C3=B6derlund?= <niklas.soderlund@corigine.com>",
        "Subject": "[PATCH v3 08/27] net/nfp: using the DPDK memory management API",
        "Date": "Fri, 15 Sep 2023 17:15:32 +0800",
        "Message-Id": "<20230915091551.1459606-9-chaoyong.he@corigine.com>",
        "X-Mailer": "git-send-email 2.39.1",
        "In-Reply-To": "<20230915091551.1459606-1-chaoyong.he@corigine.com>",
        "References": "<20230830021457.2064750-1-chaoyong.he@corigine.com>\n <20230915091551.1459606-1-chaoyong.he@corigine.com>",
        "Content-Type": "text/plain; charset=UTF-8",
        "Content-Transfer-Encoding": "8bit",
        "X-ClientProxiedBy": "PH7PR10CA0017.namprd10.prod.outlook.com\n (2603:10b6:510:23d::10) To SJ0PR13MB5545.namprd13.prod.outlook.com\n (2603:10b6:a03:424::5)",
        "MIME-Version": "1.0",
        "X-MS-PublicTrafficType": "Email",
        "X-MS-TrafficTypeDiagnostic": "SJ0PR13MB5545:EE_|CO1PR13MB4773:EE_",
        "X-MS-Office365-Filtering-Correlation-Id": "db552e30-078b-4ab5-12d9-08dbb5cc728b",
        "X-MS-Exchange-SenderADCheck": "1",
        "X-MS-Exchange-AntiSpam-Relay": "0",
        "X-Microsoft-Antispam": "BCL:0;",
        "X-Microsoft-Antispam-Message-Info": "\n 34rLlRbeDmFAshNXoLVcECEh7yIMznBp0lgd+raqvCt/M4RuYFB65NQg7hPdHN6ZG7j+AG+sHUVqgNBmq+POXs4wrvmkG0GNbZq+JCsBFeCfFfjaaRedHZi6Pf6EnMnQWUtMEuWetENSpzPJE0Qlrc15JBu8SzDQ3ruR1d/jF6EyVQOIFLJt4oD3V5LsB+nAhPCnLqxjJV1btpjQIxaXwgtQFXln0O3oToTIcwztD39aaRs+5AYpmiBY9bHAbecmVIoDthNkPfYs/2cVRPd8CIXSvXSX1OuMr9Alo+1r26/34EQyBlv4W0h3yo/Nxrv+39jTJKsUU12dgTOnCOPuha4s3uFdUzSG4qrl/RHo9mUtwaGjhFnAOfxS5AXc3nOfh4OD+mbyP5XHaWtR3qxb63fCYfX56YMB0vfXctA0oDHLQBxxzFUgd+ubkXrUu/VukE2vO5WzWIRqF6LywWtxQmSm9djTOKCPOTJF3BzR/SWJh/aaOyV5x9ejCjiUN3KKtHQE08nfgq24Auhka/oVo1tLRQHvn8crOvOuCQPt3XRfuw3BikO4riofGpJBzwiR1phMlpFw4RYgbhZkdcqnLVi4TOeP395jdg+Wn8kH785tLBJgvU3BuM0kG5XslaesDoOOjT6wCgtY/Ukale5sxAozVn46X8n3R+sEerIfuso=",
        "X-Forefront-Antispam-Report": "CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:;\n IPV:NLI; SFV:NSPM; H:SJ0PR13MB5545.namprd13.prod.outlook.com; PTR:; CAT:NONE;\n SFS:(13230031)(39840400004)(346002)(136003)(376002)(396003)(366004)(451199024)(186009)(1800799009)(6512007)(107886003)(1076003)(2616005)(52116002)(6506007)(6486002)(66946007)(26005)(316002)(41300700001)(66476007)(66556008)(6916009)(54906003)(5660300002)(4326008)(8676002)(38350700002)(8936002)(38100700002)(478600001)(66574015)(83380400001)(36756003)(44832011)(30864003)(86362001)(2906002);\n DIR:OUT; SFP:1102;",
        "X-MS-Exchange-AntiSpam-MessageData-ChunkCount": "1",
        "X-MS-Exchange-AntiSpam-MessageData-0": "=?utf-8?q?1GMcFEXOeiOpuTZ+fSaiMzgZOswl?=\n\t=?utf-8?q?5swz+23YtSM1ASmwo3JRKM7KyH64P8Rg9ymkDauC6uXUzPP50/ZmxkkRIw4Lbb6yh?=\n\t=?utf-8?q?MBz2lspEReToTXR68qDGSYkKnGUnduesCcrXV0rVd5W2xJktvUIXBhMxTsAoMt9hJ?=\n\t=?utf-8?q?5TUQJZzyBQpVl2l7UT/9St2LuQRFOtTJqTwHEHrQtBc44DKZF9klsAsqeRU0HgG4G?=\n\t=?utf-8?q?4emd5YHucfcNzN1FSdEU1sagxEojPLO03bDPbE988LtX+vokTGt3Q19bPfJhpcO5v?=\n\t=?utf-8?q?+2wWfzsWup14DhzpYs1sRDs2luImD9zmpwD7tSy3URfFh2IgrmA3tuJqu38zi8mRj?=\n\t=?utf-8?q?kj20H9PhlnXKRP8xScN0Jr712ZkFLuiSz16IkGRtdA3CnBmK0k0BspBNMgOq/NHo2?=\n\t=?utf-8?q?JZZ7sQHBRopFm8dvTQWfMY3//gIRA0fMSJUiSkWZ6sOsQhtfQt11kExc60rvEeNM3?=\n\t=?utf-8?q?m//pV8Gh5+QqoZgpPVMx3leDvEg3abrfIO3dHihXWBpD4Sywti2hUtmvOfiNeZ0xj?=\n\t=?utf-8?q?OyUMgIXpY1smORQapXyE19wMECYUurQVSP1IItGPbh4bycm0zCl1DYnUutvb7PpEV?=\n\t=?utf-8?q?sbh3IXHkf2DnUR0/7EApymNyAzhQDhQFVy92YLgnRIp7F7ONiB6G1easJb0gueqL/?=\n\t=?utf-8?q?/FLEe3k+8fnxAw3rDmOz3iofsr8C8L/hnCFzj19Xtp2kqSDdBW44jsLlbR8Vm9FI0?=\n\t=?utf-8?q?lP8pEvqQtbwkmGihVmFFzg96SPhqnORHs5xTYXIE/QSietvXNeCojiz3TbwDmOkaX?=\n\t=?utf-8?q?r5ZmTNRYLyZi7NQivGsSw9s9VsOaNQKxyKjUuMfyjJZg8ZHesA2NkcYTBiGQ32zno?=\n\t=?utf-8?q?vyHuAfuebg349IXpwv5+abRumgXif7wix+WuOSFaFF5uyRZH9vPOAnXgMGpGE4HzP?=\n\t=?utf-8?q?PGeUvPUz1+o9ONsO+6T3w7PlCZWNCKKcYXFFf8dc3YzJZZwLTTaBoEsBFp8Yn7VKL?=\n\t=?utf-8?q?A8HsRnKfDevZHT5uiHJ+LzoKImsjQHa9HoZ10vOlcFBOruq161JPQ7op/87dOcYXk?=\n\t=?utf-8?q?1s9TwgSJIV///eBHUuvaODCYT11r+A0PF51qPjAvGStq7P/il6OVzlN7arxCd+/2b?=\n\t=?utf-8?q?oKfPCGaOLme+yna8Z3sd/STWJRSD6EM4aR1QrkF44pllftHLVl5s6gD7F9ztCUfnF?=\n\t=?utf-8?q?mgaRFKKbPF/sQ0D+E9gAfdfju5WMHWIpZnlF9IO8dZxPNxqtTsCkBratLmpwbEwOX?=\n\t=?utf-8?q?Ut1nC2UcET8oeIaXXHFz+UpJl8hpylSI78roUzJyNWlfjwfUh2rBtB9O8blk696A5?=\n\t=?utf-8?q?C9ISm6jjqWeVvCqIB8nco9BjuDEVlu9kQR4DuUqRS10wPrHMzQUMiqbzgcmvMpD4n?=\n\t=?utf-8?q?DqR6rQ6d2EcVGgoZFtashGlkAeYj0Hx2733N/UAqJNEUO46bGm+yFSnjQxBzz7NPF?=\n\t=?utf-8?q?5sxb2WHMETHsTF5j28TNwwlkuc+wieiwgvIYloNgTgoezlsbnJz2DricaWoe+RdmR?=\n\t=?utf-8?q?7GVxj1w/JuW00VsU2Ggqk+XBjBYCIciYiecJdcyMdWK8WZa72i0SvpBF9w1h0U5Jf?=\n\t=?utf-8?q?KnM7SV6NLf5YPmc9n/nglVf6v9N3ttnLhA=3D=3D?=",
        "X-OriginatorOrg": "corigine.com",
        "X-MS-Exchange-CrossTenant-Network-Message-Id": "\n db552e30-078b-4ab5-12d9-08dbb5cc728b",
        "X-MS-Exchange-CrossTenant-AuthSource": "SJ0PR13MB5545.namprd13.prod.outlook.com",
        "X-MS-Exchange-CrossTenant-AuthAs": "Internal",
        "X-MS-Exchange-CrossTenant-OriginalArrivalTime": "15 Sep 2023 09:16:30.5942 (UTC)",
        "X-MS-Exchange-CrossTenant-FromEntityHeader": "Hosted",
        "X-MS-Exchange-CrossTenant-Id": "fe128f2c-073b-4c20-818e-7246a585940c",
        "X-MS-Exchange-CrossTenant-MailboxType": "HOSTED",
        "X-MS-Exchange-CrossTenant-UserPrincipalName": "\n h2qxbPt4XJ1+kXjpx5KKPRQOE9vYFW0ut30Ys8YxnkytJChiiMhp9frzqKep2gu/bL0/lFsKE+AClEOiY/LT3JnDRNTtvvw/qWFUSHeHLrs=",
        "X-MS-Exchange-Transport-CrossTenantHeadersStamped": "CO1PR13MB4773",
        "X-BeenThere": "dev@dpdk.org",
        "X-Mailman-Version": "2.1.29",
        "Precedence": "list",
        "List-Id": "DPDK patches and discussions <dev.dpdk.org>",
        "List-Unsubscribe": "<https://mails.dpdk.org/options/dev>,\n <mailto:dev-request@dpdk.org?subject=unsubscribe>",
        "List-Archive": "<http://mails.dpdk.org/archives/dev/>",
        "List-Post": "<mailto:dev@dpdk.org>",
        "List-Help": "<mailto:dev-request@dpdk.org?subject=help>",
        "List-Subscribe": "<https://mails.dpdk.org/listinfo/dev>,\n <mailto:dev-request@dpdk.org?subject=subscribe>",
        "Errors-To": "dev-bounces@dpdk.org"
    },
    "content": "Revise the logic, using the DPDK memory management API to replace the\nmalloc()/free().\n\nSigned-off-by: Chaoyong He <chaoyong.he@corigine.com>\nReviewed-by: Niklas Söderlund <niklas.soderlund@corigine.com>\n---\n drivers/net/nfp/flower/nfp_flower.c    |  2 +-\n drivers/net/nfp/nfp_ethdev.c           |  8 ++++----\n drivers/net/nfp/nfpcore/nfp_cppcore.c  | 10 +++++-----\n drivers/net/nfp/nfpcore/nfp_hwinfo.c   |  6 +++---\n drivers/net/nfp/nfpcore/nfp_mip.c      |  6 +++---\n drivers/net/nfp/nfpcore/nfp_mutex.c    |  4 ++--\n drivers/net/nfp/nfpcore/nfp_nffw.c     |  8 +++-----\n drivers/net/nfp/nfpcore/nfp_nsp.c      |  6 +++---\n drivers/net/nfp/nfpcore/nfp_nsp_cmds.c |  8 +++-----\n drivers/net/nfp/nfpcore/nfp_nsp_eth.c  | 19 ++++++++-----------\n drivers/net/nfp/nfpcore/nfp_resource.c | 10 ++++------\n 11 files changed, 39 insertions(+), 48 deletions(-)",
    "diff": "diff --git a/drivers/net/nfp/flower/nfp_flower.c b/drivers/net/nfp/flower/nfp_flower.c\nindex 77dab864f3..37895e8355 100644\n--- a/drivers/net/nfp/flower/nfp_flower.c\n+++ b/drivers/net/nfp/flower/nfp_flower.c\n@@ -225,7 +225,7 @@ nfp_flower_pf_close(struct rte_eth_dev *dev)\n \tPMD_DRV_LOG(INFO, \"Freeing PF resources\");\n \tnfp_cpp_area_free(pf_dev->ctrl_area);\n \tnfp_cpp_area_free(pf_dev->hwqueues_area);\n-\tfree(pf_dev->hwinfo);\n+\trte_free(pf_dev->hwinfo);\n \tfree(pf_dev->sym_tbl);\n \tnfp_cpp_free(pf_dev->cpp);\n \trte_free(app_fw_flower);\ndiff --git a/drivers/net/nfp/nfp_ethdev.c b/drivers/net/nfp/nfp_ethdev.c\nindex e3ff3d8087..2e43055fd5 100644\n--- a/drivers/net/nfp/nfp_ethdev.c\n+++ b/drivers/net/nfp/nfp_ethdev.c\n@@ -47,7 +47,7 @@ nfp_net_pf_read_mac(struct nfp_app_fw_nic *app_fw_nic, int port)\n \n \trte_ether_addr_copy(&nfp_eth_table->ports[port].mac_addr, &hw->mac_addr);\n \n-\tfree(nfp_eth_table);\n+\trte_free(nfp_eth_table);\n \treturn 0;\n }\n \n@@ -312,7 +312,7 @@ nfp_net_close(struct rte_eth_dev *dev)\n \tPMD_INIT_LOG(INFO, \"Freeing PF resources\");\n \tnfp_cpp_area_free(pf_dev->ctrl_area);\n \tnfp_cpp_area_free(pf_dev->hwqueues_area);\n-\tfree(pf_dev->hwinfo);\n+\trte_free(pf_dev->hwinfo);\n \tfree(pf_dev->sym_tbl);\n \tnfp_cpp_free(pf_dev->cpp);\n \trte_free(app_fw_nic);\n@@ -1047,9 +1047,9 @@ nfp_pf_init(struct rte_pci_device *pci_dev)\n sym_tbl_cleanup:\n \tfree(sym_tbl);\n eth_table_cleanup:\n-\tfree(nfp_eth_table);\n+\trte_free(nfp_eth_table);\n hwinfo_cleanup:\n-\tfree(hwinfo);\n+\trte_free(hwinfo);\n cpp_cleanup:\n \tnfp_cpp_free(cpp);\n \ndiff --git a/drivers/net/nfp/nfpcore/nfp_cppcore.c b/drivers/net/nfp/nfpcore/nfp_cppcore.c\nindex 0e8372576e..37906c6f35 100644\n--- a/drivers/net/nfp/nfpcore/nfp_cppcore.c\n+++ b/drivers/net/nfp/nfpcore/nfp_cppcore.c\n@@ -866,7 +866,7 @@ nfp_cpp_alloc(struct rte_pci_device *dev,\n \tif (ops == NULL || ops->init == NULL)\n \t\treturn NULL;\n \n-\tcpp = calloc(1, sizeof(*cpp));\n+\tcpp = rte_zmalloc(NULL, sizeof(*cpp), 0);\n \tif (cpp == NULL)\n \t\treturn NULL;\n \n@@ -876,7 +876,7 @@ nfp_cpp_alloc(struct rte_pci_device *dev,\n \tif (cpp->op->init) {\n \t\terr = cpp->op->init(cpp, dev);\n \t\tif (err < 0) {\n-\t\t\tfree(cpp);\n+\t\t\trte_free(cpp);\n \t\t\treturn NULL;\n \t\t}\n \t}\n@@ -891,7 +891,7 @@ nfp_cpp_alloc(struct rte_pci_device *dev,\n \t\t\terr = nfp_xpb_readl(cpp, xpbaddr,\n \t\t\t\t\t(uint32_t *)&cpp->imb_cat_table[tgt]);\n \t\t\tif (err < 0) {\n-\t\t\t\tfree(cpp);\n+\t\t\t\trte_free(cpp);\n \t\t\t\treturn NULL;\n \t\t\t}\n \t\t}\n@@ -900,7 +900,7 @@ nfp_cpp_alloc(struct rte_pci_device *dev,\n \terr = nfp_cpp_set_mu_locality_lsb(cpp);\n \tif (err < 0) {\n \t\tPMD_DRV_LOG(ERR, \"Can't calculate MU locality bit offset\");\n-\t\tfree(cpp);\n+\t\trte_free(cpp);\n \t\treturn NULL;\n \t}\n \n@@ -922,7 +922,7 @@ nfp_cpp_free(struct nfp_cpp *cpp)\n \tif (cpp->serial_len != 0)\n \t\tfree(cpp->serial);\n \n-\tfree(cpp);\n+\trte_free(cpp);\n }\n \n /**\ndiff --git a/drivers/net/nfp/nfpcore/nfp_hwinfo.c b/drivers/net/nfp/nfpcore/nfp_hwinfo.c\nindex f5579ab60f..7abf9c7700 100644\n--- a/drivers/net/nfp/nfpcore/nfp_hwinfo.c\n+++ b/drivers/net/nfp/nfpcore/nfp_hwinfo.c\n@@ -109,7 +109,7 @@ nfp_hwinfo_try_fetch(struct nfp_cpp *cpp,\n \tif (*cpp_size < HWINFO_SIZE_MIN)\n \t\treturn NULL;\n \n-\tdb = malloc(*cpp_size + 1);\n+\tdb = rte_zmalloc(NULL, *cpp_size + 1, 0);\n \tif (db == NULL)\n \t\treturn NULL;\n \n@@ -134,7 +134,7 @@ nfp_hwinfo_try_fetch(struct nfp_cpp *cpp,\n \n \treturn (void *)db;\n exit_free:\n-\tfree(db);\n+\trte_free(db);\n \treturn NULL;\n }\n \n@@ -175,7 +175,7 @@ nfp_hwinfo_read(struct nfp_cpp *cpp)\n \n \terr = nfp_hwinfo_db_validate(db, hwdb_size);\n \tif (err != 0) {\n-\t\tfree(db);\n+\t\trte_free(db);\n \t\treturn NULL;\n \t}\n \treturn db;\ndiff --git a/drivers/net/nfp/nfpcore/nfp_mip.c b/drivers/net/nfp/nfpcore/nfp_mip.c\nindex 0892c99e96..3c59582846 100644\n--- a/drivers/net/nfp/nfpcore/nfp_mip.c\n+++ b/drivers/net/nfp/nfpcore/nfp_mip.c\n@@ -104,14 +104,14 @@ nfp_mip_open(struct nfp_cpp *cpp)\n \tint err;\n \tstruct nfp_mip *mip;\n \n-\tmip = malloc(sizeof(*mip));\n+\tmip = rte_zmalloc(NULL, sizeof(*mip), 0);\n \tif (mip == NULL)\n \t\treturn NULL;\n \n \terr = nfp_mip_read_resource(cpp, mip);\n \tif (err != 0) {\n \t\tPMD_DRV_LOG(ERR, \"Failed to read MIP resource\");\n-\t\tfree(mip);\n+\t\trte_free(mip);\n \t\treturn NULL;\n \t}\n \n@@ -123,7 +123,7 @@ nfp_mip_open(struct nfp_cpp *cpp)\n void\n nfp_mip_close(struct nfp_mip *mip)\n {\n-\tfree(mip);\n+\trte_free(mip);\n }\n \n const char *\ndiff --git a/drivers/net/nfp/nfpcore/nfp_mutex.c b/drivers/net/nfp/nfpcore/nfp_mutex.c\nindex 404d4fa938..5392924cf0 100644\n--- a/drivers/net/nfp/nfpcore/nfp_mutex.c\n+++ b/drivers/net/nfp/nfpcore/nfp_mutex.c\n@@ -163,7 +163,7 @@ nfp_cpp_mutex_alloc(struct nfp_cpp *cpp,\n \tif (tmp != key)\n \t\treturn NULL;\n \n-\tmutex = calloc(sizeof(*mutex), 1);\n+\tmutex = rte_zmalloc(NULL, sizeof(*mutex), 0);\n \tif (mutex == NULL)\n \t\treturn NULL;\n \n@@ -209,7 +209,7 @@ nfp_cpp_mutex_free(struct nfp_cpp_mutex *mutex)\n \tif (mutex->cpp && mutex == mutex->cpp->mutex_cache)\n \t\tmutex->cpp->mutex_cache = mutex->next;\n \n-\tfree(mutex);\n+\trte_free(mutex);\n }\n \n /**\ndiff --git a/drivers/net/nfp/nfpcore/nfp_nffw.c b/drivers/net/nfp/nfpcore/nfp_nffw.c\nindex 5f004e3b21..038f19c261 100644\n--- a/drivers/net/nfp/nfpcore/nfp_nffw.c\n+++ b/drivers/net/nfp/nfpcore/nfp_nffw.c\n@@ -129,12 +129,10 @@ nfp_nffw_info_open(struct nfp_cpp *cpp)\n \tstruct nfp_nffw_info *state;\n \tstruct nfp_nffw_info_data *fwinf;\n \n-\tstate = malloc(sizeof(*state));\n+\tstate = rte_zmalloc(NULL, sizeof(*state), 0);\n \tif (state == NULL)\n \t\treturn NULL;\n \n-\tmemset(state, 0, sizeof(*state));\n-\n \tstate->res = nfp_resource_acquire(cpp, NFP_RESOURCE_NFP_NFFW);\n \tif (state->res == NULL) {\n \t\tPMD_DRV_LOG(ERR, \"NFFW - acquire resource failed\");\n@@ -167,7 +165,7 @@ nfp_nffw_info_open(struct nfp_cpp *cpp)\n err_release:\n \tnfp_resource_release(state->res);\n err_free:\n-\tfree(state);\n+\trte_free(state);\n \treturn NULL;\n }\n \n@@ -181,7 +179,7 @@ void\n nfp_nffw_info_close(struct nfp_nffw_info *state)\n {\n \tnfp_resource_release(state->res);\n-\tfree(state);\n+\trte_free(state);\n }\n \n /**\ndiff --git a/drivers/net/nfp/nfpcore/nfp_nsp.c b/drivers/net/nfp/nfpcore/nfp_nsp.c\nindex 039e4729bd..dd2d19936d 100644\n--- a/drivers/net/nfp/nfpcore/nfp_nsp.c\n+++ b/drivers/net/nfp/nfpcore/nfp_nsp.c\n@@ -128,12 +128,12 @@ nfp_nsp_open(struct nfp_cpp *cpp)\n \t\treturn NULL;\n \t}\n \n-\tstate = malloc(sizeof(*state));\n+\tstate = rte_zmalloc(NULL, sizeof(*state), 0);\n \tif (state == NULL) {\n \t\tnfp_resource_release(res);\n \t\treturn NULL;\n \t}\n-\tmemset(state, 0, sizeof(*state));\n+\n \tstate->cpp = cpp;\n \tstate->res = res;\n \n@@ -157,7 +157,7 @@ void\n nfp_nsp_close(struct nfp_nsp *state)\n {\n \tnfp_resource_release(state->res);\n-\tfree(state);\n+\trte_free(state);\n }\n \n uint16_t\ndiff --git a/drivers/net/nfp/nfpcore/nfp_nsp_cmds.c b/drivers/net/nfp/nfpcore/nfp_nsp_cmds.c\nindex 3081e22dad..54e1e2215d 100644\n--- a/drivers/net/nfp/nfpcore/nfp_nsp_cmds.c\n+++ b/drivers/net/nfp/nfpcore/nfp_nsp_cmds.c\n@@ -33,22 +33,20 @@ __nfp_nsp_identify(struct nfp_nsp *nsp)\n \tif (nfp_nsp_get_abi_ver_minor(nsp) < 15)\n \t\treturn NULL;\n \n-\tni = malloc(sizeof(*ni));\n+\tni = rte_zmalloc(NULL, sizeof(*ni), 0);\n \tif (ni == NULL)\n \t\treturn NULL;\n \n-\tmemset(ni, 0, sizeof(*ni));\n \tret = nfp_nsp_read_identify(nsp, ni, sizeof(*ni));\n \tif (ret < 0) {\n \t\tPMD_DRV_LOG(ERR, \"reading bsp version failed %d\", ret);\n \t\tgoto exit_free;\n \t}\n \n-\tnspi = malloc(sizeof(*nspi));\n+\tnspi = rte_zmalloc(NULL, sizeof(*nspi), 0);\n \tif (nspi == NULL)\n \t\tgoto exit_free;\n \n-\tmemset(nspi, 0, sizeof(*nspi));\n \tmemcpy(nspi->version, ni->version, sizeof(nspi->version));\n \tnspi->version[sizeof(nspi->version) - 1] = '\\0';\n \tnspi->flags = ni->flags;\n@@ -61,7 +59,7 @@ __nfp_nsp_identify(struct nfp_nsp *nsp)\n \tnspi->sensor_mask = rte_le_to_cpu_64(ni->sensor_mask);\n \n exit_free:\n-\tfree(ni);\n+\trte_free(ni);\n \treturn nspi;\n }\n \ndiff --git a/drivers/net/nfp/nfpcore/nfp_nsp_eth.c b/drivers/net/nfp/nfpcore/nfp_nsp_eth.c\nindex cb090d2a47..a56ea4e068 100644\n--- a/drivers/net/nfp/nfpcore/nfp_nsp_eth.c\n+++ b/drivers/net/nfp/nfpcore/nfp_nsp_eth.c\n@@ -253,11 +253,10 @@ __nfp_eth_read_ports(struct nfp_nsp *nsp)\n \tunion eth_table_entry *entries;\n \tconst struct rte_ether_addr *mac;\n \n-\tentries = malloc(NSP_ETH_TABLE_SIZE);\n+\tentries = rte_zmalloc(NULL, NSP_ETH_TABLE_SIZE, 0);\n \tif (entries == NULL)\n \t\treturn NULL;\n \n-\tmemset(entries, 0, NSP_ETH_TABLE_SIZE);\n \tret = nfp_nsp_read_eth_table(nsp, entries, NSP_ETH_TABLE_SIZE);\n \tif (ret < 0) {\n \t\tPMD_DRV_LOG(ERR, \"Reading port table failed %d\", ret);\n@@ -287,11 +286,10 @@ __nfp_eth_read_ports(struct nfp_nsp *nsp)\n \t}\n \n \ttable_sz = sizeof(*table) + sizeof(struct nfp_eth_table_port) * cnt;\n-\ttable = malloc(table_sz);\n+\ttable = rte_zmalloc(NULL, table_sz, 0);\n \tif (table == NULL)\n \t\tgoto err;\n \n-\tmemset(table, 0, table_sz);\n \ttable->count = cnt;\n \tfor (i = 0, j = 0; i < NSP_ETH_MAX_COUNT; i++) {\n \t\tmac = (const struct rte_ether_addr *)entries[i].mac_addr;\n@@ -305,12 +303,12 @@ __nfp_eth_read_ports(struct nfp_nsp *nsp)\n \tfor (i = 0; i < table->count; i++)\n \t\tnfp_eth_calc_port_type(&table->ports[i]);\n \n-\tfree(entries);\n+\trte_free(entries);\n \n \treturn table;\n \n err:\n-\tfree(entries);\n+\trte_free(entries);\n \treturn NULL;\n }\n \n@@ -349,14 +347,13 @@ nfp_eth_config_start(struct nfp_cpp *cpp,\n \tstruct nfp_nsp *nsp;\n \tunion eth_table_entry *entries;\n \n-\tentries = malloc(NSP_ETH_TABLE_SIZE);\n+\tentries = rte_zmalloc(NULL, NSP_ETH_TABLE_SIZE, 0);\n \tif (entries == NULL)\n \t\treturn NULL;\n \n-\tmemset(entries, 0, NSP_ETH_TABLE_SIZE);\n \tnsp = nfp_nsp_open(cpp);\n \tif (nsp == NULL) {\n-\t\tfree(entries);\n+\t\trte_free(entries);\n \t\treturn nsp;\n \t}\n \n@@ -376,7 +373,7 @@ nfp_eth_config_start(struct nfp_cpp *cpp,\n \n err:\n \tnfp_nsp_close(nsp);\n-\tfree(entries);\n+\trte_free(entries);\n \treturn NULL;\n }\n \n@@ -388,7 +385,7 @@ nfp_eth_config_cleanup_end(struct nfp_nsp *nsp)\n \tnfp_nsp_config_set_modified(nsp, 0);\n \tnfp_nsp_config_clear_state(nsp);\n \tnfp_nsp_close(nsp);\n-\tfree(entries);\n+\trte_free(entries);\n }\n \n /**\ndiff --git a/drivers/net/nfp/nfpcore/nfp_resource.c b/drivers/net/nfp/nfpcore/nfp_resource.c\nindex bdebf5c3aa..8ba3784f8a 100644\n--- a/drivers/net/nfp/nfpcore/nfp_resource.c\n+++ b/drivers/net/nfp/nfpcore/nfp_resource.c\n@@ -161,19 +161,17 @@ nfp_resource_acquire(struct nfp_cpp *cpp,\n \tstruct nfp_resource *res;\n \tstruct nfp_cpp_mutex *dev_mutex;\n \n-\tres = malloc(sizeof(*res));\n+\tres = rte_zmalloc(NULL, sizeof(*res), 0);\n \tif (res == NULL)\n \t\treturn NULL;\n \n-\tmemset(res, 0, sizeof(*res));\n-\n \tstrncpy(res->name, name, NFP_RESOURCE_ENTRY_NAME_SZ);\n \n \tdev_mutex = nfp_cpp_mutex_alloc(cpp, NFP_RESOURCE_TBL_TARGET,\n \t\t\tNFP_RESOURCE_TBL_BASE, NFP_RESOURCE_TBL_KEY);\n \tif (dev_mutex == NULL) {\n \t\tPMD_DRV_LOG(ERR, \"RESOURCE - CPP mutex alloc failed\");\n-\t\tfree(res);\n+\t\trte_free(res);\n \t\treturn NULL;\n \t}\n \n@@ -204,7 +202,7 @@ nfp_resource_acquire(struct nfp_cpp *cpp,\n \n err_free:\n \tnfp_cpp_mutex_free(dev_mutex);\n-\tfree(res);\n+\trte_free(res);\n \treturn NULL;\n }\n \n@@ -221,7 +219,7 @@ nfp_resource_release(struct nfp_resource *res)\n {\n \tnfp_cpp_mutex_unlock(res->mutex);\n \tnfp_cpp_mutex_free(res->mutex);\n-\tfree(res);\n+\trte_free(res);\n }\n \n /**\n",
    "prefixes": [
        "v3",
        "08/27"
    ]
}