From patchwork Mon Aug 1 07:02:42 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Peter Chen X-Patchwork-Id: 654543 X-Patchwork-Delegate: davem@davemloft.net Return-Path: X-Original-To: davem@davemloft.net Delivered-To: davem-davemloft@shards.monkeyblade.net Received: from NAM02-BL2-obe.outbound.protection.outlook.com (mail-bl2nam02on0075.outbound.protection.outlook.com [104.47.38.75]) by shards.monkeyblade.net (Postfix) with ESMTPS id E2738598F73 for ; Mon, 1 Aug 2016 00:12:44 -0700 (PDT) Received: from DM2PR03CA0010.namprd03.prod.outlook.com (10.141.96.20) by BLUPR0301MB2050.namprd03.prod.outlook.com (10.164.22.140) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.549.15; Mon, 1 Aug 2016 07:12:42 +0000 Received: from BL2FFO11FD009.protection.gbl (2a01:111:f400:7c09::135) by DM2PR03CA0010.outlook.office365.com (2a01:111:e400:2428::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.549.15 via Frontend Transport; Mon, 1 Aug 2016 07:12:41 +0000 Authentication-Results: spf=fail (sender IP is 192.88.158.2) smtp.mailfrom=nxp.com; nxp.com; dkim=none (message not signed) header.d=none; nxp.com; dmarc=fail action=none header.from=nxp.com; nxp.com; dkim=none (message not signed) header.d=none; 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 BL2FFO11FD009.mail.protection.outlook.com (10.173.161.15) with Microsoft SMTP Server (version=TLS1_0, cipher=TLS_RSA_WITH_AES_256_CBC_SHA) id 15.1.549.5 via Frontend Transport; Mon, 1 Aug 2016 07:12:42 +0000 Received: from shlinux2.ap.freescale.net (shlinux2.ap.freescale.net [10.192.224.44]) by az84smr01.freescale.net (8.14.3/8.14.0) with ESMTP id u717BL23013140; Mon, 1 Aug 2016 00:12:36 -0700 From: Peter Chen To: CC: , , , , , , , , , , , , , , , , , Peter Chen Subject: [PATCH v2 14/15] ethernet: stmicro: stmmac: add missing of_node_put after calling of_parse_phandle Date: Mon, 1 Aug 2016 15:02:42 +0800 Message-ID: <1470034963-30506-15-git-send-email-peter.chen@nxp.com> X-Mailer: git-send-email 1.9.1 In-Reply-To: <1470034963-30506-1-git-send-email-peter.chen@nxp.com> References: <1470034963-30506-1-git-send-email-peter.chen@nxp.com> X-EOPAttributedMessage: 0 X-Matching-Connectors: 131145091623767383; (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)(7916002)(2980300002)(1109001)(1110001)(339900001)(199003)(189002)(47776003)(48376002)(81166006)(4326007)(2906002)(8676002)(81156014)(8936002)(50226002)(586003)(105606002)(19580405001)(69596002)(5003940100001)(92566002)(87936001)(85426001)(229853001)(2351001)(106466001)(50466002)(189998001)(76176999)(50986999)(36756003)(19580395003)(97736004)(110136002)(575784001)(86362001)(7416002)(77096005)(33646002)(68736007)(2950100001)(356003)(8666005)(7846002)(305945005)(104016004)(7059030); DIR:OUT; SFP:1101; SCL:1; SRVR:BLUPR0301MB2050; H:az84smr01.freescale.net; FPR:; SPF:Fail; PTR:InfoDomainNonexistent; A:1; MX:1; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; BL2FFO11FD009; 1:+2IeHHqgyFyGRYQ6jjI8CzswrsRQnHYhZAydMdCf3K3Hzi5BpOO2oqObKwXOiTng53XgrgLIK9OMq79VzY3je41YJ9VSiy0KC2Cym+Foa1rn7GRu60t583MMr8/mIlpKEjeHbdawn+/BeR+9Er2RZKKPrK8wNgoQ+aGNmzjL3BObIMS2pphu7DANCPyMVRp5p1K0IsNfCFYfOy/mfo0Umzwy8UH2oOXYapQetGDC18sQCKq25AR5boAQj2fTMJdCIwYj1HG8zuXt4ha4jzPm1q12rYDNr5k0T7eHrjmu2de5oIAkJwTKKWZGMAcpzO2RaOODBGDI56R8JKeSdIiVb/6uqzQdf8KHfOQf+fLd19eLT1srjXR/UXbh3LFKXNzO45luqmGl8wHCloRQPS7ucTiYvIlGbJ3uA7bL/00276HAz5G9RqqEtGSZrkNM3tnJtxR3/YcOFdKB10jEPqptujo8UEszuBThGulQV7YQ8DGdWZxqQ7i21I1sGoscNa67rOrFHppzdfJvuCVoYa0fMpPNl8ijVVx5SbYw562uUGATIN/K1WefUSAQ4+FHfmLpScZ8+4mbnRzVighldBG52psCH32ZPmnEVxJP1Ku60oYEiKyIhVlh1rspikf02eB+7ErSgSJ8tc4G0YnL1IOmIpH1jGF/ZYuBk7NDlER3MBPBNKeg2hhHAy99Z7GEm++ug620tpnIP+q6vOFpuVYNqo5Sn83cqECnKVMtHXfcU54= MIME-Version: 1.0 X-MS-Office365-Filtering-Correlation-Id: 168ecf59-68a8-4a35-ebf6-08d3b9db3ab9 X-Microsoft-Exchange-Diagnostics: 1; BLUPR0301MB2050; 2:Y/UvK9Hi38fwt1FevhvJDL/NduzhAw6jAL68rFP48//sJ+EfKlavtFpLCTWrrZZTWLLdoiaYV7aafkjTIiMqv6l2ys/KasbsmmoqtfPSyHrOf/j0tXyTt91+h3x1dwz98Eg0Wp4q04ymonHgytZ+KVxw9YA9uD7FZsdaJfglNru8Gsz6m30vycoXQnd7MiN+; 3:Co8/NhsMGVip5j90RN9yrsRt4i0MzME3iqVzLobfOnaqGlelr/rJJmjYcR2yx02sfrStuwI+W7MDj8khBJsn/m4PhDs5VxoQ0PEi0SP70RuxswxzPyXJTq0fcC4LYEmrFW/joprumidoWMjitWq44uJMvWWueB5Ofhpkl5d665jQ2KtI2I9/NITr4DORNsNoAuBVH5RaFPqzp4XNfUv6yuIAFjyUrJSk38d6Q6uzaEs= X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:BLUPR0301MB2050; X-Microsoft-Exchange-Diagnostics: 1; BLUPR0301MB2050; 25:Zi4vsZ89EId4EoNS3Qj9dBQ9MA7TVMnbWpRSydyFFTzFw1P8DUsFENAl+8q05jraw0VZGFR68fNkNk+0zx29Ta8sAu6o3+ExDCug6BPHwmIN+jzsSbF6V1lDsWtxDU2GFxf5fV/0fWl8m0J70pvq5sN2ud93ovtLJetwfS+0GJjW0q6FE71fzL06Q4LJBQBF7moGU4tL47Wl1hZRyDaCzen8O0aDVjBuA84kH2OlgDhN1r0UTTrJpv6+ws8WwYb+XI6i+AVG6G5QeLh2tC9JPgkBQ9d7dmRikpM4fLlX3/lJSkpND9Q80OxcMu6sGni2vi/fSopfw3dMc9JbVTt7yZtsCo8XBJwkbdPrgjJ/SIkDlNfl4MEpqjGcTxHYe3uyY/EbBhlu7Vk0NZh3HYLJMF0rm6G6vnf5yOHHCVDj9UL5ZReB01I6e6YauaHJ9IH/kZl6mm20I7Db63F8uzscMrFJRrVywbhPVhn1cJk1F1l2pGUiAkFY2c0qmJp1+OlT9KMQhYeLpsyoCPrAMNhEV7QETcfQaYhIFIB/uatfg1xGERIUm7BOpZ++77Dr6sOam6E1kBjKv16u5Stizsey2ptLOarumSfqNkV0Bbv99OgVZ4q0iNJqQH9i8746fwOnrCltQvqZ20N5Zr3iGbGmo+CsOY4a8eRI4wyIqs6zA0qmXphSUioFaGhddZJu6Oi4b5LGtTzXHOc03fm6YvMBxJee0tNY88ndUDmQalTy93o=; 31:Wd5Tgv803s+Ju6Rmb/riLRBegpoP7yV78+NEmHyAIy9gNuslEL63H5uodScbCWrtnUjQIBw4Z7UbVjEYVfph0qDv1hf+rm2OF+2U0JQG6AWkivxtq5HQDILQ9IjFOyDaB7GPDOdGo5wchRMfmpVZJADLfmqJnvsVtbv//d5dN7gyN22AIHH955Y7oJlM+d+Q3fFrFtXbL4KxPwHkXnQFvA== X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(185117386973197); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(601004)(2401047)(13023025)(13024025)(13015025)(13018025)(13017025)(8121501046)(5005006)(10201501046)(3002001)(6055026); SRVR:BLUPR0301MB2050; BCL:0; PCL:0; RULEID:(400006); SRVR:BLUPR0301MB2050; X-Microsoft-Exchange-Diagnostics: 1; BLUPR0301MB2050; 4:p41OrCGvC1A7f5VnQCMYQDGKzNwhZ8POC1tba2lQzc8ku22r0+ReQaWzQ94WWwyWjG67LAOgsuzEk/wvKiDyZKipXAPGCsF6rNKLEPMUclN4HZrIIL2WwAPmYX0JvZvtW1/Wp5FYY+C5EjFdfJ01MzfBsA1XCYxM/1J/kW77kPwnR/AW+PWu8s5gJMz9W6zXwW90kfI5PnZfeQArn64NAFM6NxR+bv3EZLM1xDirVKX51OQ5gm0OOovLfdm5RPi6E7vD3pZgMk46UkUufmgdSmfGs2/sN50tbAZrUQfd8AUec5ehdPHW/PVz2N/nIvq4lFPTNcmMYCYJeQhhAP7i8MmrIFeCAsOEWXbDVRDt/hX22KJ/oZ+ILsBO5LECzSmAKMMRyUQDHKMcVNmNrj/xrG4gK1bdqsMBbfKhVLrSEXQOHUHtHGNeNpO7FMcCek7qbtBwOh3kX4yWZpFe93mhcboUVEuAcQ5tkeJXSPhcq/UcM1ZJStyX+jrT8ksIxJ0ok4aqnE2b7adrZwb9uTYDmg== X-Forefront-PRVS: 0021920B5A X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; BLUPR0301MB2050; 23:5qAaZ8Kzfv2lqIB6hh80sENC7KDUm+yKvcCn+bI?= =?us-ascii?Q?F20b3a/zbPxTr6MUBYlM/QzDhGMJPaDTPWd4JIN139UnyqsROkS2pETjCUGu?= =?us-ascii?Q?zSNtRizQ5sSROja7Acpv6IcHYZdxb0o9BhJGemwhIn8lxs529ZIXGVRdvtQG?= =?us-ascii?Q?zxBpQRn/D3B/qa8jiurk+NM0G1ArnhrzO6/ZIiUatyUX7OMxEXGJ1SfaoJBA?= =?us-ascii?Q?HtDkicxJE542z3YomTxdRFlzvJMu70UbftobZJBdRrLreFHNI7N5D0MsNM2e?= =?us-ascii?Q?kjww9Y7II7VGrWGOd1lWRXXra7NVzc4XqZ5ETUqb8zfmYquSCIu0xlySi1CM?= =?us-ascii?Q?5g9epOulkr4IhlUfEJFahJ90APIhJSxmRO/pQ6Y7d/fAv/VJ6wjixt42C+0G?= =?us-ascii?Q?SZOORuNOdcX3GUb2U2bwgTKARrdSnLy0dKNpwV3mXGaBk7BNJ6wK0LwfgLtI?= =?us-ascii?Q?veIGMhGkxP9Hk7wMbuXCbdTFWoZsuU5d6BuBKdjHteYUmOOuFyGb03Lp88Ft?= =?us-ascii?Q?hHfpCwEkeFkdHy3mITNfVxjhL3IXF8BQVp/WwGki/SWpDbkxuctQSv/VUX4v?= =?us-ascii?Q?oTzN+rO7Xo1ILdjvLfDJMT9CY5pC3cucuWgqvBd8RLMYztOVygw0UyAE1g6c?= =?us-ascii?Q?60AcqHu2vDKZ8DfoGPbLUU1mNcEgXQubmoX2mLM0nO3EF1YeLJCxhZRIoooj?= =?us-ascii?Q?00cf72a7N9vm5covoi9PWjcGBIjfR8vpc1pxjR6difZSDq6tdAjQMjmrOtSi?= =?us-ascii?Q?m7aRbNoUzC6nLd9s03tJyQ2h+3GtQNMctj3fXDBEWVVTkuF4cD1lyhnHOrCF?= =?us-ascii?Q?NaQXoIKhqAHKpgjzvz6xkXto9yYLwCRQNzGa5grvCtUhVY0DMANd89wILZyJ?= =?us-ascii?Q?J2hcZ/qexVwOLciwKduP8rGg6L278DvWCiXu0lqIkKJC14gDacrKypzTJCik?= =?us-ascii?Q?27UqYB1ypdPmdRpeMcvz+OdBygCGBcEOpIBsL1MoWudamXR+CrRc9aiTZr9F?= =?us-ascii?Q?IciTf9dTcBL50gddcGqwIA5Tm039j6J9nNNBscYVbhtm/+05JK6VTCnv+mFF?= =?us-ascii?Q?rI1uAqJA+6LXkF6UkWcdvgwgCo10TmmQfI7NOaVFL501pcgFgRy/fkyeplB0?= =?us-ascii?Q?OXW39mn+9t+BTXjfjTIO7oGfYnY0hFtZ7OmFpDYGZu6iwupaT5F0uLw=3D?= =?us-ascii?Q?=3D?= X-Microsoft-Exchange-Diagnostics: 1; BLUPR0301MB2050; 6:3Z6012Vl4g6kcOyp+2Oy9NvjChBywppQCwINtBZzHyCdlwg/KV6s6k84Ujcnt6fj2ehMe/6DVo4ZBR7CGtvCCTJgU62kAvsw+koxiwjTRqb1bqVuOMgjPylseOW2IkZ86yDWOvyqEcnCJB14v2FMeLicu5lpq8OfJONHqhsyDRO95ecZeZMOsW59mblCAMd1ltc9dLyNktHWyLqWH0EFbu0kHofhlVUEYJdmS49TtkS81fbpPA3puQPqF56xH4QXfK87xLIZmNgOzcg5gWE+fdhfyOL4fqMdj/JVCVxm+hY=; 5:85Kssfa/BbwqPsgY1QmzFb4FEZa5s+4OaVs5Saf+ivZSb1bpV2km6Eyy8+pbMD/VgiOZTzVDuJLxcolyk32BiuPF+S3Kc8kfh29pqLW+JZhJT8RtXTSdlDHP51KPwgd3MVRjIwKlFTbR8u9dFNJitSL9rUkHy5KzBhv8vRZM3uI=; 24:5D+NDMx90QGEPdBq7QiWL0UBtt9cgDq6Ebw8z7uQXr+QZGFpJSfbcdAovlbcCN2g4NL3LBh/qo8aZWSCvC5nD6RAqDdQbemF00X292vl5CI=; 7:fp1D5VhCmIDgzqXo0dh1R7lyELDg3ngJoGTNZRjdYoY4TaF53M1u1tSPpAedw4PvSW1NI6tx5UXdU0dNIX3N5mlQD7X7QNktjlY6+tY85Sd9CTTjBnOkK3RlKRbH1msN0T6OZdZbXKxhL5JGuLVi7WgT2And/bKDQVuzi4gSPRZNAa1OPwBBHN+Qa0fZdWv8pn0uxkHgvILEImpe8yRn4ezMYazLis7nrSoJ3LDLrXyEvAvsKBDbXosxtSrHCW1Y SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Aug 2016 07:12:42.0803 (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: BLUPR0301MB2050 X-Greylist: Sender DNS name whitelisted, not delayed by milter-greylist-4.5.12 (shards.monkeyblade.net [149.20.54.216]); Mon, 01 Aug 2016 00:12:45 -0700 (PDT) List-ID: of_node_put needs to be called when the device node which is got from of_parse_phandle has finished using. This commit fixes both local (in stmmac_axi_setup) and global (plat->phy_node) device_node for this issue, and using the correct device node when tries to put node at stmmac_probe_config_dt for error path. Signed-off-by: Peter Chen --- drivers/net/ethernet/stmicro/stmmac/stmmac_main.c | 1 + drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c | 7 +++++-- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c index c23ccab..4c8c60a 100644 --- a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c +++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c @@ -3397,6 +3397,7 @@ int stmmac_dvr_remove(struct device *dev) stmmac_set_mac(priv->ioaddr, false); netif_carrier_off(ndev); unregister_netdev(ndev); + of_node_put(priv->plat->phy_node); if (priv->stmmac_rst) reset_control_assert(priv->stmmac_rst); clk_disable_unprepare(priv->pclk); diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c b/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c index f7dfc0a..756bb54 100644 --- a/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c +++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c @@ -113,8 +113,10 @@ static struct stmmac_axi *stmmac_axi_setup(struct platform_device *pdev) return NULL; axi = kzalloc(sizeof(*axi), GFP_KERNEL); - if (!axi) + if (!axi) { + of_node_put(np); return ERR_PTR(-ENOMEM); + } axi->axi_lpi_en = of_property_read_bool(np, "snps,lpi_en"); axi->axi_xit_frm = of_property_read_bool(np, "snps,xit_frm"); @@ -127,6 +129,7 @@ static struct stmmac_axi *stmmac_axi_setup(struct platform_device *pdev) of_property_read_u32(np, "snps,wr_osr_lmt", &axi->axi_wr_osr_lmt); of_property_read_u32(np, "snps,rd_osr_lmt", &axi->axi_rd_osr_lmt); of_property_read_u32_array(np, "snps,blen", axi->axi_blen, AXI_BLEN); + of_node_put(np); return axi; } @@ -302,7 +305,7 @@ stmmac_probe_config_dt(struct platform_device *pdev, const char **mac) dma_cfg = devm_kzalloc(&pdev->dev, sizeof(*dma_cfg), GFP_KERNEL); if (!dma_cfg) { - of_node_put(np); + of_node_put(plat->phy_node); return ERR_PTR(-ENOMEM); } plat->dma_cfg = dma_cfg;