Received: by 2002:a25:1506:0:0:0:0:0 with SMTP id 6csp4154192ybv; Mon, 10 Feb 2020 13:28:02 -0800 (PST) X-Google-Smtp-Source: APXvYqzYcuYxNbbjc+N/2leetF+ZYmh0svMlPGnVkWnaW7d1+dC/0pFUGqVS+dE1QSCdUvAs2x9Q X-Received: by 2002:a05:6830:1e72:: with SMTP id m18mr2501374otr.226.1581370082120; Mon, 10 Feb 2020 13:28:02 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1581370082; cv=none; d=google.com; s=arc-20160816; b=Dw3VYAzzg8SHxZCbdhARnptcR8d8Q7y+0/aL99C76MTZy6y1UlJLeZkhiDpeGnhUg0 7doCnLpbi0RnF/LESWTHoz22dE0EsQI0cKGx9c0UFydAP6/ZS9EiNHm65gQpb8TaOcKO KueclWSkc2Nr7CNOYi1JotS0kqYAO2GCpsuDmSg3dw3c8j1D+2oGSwlTRKrx30LZbYS1 W3zBiO43auvNSXoCH4opdPK6/inag78FZqBPNGfbL7HYYa79hZF2eeInBWIpdb0H6UdH PJO08Z2BA0hOwqVkbk0d0aDrQj5u5hn5+sH+CnYaPcB5wqQ4s20SScQ48Bl/uegbfVMg S6Uw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:date:subject:from:references:in-reply-to :message-id:cc:to; bh=6WSh80jV3PdefmHdaeTariXvvuoe2h2RFkHDewSylpw=; b=BfnvBgQIFoYXXettd+vsKegeEBx+3Tji4+aKTd4ykudPRivr88IJH6rmjItpN6tWD3 9dXRUowO8AdkPU6XGX4NYl1lIOI+ZBcCp7Uqp2J3hbm1KYy9gInP3l8zJJPF/je7QvK7 fGknrUgDw0axPlg8t5pEFzCocfYj3AQdwQfhjjrvLYwWfB3X1jY01qxfwZiAdycyKhl5 nLuTXSmWmyO8D+TSJxL8OW19OVRl7sr4cpNyjyhBSHMxpWxJj4nTV2WTaKeaw4/Y5jj5 dcmzhIVHCZ9xGn+r0BC68VWvEa/0YfiJZ+R52FOrufRsI8lLMSms55Y9BF5v29t9vWh5 809Q== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id y22si749931oti.269.2020.02.10.13.27.50; Mon, 10 Feb 2020 13:28:02 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727742AbgBJV1N (ORCPT + 99 others); Mon, 10 Feb 2020 16:27:13 -0500 Received: from kvm5.telegraphics.com.au ([98.124.60.144]:59762 "EHLO kvm5.telegraphics.com.au" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727529AbgBJV0u (ORCPT ); Mon, 10 Feb 2020 16:26:50 -0500 Received: by kvm5.telegraphics.com.au (Postfix, from userid 502) id 50EA929B53; Mon, 10 Feb 2020 16:26:48 -0500 (EST) To: "David S. Miller" Cc: Thomas Bogendoerfer , Chris Zankel , netdev@vger.kernel.org, linux-kernel@vger.kernel.org Message-Id: In-Reply-To: References: From: Finn Thain Subject: [PATCH net-next 7/7] net/macsonic: Remove interrupt handler wrapper Date: Tue, 11 Feb 2020 08:18:50 +1100 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On m68k, local irqs remain enabled while interrupt handlers execute. Therefore the macsonic driver has had to disable interrupts to avoid re-entering sonic_interrupt(). As of commit 865ad2f2201d ("net/sonic: Add mutual exclusion for accessing shared state"), sonic_interrupt() became re-entrant, and its wrapper became redundant. Tested-by: Stan Johnson Signed-off-by: Finn Thain --- drivers/net/ethernet/natsemi/macsonic.c | 19 ++++--------------- 1 file changed, 4 insertions(+), 15 deletions(-) diff --git a/drivers/net/ethernet/natsemi/macsonic.c b/drivers/net/ethernet/natsemi/macsonic.c index 0f4d0c25d626..1b5559aacb38 100644 --- a/drivers/net/ethernet/natsemi/macsonic.c +++ b/drivers/net/ethernet/natsemi/macsonic.c @@ -114,17 +114,6 @@ static inline void bit_reverse_addr(unsigned char addr[6]) addr[i] = bitrev8(addr[i]); } -static irqreturn_t macsonic_interrupt(int irq, void *dev_id) -{ - irqreturn_t result; - unsigned long flags; - - local_irq_save(flags); - result = sonic_interrupt(irq, dev_id); - local_irq_restore(flags); - return result; -} - static int macsonic_open(struct net_device* dev) { int retval; @@ -135,12 +124,12 @@ static int macsonic_open(struct net_device* dev) dev->name, dev->irq); goto err; } - /* Under the A/UX interrupt scheme, the onboard SONIC interrupt comes - * in at priority level 3. However, we sometimes get the level 2 inter- - * rupt as well, which must prevent re-entrance of the sonic handler. + /* Under the A/UX interrupt scheme, the onboard SONIC interrupt gets + * moved from level 2 to level 3. Unfortunately we still get some + * level 2 interrupts so register the handler for both. */ if (dev->irq == IRQ_AUTO_3) { - retval = request_irq(IRQ_NUBUS_9, macsonic_interrupt, 0, + retval = request_irq(IRQ_NUBUS_9, sonic_interrupt, 0, "sonic", dev); if (retval) { printk(KERN_ERR "%s: unable to get IRQ %d.\n", -- 2.24.1