From patchwork Tue Oct 10 07:01:55 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Shreyansh Jain X-Patchwork-Id: 30024 Return-Path: X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 72C641B25D; Tue, 10 Oct 2017 08:49:51 +0200 (CEST) Received: from NAM01-SN1-obe.outbound.protection.outlook.com (mail-sn1nam01on0077.outbound.protection.outlook.com [104.47.32.77]) by dpdk.org (Postfix) with ESMTP id 775F21B25A for ; Tue, 10 Oct 2017 08:49:49 +0200 (CEST) Received: from CY4PR03CA0086.namprd03.prod.outlook.com (2603:10b6:910:4d::27) by SN2PR03MB2365.namprd03.prod.outlook.com (2603:10b6:804:e::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.77.7; Tue, 10 Oct 2017 06:49:48 +0000 Received: from BN1AFFO11FD022.protection.gbl (2a01:111:f400:7c10::111) by CY4PR03CA0086.outlook.office365.com (2603:10b6:910:4d::27) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.77.7 via Frontend Transport; Tue, 10 Oct 2017 06:49:48 +0000 Authentication-Results: spf=fail (sender IP is 192.88.158.2) smtp.mailfrom=nxp.com; nxp1.onmicrosoft.com; dkim=none (message not signed) header.d=none;nxp1.onmicrosoft.com; dmarc=fail action=none header.from=nxp.com; Received-SPF: Fail (protection.outlook.com: domain of nxp.com does not designate 192.88.158.2 as permitted sender) receiver=protection.outlook.com; client-ip=192.88.158.2; helo=az84smr01.freescale.net; Received: from az84smr01.freescale.net (192.88.158.2) by BN1AFFO11FD022.mail.protection.outlook.com (10.58.52.82) with Microsoft SMTP Server (version=TLS1_0, cipher=TLS_RSA_WITH_AES_256_CBC_SHA) id 15.20.77.10 via Frontend Transport; Tue, 10 Oct 2017 06:49:47 +0000 Received: from Tophie.ap.freescale.net ([10.232.14.39]) by az84smr01.freescale.net (8.14.3/8.14.0) with ESMTP id v9A6nhmw010987; Mon, 9 Oct 2017 23:49:44 -0700 From: Shreyansh Jain To: CC: , , , Shreyansh Jain Date: Tue, 10 Oct 2017 12:31:55 +0530 Message-ID: <20171010070155.17412-1-shreyansh.jain@nxp.com> X-Mailer: git-send-email 2.9.3 X-EOPAttributedMessage: 0 X-Matching-Connectors: 131520917878856691; (91ab9b29-cfa4-454e-5278-08d120cd25b8); () X-Forefront-Antispam-Report: CIP:192.88.158.2; IPV:NLI; CTRY:US; EFV:NLI; SFV:NSPM; SFS:(10009020)(6009001)(336005)(39380400002)(39860400002)(376002)(346002)(2980300002)(1110001)(1109001)(339900001)(199003)(189002)(50226002)(33646002)(356003)(81166006)(4326008)(69596002)(305945005)(2906002)(1076002)(2351001)(316002)(104016004)(16586007)(498600001)(97736004)(8676002)(81156014)(54906003)(85426001)(8936002)(53936002)(8656003)(189998001)(575784001)(50986999)(5003940100001)(50466002)(48376002)(36756003)(86362001)(68736007)(47776003)(5660300001)(106466001)(105606002)(6916009)(6666003)(77096006); DIR:OUT; SFP:1101; SCL:1; SRVR:SN2PR03MB2365; H:az84smr01.freescale.net; FPR:; SPF:Fail; PTR:InfoDomainNonexistent; A:1; MX:1; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; BN1AFFO11FD022; 1:zt5UHMcng/7lofdZ3/CVwtrelbgWdpbQpewJ3r0UlngUskojVpPWTLVtRUPE4k+7spAaLnWvIx0aQhTpW+/5hkAh8+QATZXghS1ISV+f2meIe9a8ckpWlhhn9jB4O6uj MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: f3f985e5-7758-472f-7a92-08d50fab1928 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001)(2017052603199)(201703131430075)(201703131517081); SRVR:SN2PR03MB2365; X-Microsoft-Exchange-Diagnostics: 1; SN2PR03MB2365; 3:8IHny2qJKnzgGK0ZitG7p/2PaSG0hpE+v+zxUw5aX3rvoK2yPJBxCWUEqjSpC2j94JTZTy/ylpmtq3dEofMmldiuQjQD/nx05rGWoFl4Z/Upq3L6cSpsuugtCHHVedvj0pucEDV8ucN3ko8pSMSUM4+OMbO0KyyKKUgkpkVCzrRLV7fRYkhruBkY5+pK3kub9ogXRCiM4riFe92xLMZNgs28SPBl1xnR14yNxzHQ3RUPoJoUbDFC+UCbmnUQQn7yb2m+ofFqXoYKkMxniMuL+5U4v599J2izoOoBZwErQmFnLEVjto8cLe6v7q8knkxZmZ+F12bMq+XGvZIMz6B38A==; 25:Cypv+LM1Xkfb/X4zbXfh4/nOgbUmIUWaX+lQwOKSR5kCAx8kNWOhQ1ED47leUEowcIJmwdp9uGhIKR6KZzJyxTW24Zk7HGjzw33LoM5sKuNBXDVCo+zeWPj208mns9z+Vii1iQRf6jFhY9XNJKoPsuH/6WJSmQniLb8LsXRVN1+f5EH2oKnhlH9GTo42QK0i5suUbg1r/Fgs6LG7rpH/dwpGOe037uXm10Pw+5UAa2SBBGLIo7jGZFJIwZ+nlz3MuGNizVedO6mcEJmO8AQWOQgKXIGxVv9zvQ6sICgcLF1TJ530g1x3xJALIgeiErLNsb2pXN0CCLOmJ4NTf1QSDg==; 31:Gd2uJlv4v6aQa+H76B0CCoK4fovDZosteGoivjf1dOFv7383dgMTPILx2h+Q65JUeIx1GnUeW8EH6F1HDiTr0nF9ALkAfcsQ/+i07i2gnX4Kq4P0L3RW+iklGNt1BZ1Eam1OEyhbtuTfD76KWyBR5JWhpla5uUp6LvbRLVVjULe/l8+5TBoP+7qQFSUrwoLoTZe1sVQDMfjglceCr/YrGh6nTkmD38lgHN1Fgp36sko= X-MS-TrafficTypeDiagnostic: SN2PR03MB2365: X-Exchange-Antispam-Report-Test: UriScan:(185117386973197); X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6095135)(2401047)(8121501046)(5005006)(100000703101)(100105400095)(93006095)(93001095)(3002001)(10201501046)(6055026)(6096035)(20161123559100)(20161123556025)(20161123561025)(20161123563025)(201703131430075)(201703131433075)(201703131448075)(201703161259150)(201703151042153)(20161123565025)(201708071742011)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:SN2PR03MB2365; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(400006)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:SN2PR03MB2365; X-Microsoft-Exchange-Diagnostics: 1; SN2PR03MB2365; 4:lzdTIO+wypLI/+QxkBcb7ZKVjYJpFxd5oXQ4ooULlAwSoPBquLpLy2eOe3VsZPLhzoW0exkdZoUqDui5W+mX+OElnMLM/1jPdYZG/bqbh0G7uddgLedZDDbtK8+XQRmTlzmZcJzfkO/2/s1FzLuFWLRP7rLZZYvlAxcnko3lkfH1TOzFRJMgDnf5sYwyWWdwIcSxS0PcGfV2dsufzFnDgOktRutaCxrPgL79hYiPr9G6PA626ntWiR2/U+1u9ZdG1hBX5I+Sj+B+7RI+qNo3SHPpGjQ3Yu++VTps+ufn+/4= X-Forefront-PRVS: 04569283F9 X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; SN2PR03MB2365; 23:Pur/1xr0fBZxFkRQCgkXMkJtdUJzyhiF5boU12g3y?= WaJmaynERFsIgcgDj0rWpd0eSAPLcjBkhPH5//EqxvPB89cd6OXoeoRUnJjjDapKfYsDX4LIXvNKQaS9d4t/hCshtOppJXBMCeM94df5N3urAItYPI/gXo6w+VNupwy9SeDj/bWsu59/mfKc/y/PeKW2OIvYMkXZb5Pxo+smxeBwMVn10AjgrZHUio3OrglrNAc4zNA06H+9gnlH6HMOkZajPRqpnsF9Q8vFDlvn1S5hkziy1jdpkI5xcmBu/iN1hsE9KJj3h4O3mLe7xeFFMmwqDIcZ+Fhw6wJ+qe610i8qkRqNQyfLf2rjGH0g/6smMwvOp28z+aH9Ynj7Q8rfdQmzIfcctSv2eCa+fKtPpB/68QuzkmPlavc0nqR2JhMl0qXS4DNHj/L0l0/okl1XU5EepjMc9mVkp94FpZQaq1WE/RV0l+Dgi5+S/IGFk8a2WS7CSFb1mUvvEoxWFYs/D7JC47S9wQ6WHXeqwwqTENvozOQY+o20Idgaba+/MemBj8dzJ1ufCt98lS+/ET8pC6pI+Phq84uvDI88rK1b+4M8c1rg9esKiv3CAMJrXsu337ereNCK/MCH5NarVMrFmDREkGFtM4jc5P1f7aw7hbiNz9nWXZjZfjE80XnJD8k0/h2TL1C31R+mZ5aeOXUcvM2tywOaOtEYDJBBF0tBCZZ0PIJuoO8qRntGs7h+BgPPOxN/wLvp3oVt6tDJvisUoaKL1/RTWBHo31zeFIBLchpUU4j+lkRCbL53IY6iwbth3ZQ4v9nnRk52Q2pb878e0E0T3zPkG0OCMNojt1aCK5WvaC1uD8J0fQ3MeduvrwO6Zzkdkh1NuDF2bjh0O9kH9XRnnM6pphSDhJ2pIVJiC5F46CgTH556lcUYtF/AAC5sgz9Gm/oJTPPOArQwzLr9cS5p2+GarEZzyMQfjUQLscU2PS5Ygj1um1nlH25NCcoXNm681bYTiw+OzNf/Lympx2/fzcK5EqpfXBiTGw53EEIuGD+KvLVVYQefNcegDszikLcsobfUPXlZOcDO99WmJX3kLmTe5UvX57ySuNbp3bEIJI3oaJo8L2XpAJn9FZBLAqCn+pcocLk1TWPZ+4pehrNufjWT2VCQjjw2z6XgRbHwDzMoqw/RGMqFgoAPpW+uyE= X-Microsoft-Exchange-Diagnostics: 1; SN2PR03MB2365; 6:pZYAPyyW35qYNsPPMGZNHnr5LM63LxpxfdO+aPK17sOAiaAuBQVCsX3kIU7UvMwoleU5fH6P7ZEvw8iPsGsvN3EVyguqcTg13UTF9EUOX3Sy/0W9gfj9IV96Rzde/KCEd4I9wSHYFWc1geHlFWs2CXxCzaFR2ADGvRg4YvSZ3dcLR+eQXV1FW7EXKlwuel3l3OrjX7es03i+mUTgsjEi+HaPyuea0tUnHw0m09RjoI452d1FrhHR4PQH2ILTG3aJh+pkvsTx/QYLKfvdBsWPkkwiaAu82OMyzCLh+zGAlrHviirJ50VdSi+3ssHlv415oyDZQdSDNsrsOw+qNJJkRg==; 5:ftBIziro73cIdHLxALrcUcq/4SfxCYAbIsUfWK6lXyI0WtVRJGN/C6wWSZo8glN4v3XFAHvx71Fkhd63x6E1y6yyzj/aAYGL1KexHwtiz4sM4EWjgzvmQfJY7UnOsF0JZDtpV4Il9UeVQQ4qcOAmiA==; 24:3rEpA6180UZjO6Ix2ESaXZZ+Dyv37ofTQv4UhWPXDypB/qhODMakxAEdr8vu5APuqezMcKB/6vmlOLo5HfkYS57rtzs05gta3FEyY/UnwS8=; 7:cGhoxfOPapCXlKsoZ8Szq4Zu4fqT3/lUePfZU/1W01HL6ywN1z/OiPNp68i6b/AgQoowjAAPoYdfOKsMd3WfYlTNKz7JezQQHLYu4p9Br8i4rkqVePOsrDZugUbeDRJRdoE2FncgRGF8kvoNtoB/qCWuuSb960cuS+0pnmvFLKcYjzqBIXmcBSUF8V8ETFTguhF7dNyyk8977sas1shQEet81waza+PpcfOpz7zi3hA= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-MS-Exchange-CrossTenant-OriginalArrivalTime: 10 Oct 2017 06:49:47.6516 (UTC) X-MS-Exchange-CrossTenant-Id: 5afe0b00-7697-4969-b663-5eab37d5f47e X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=5afe0b00-7697-4969-b663-5eab37d5f47e; Ip=[192.88.158.2]; Helo=[az84smr01.freescale.net] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN2PR03MB2365 Subject: [dpdk-dev] [PATCH] bus/dpaa: fix memory allocation during bus scan 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" Fixes: 5b22cf744689 ("bus/dpaa: introducing FMan configurations") Fixes: 37f9b54bd3cf ("net/dpaa: support Tx and Rx queue setup") Cc: shreyansh.jain@nxp.com With the IOVA auto detection changes, bus scan is performed before memory initialization. DPAA bus scan must not use rte_malloc in its path. Signed-off-by: Shreyansh Jain --- drivers/bus/dpaa/base/fman/fman.c | 15 ++++++++------- drivers/net/dpaa/dpaa_ethdev.c | 2 +- 2 files changed, 9 insertions(+), 8 deletions(-) diff --git a/drivers/bus/dpaa/base/fman/fman.c b/drivers/bus/dpaa/base/fman/fman.c index d0a8ee4..3816dba 100644 --- a/drivers/bus/dpaa/base/fman/fman.c +++ b/drivers/bus/dpaa/base/fman/fman.c @@ -42,8 +42,6 @@ #include #include -#include - /* This header declares the driver interface we implement */ #include #include @@ -72,15 +70,18 @@ if_destructor(struct __fman_if *__if) { struct fman_if_bpool *bp, *tmpbp; + if (!__if) + return; + if (__if->__if.mac_type == fman_offline) goto cleanup; list_for_each_entry_safe(bp, tmpbp, &__if->__if.bpool_list, node) { list_del(&bp->node); - rte_free(bp); + free(bp); } cleanup: - rte_free(__if); + free(__if); } static int @@ -208,7 +209,7 @@ fman_if_init(const struct device_node *dpa_node) mprop = "fsl,fman-mac"; /* Allocate an object for this network interface */ - __if = rte_malloc(NULL, sizeof(*__if), RTE_CACHE_LINE_SIZE); + __if = malloc(sizeof(*__if)); if (!__if) { FMAN_ERR(-ENOMEM, "malloc(%zu)\n", sizeof(*__if)); goto err; @@ -464,7 +465,7 @@ fman_if_init(const struct device_node *dpa_node) uint64_t bpool_host[6] = {0}; const char *pname; /* Allocate an object for the pool */ - bpool = rte_malloc(NULL, sizeof(*bpool), RTE_CACHE_LINE_SIZE); + bpool = malloc(sizeof(*bpool)); if (!bpool) { FMAN_ERR(-ENOMEM, "malloc(%zu)\n", sizeof(*bpool)); goto err; @@ -603,7 +604,7 @@ fman_finish(void) -errno, strerror(errno)); printf("Tearing down %s\n", __if->node_path); list_del(&__if->__if.node); - rte_free(__if); + free(__if); } close(fman_ccsr_map_fd); diff --git a/drivers/net/dpaa/dpaa_ethdev.c b/drivers/net/dpaa/dpaa_ethdev.c index 8dad97e..9f33e44 100644 --- a/drivers/net/dpaa/dpaa_ethdev.c +++ b/drivers/net/dpaa/dpaa_ethdev.c @@ -921,7 +921,7 @@ dpaa_dev_init(struct rte_eth_dev *eth_dev) /* reset bpool list, initialize bpool dynamically */ list_for_each_entry_safe(bp, tmp_bp, &cfg->fman_if->bpool_list, node) { list_del(&bp->node); - rte_free(bp); + free(bp); } /* Populate ethdev structure */