From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andrew Lunn Subject: [PATCH v3 net-next 2/2] net: dsa: mv88e6xxx: Call the common IRQ free code Date: Sun, 25 Mar 2018 23:43:15 +0200 Message-ID: <1522014195-18671-3-git-send-email-andrew@lunn.ch> References: <1522014195-18671-1-git-send-email-andrew@lunn.ch> Cc: netdev , u.kleine-koenig@pengutronix.de, Andrew Lunn To: David Miller Return-path: Received: from vps0.lunn.ch ([185.16.172.187]:41485 "EHLO vps0.lunn.ch" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752247AbeCYVoM (ORCPT ); Sun, 25 Mar 2018 17:44:12 -0400 In-Reply-To: <1522014195-18671-1-git-send-email-andrew@lunn.ch> Sender: netdev-owner@vger.kernel.org List-ID: When free'ing the polled IRQs, call the common irq free code. Otherwise the interrupts are left registered, and when we come to load the driver a second time, we get an Opps. Signed-off-by: Andrew Lunn --- drivers/net/dsa/mv88e6xxx/chip.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/drivers/net/dsa/mv88e6xxx/chip.c b/drivers/net/dsa/mv88e6xxx/chip.c index 3ba77067a3dc..9a5d786b4885 100644 --- a/drivers/net/dsa/mv88e6xxx/chip.c +++ b/drivers/net/dsa/mv88e6xxx/chip.c @@ -467,6 +467,8 @@ static int mv88e6xxx_irq_poll_setup(struct mv88e6xxx_chip *chip) static void mv88e6xxx_irq_poll_free(struct mv88e6xxx_chip *chip) { + mv88e6xxx_g1_irq_free_common(chip); + kthread_cancel_delayed_work_sync(&chip->irq_poll_work); kthread_destroy_worker(chip->kworker); } -- 2.16.2