From patchwork Fri Nov 29 06:40:28 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andy Duan X-Patchwork-Id: 1202379 X-Patchwork-Delegate: davem@davemloft.net Return-Path: X-Original-To: patchwork-incoming-netdev@ozlabs.org Delivered-To: patchwork-incoming-netdev@ozlabs.org Authentication-Results: ozlabs.org; spf=none (no SPF record) smtp.mailfrom=vger.kernel.org (client-ip=209.132.180.67; helo=vger.kernel.org; envelope-from=netdev-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=pass (p=none dis=none) header.from=nxp.com Authentication-Results: ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=nxp.com header.i=@nxp.com header.b="U8VMhIX0"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 47PPyz4dZkz9sR2 for ; Fri, 29 Nov 2019 17:40:43 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726780AbfK2Gkc (ORCPT ); Fri, 29 Nov 2019 01:40:32 -0500 Received: from mail-eopbgr140072.outbound.protection.outlook.com ([40.107.14.72]:46343 "EHLO EUR01-VE1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1726167AbfK2Gkc (ORCPT ); Fri, 29 Nov 2019 01:40:32 -0500 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=iDowuePTE+btKftCPn0XwDg4qDTILw6e1Ovdg1b8EGLhAa3ZhVyJGQkBx8n0yDl6dsTnQfgheLFVVepZ119zqZc+Fh2A215Oal8AnzLfCAhimD9gsZsUK7h2Jmz9CCUlNllIHIp4FvZ6dQ/FWFu4h1FAUi3lSYr5iGMz/l1ddgkFXBt8JgNCyBWnZ+NN367rDIwRC/M5NyJh2RvMNTAtGijKibUUjomDH28UCByHVVS3Okj7ocFuOqPGkt0cgZtkqnT1cU2rBQu5pMnxl/k3c+dw5VPXh9iH90JmoNPgm0IhXLxKJm5wd4zwa8hJHK23h3zRVrID+/z5CJLCLlAP0w== 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=lCUydzmr3zPewKIAQzB1fwY1XHA5u/ZnHLWwm5GXQ8E=; b=XR6WYWn5kq1XSR6x/7uSgfz/nYlBIJgqGKWwfUVvN8VK1iioEb4hxhX/L797CpNnfLvIikATgdwihsw/G//6f3g/fqOtKbC139fje34/THG9Cw7Rlxk8KcrIOOyRwQF4V3TSWQb66cMuNMQg5/mhhxbcVkM3wuzEooH0N3jsN1y9r49WJGzGn5RAcTrp01+hJFolcV6j7cCkLa9XwOJnLDLBApqVqshbsiO5kXiag1PU9enn00QEMHz2nDQa+sUcRqN1i6NxoXRPQdVzNRHdGuqHZDLmD+/QgnDLdsVQEIl5WthyvUwJ8/gPmes8G28zArjdzMgA2Cbg1WtgtXP7yw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nxp.com; dmarc=pass action=none header.from=nxp.com; dkim=pass header.d=nxp.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=lCUydzmr3zPewKIAQzB1fwY1XHA5u/ZnHLWwm5GXQ8E=; b=U8VMhIX0pgRgKl8zv31dcMy7+g3ep4UnlY/ZWnIWP4z4/W94A+UdATqb0rhs0dS6OhMEvBXgbRVkl1M2xP6TNDHjbeERz5uIzLenOqbR1QG4OqCkXANvZfIT43416KL8d0PAdTETE+xjEMDqdTcyQGuARtUijS8XNckHUB0BoI8= Received: from VI1PR0402MB3600.eurprd04.prod.outlook.com (52.134.3.146) by VI1PR0402MB3838.eurprd04.prod.outlook.com (52.134.16.24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2495.20; Fri, 29 Nov 2019 06:40:28 +0000 Received: from VI1PR0402MB3600.eurprd04.prod.outlook.com ([fe80::30e0:6638:e97c:e625]) by VI1PR0402MB3600.eurprd04.prod.outlook.com ([fe80::30e0:6638:e97c:e625%7]) with mapi id 15.20.2495.014; Fri, 29 Nov 2019 06:40:28 +0000 From: Andy Duan To: "davem@davemloft.net" CC: "netdev@vger.kernel.org" , Andy Duan Subject: [PATCH net, stable 1/1] net: fec: match the dev_id between probe and remove Thread-Topic: [PATCH net, stable 1/1] net: fec: match the dev_id between probe and remove Thread-Index: AQHVpn/jrt25MiDjN0mpVyW3r4862g== Date: Fri, 29 Nov 2019 06:40:28 +0000 Message-ID: <1575009408-30362-1-git-send-email-fugang.duan@nxp.com> Accept-Language: zh-CN, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: git-send-email 2.7.4 x-clientproxiedby: SGXP274CA0016.SGPP274.PROD.OUTLOOK.COM (2603:1096:4:b8::28) To VI1PR0402MB3600.eurprd04.prod.outlook.com (2603:10a6:803:7::18) authentication-results: spf=none (sender IP is ) smtp.mailfrom=fugang.duan@nxp.com; x-ms-exchange-messagesentrepresentingtype: 1 x-originating-ip: [119.31.174.66] x-ms-publictraffictype: Email x-ms-office365-filtering-ht: Tenant x-ms-office365-filtering-correlation-id: fee2511c-9c54-4d19-f708-08d7749705e4 x-ms-traffictypediagnostic: VI1PR0402MB3838:|VI1PR0402MB3838: x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:3513; x-forefront-prvs: 0236114672 x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(4636009)(346002)(366004)(376002)(39860400002)(136003)(396003)(199004)(189003)(4326008)(54906003)(71190400001)(6512007)(5640700003)(6436002)(6486002)(186003)(316002)(71200400001)(102836004)(66066001)(2906002)(26005)(2616005)(36756003)(50226002)(52116002)(25786009)(6506007)(386003)(8936002)(6916009)(2351001)(81166006)(8676002)(256004)(1730700003)(81156014)(86362001)(2501003)(3846002)(6116002)(66556008)(66476007)(99286004)(66446008)(66946007)(478600001)(5660300002)(64756008)(14454004)(7736002)(305945005)(142933001); DIR:OUT; SFP:1101; SCL:1; SRVR:VI1PR0402MB3838; H:VI1PR0402MB3600.eurprd04.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:1; MX:1; received-spf: None (protection.outlook.com: nxp.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: 80b+YgsRH26Ot28jhHwE7MbsY57iz+HO7EmR6QqPL+ENgg/mW+mCOQsSwSTTdsJ/0wBs0heO7ZG391AfmTmyKtA7txHZ3suUnVDXmny4ze1U7l6mEKsAUi19a9FCtazpvN1DJjM90mSRF7dKVXfFbFv5ZggSn//RI+l0vyTg8mZscZCnFJTL36Wgmwc9LhPId23+HAFNwZrWItJeHYBzzvOC89GuenLF2W5lbBQqvTsPekxWOnvEttkY4tNuTyFuXaiclvQAb/9kNuRcJQKUkTRkBYGhlxKLtJ0vTxDedBec3RWegVSk7rJXvsKLaV1m5arkM2rDIh9ab2ddP018ObprMdhMgtL3qwv5rwGtjjqnU44pq0hTOv7dHUCVuu+SZw+yMxpKecUgy8ocm0gSPXxOMVC5n05n4ccD9/BZ2uB0/o409/uAF3iHiPNaLVO3 MIME-Version: 1.0 X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: fee2511c-9c54-4d19-f708-08d7749705e4 X-MS-Exchange-CrossTenant-originalarrivaltime: 29 Nov 2019 06:40:28.6038 (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: A16g4tp/sEepxG6wR8gj1GqZZx1bxpa4EF0kDAAa1dZYreGDseLVk1G5BIzlV2Xfm4GetQmc/ULYtfQ0lNGJvQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0402MB3838 Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org Test device bind/unbind on i.MX8QM platform: echo 5b040000.ethernet > /sys/bus/platform/drivers/fec/unbind echo 5b040000.ethernet > /sys/bus/platform/drivers/fec/bind error log: pps pps0: new PPS source ptp0 /sys/bus/platform/drivers/fec/bind fec: probe of 5b040000.ethernet failed with error -2 It should decrease the dev_id when device is unbinded. So let the fec_dev_id as global variable and let the count match in .probe() and .remvoe(). Reported-by: shivani.patel Signed-off-by: Fugang Duan --- drivers/net/ethernet/freescale/fec_main.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/drivers/net/ethernet/freescale/fec_main.c b/drivers/net/ethernet/freescale/fec_main.c index 05c1899..348fd8a 100644 --- a/drivers/net/ethernet/freescale/fec_main.c +++ b/drivers/net/ethernet/freescale/fec_main.c @@ -243,6 +243,7 @@ MODULE_PARM_DESC(macaddr, "FEC Ethernet MAC address"); (addr < txq->tso_hdrs_dma + txq->bd.ring_size * TSO_HEADER_SIZE)) static int mii_cnt; +static int fec_dev_id; static struct bufdesc *fec_enet_get_nextdesc(struct bufdesc *bdp, struct bufdesc_prop *bd) @@ -3397,7 +3398,6 @@ fec_probe(struct platform_device *pdev) struct net_device *ndev; int i, irq, ret = 0; const struct of_device_id *of_id; - static int dev_id; struct device_node *np = pdev->dev.of_node, *phy_node; int num_tx_qs; int num_rx_qs; @@ -3442,7 +3442,7 @@ fec_probe(struct platform_device *pdev) } fep->pdev = pdev; - fep->dev_id = dev_id++; + fep->dev_id = fec_dev_id++; platform_set_drvdata(pdev, ndev); @@ -3623,7 +3623,7 @@ fec_probe(struct platform_device *pdev) of_phy_deregister_fixed_link(np); of_node_put(phy_node); failed_phy: - dev_id--; + fec_dev_id--; failed_ioremap: free_netdev(ndev); @@ -3653,6 +3653,7 @@ fec_drv_remove(struct platform_device *pdev) of_phy_deregister_fixed_link(np); of_node_put(fep->phy_node); free_netdev(ndev); + fec_dev_id--; clk_disable_unprepare(fep->clk_ahb); clk_disable_unprepare(fep->clk_ipg);