Received: by 2002:a25:1985:0:0:0:0:0 with SMTP id 127csp2224312ybz; Sun, 26 Apr 2020 14:01:17 -0700 (PDT) X-Google-Smtp-Source: APiQypK+VZWOPXrHVkADuxaJQqlwPu8wZobc8l49TUx+bzXIlcIFOqQJuTw6QHjB0auhqBtmQczk X-Received: by 2002:a05:6402:1768:: with SMTP id da8mr16393581edb.216.1587934877792; Sun, 26 Apr 2020 14:01:17 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1587934877; cv=none; d=google.com; s=arc-20160816; b=Q8NsNGusCik/4oA67W988KgEx5bO3oFiOa3x7G/z12JPF59b1CqA5z7eRykC8KtshJ nY8/GmQHCb7X7FlWhOztgOvyb0HE9tvCfwpuxSGso2/8wDBxdiwM7RYhM5Zy1FcF0DXv qcxWcTKHMI7pZaOxJL4qjIQWAzLfh6MlE9K457evvmXoHsB8ndNzs8/c8oVo7ej2BC8i LRRMFfc0Bwd7mfsklLyE9RLIwj19jh2h8hZihaydKNfHd2N5sFG0Q80UdPyLSLsvjiLL mjvYfRJ++usBl8JAIrxTcaMbtOBkfRTE7aGaVaP2kEQojlr2Hqp8tC4WgeirEjKPnHyA f3+w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from; bh=+35lXYD+prXQQArXn8rhwI5GHZDcKzK1Uvev9+sWc/o=; b=Z/LJ0VFpCSItQWkKdynkAQgUkImFA9dXpXxFL4hLTvX+Xvtv340f03huY5E6Dc6vse lztsfirGTiunEypEewgDFbg7MmdOG7SKWk/ZcCvI592NHnBtjUaTYq/EuRryPuG47Do4 VHnHxm7M34Vx4SEJl+pwOa44TWH4/RLo/NDfI/U/bzHBh17aSJ5xHh6PQ+hc+g0d62nr oGjLQI/PQKL/BEMFz1S+l+ky4E/rCCyR26s1HZgJV24nt+8L7h2VQ5pFAS/UEza2pIys ndPkHXvkNCbs/7bP4oEP/12c1lhpqnrX6gwXqXl5pPBI3CBqX+MzzH5k4/aYmksLoavk QSUg== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id va12si6991402ejb.227.2020.04.26.14.00.54; Sun, 26 Apr 2020 14:01:17 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726304AbgDZU7a (ORCPT + 99 others); Sun, 26 Apr 2020 16:59:30 -0400 Received: from smtp06.smtpout.orange.fr ([80.12.242.128]:31531 "EHLO smtp.smtpout.orange.fr" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726188AbgDZU7a (ORCPT ); Sun, 26 Apr 2020 16:59:30 -0400 Received: from localhost.localdomain ([93.23.12.11]) by mwinf5d64 with ME id XYzQ2201a0EJ3pp03YzReA; Sun, 26 Apr 2020 22:59:28 +0200 X-ME-Helo: localhost.localdomain X-ME-Auth: Y2hyaXN0b3BoZS5qYWlsbGV0QHdhbmFkb28uZnI= X-ME-Date: Sun, 26 Apr 2020 22:59:28 +0200 X-ME-IP: 93.23.12.11 From: Christophe JAILLET To: davem@davemloft.net, jonas.jensen@gmail.com Cc: netdev@vger.kernel.org, linux-kernel@vger.kernel.org, kernel-janitors@vger.kernel.org, Christophe JAILLET Subject: [PATCH] net: moxa: Fix a potential double 'free_irq()' Date: Sun, 26 Apr 2020 22:59:21 +0200 Message-Id: <20200426205921.47714-1-christophe.jaillet@wanadoo.fr> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Should an irq requested with 'devm_request_irq' be released explicitly, it should be done by 'devm_free_irq()', not 'free_irq()'. Fixes: 6c821bd9edc9 ("net: Add MOXA ART SoCs ethernet driver") Signed-off-by: Christophe JAILLET --- Maybe 'devm_free_irq()' is useless here and it could be freed automatically by the core framework, but sometimes irq can be tricky. So I've preferred to keep the logic in place. --- drivers/net/ethernet/moxa/moxart_ether.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/net/ethernet/moxa/moxart_ether.c b/drivers/net/ethernet/moxa/moxart_ether.c index e1651756bf9d..f70bb81e1ed6 100644 --- a/drivers/net/ethernet/moxa/moxart_ether.c +++ b/drivers/net/ethernet/moxa/moxart_ether.c @@ -564,7 +564,7 @@ static int moxart_remove(struct platform_device *pdev) struct net_device *ndev = platform_get_drvdata(pdev); unregister_netdev(ndev); - free_irq(ndev->irq, ndev); + devm_free_irq(&pdev->dev, ndev->irq, ndev); moxart_mac_free_memory(ndev); free_netdev(ndev); -- 2.25.1