Received: by 2002:a25:1506:0:0:0:0:0 with SMTP id 6csp3182134ybv; Sat, 15 Feb 2020 13:18:43 -0800 (PST) X-Google-Smtp-Source: APXvYqx4JkIUjE4V2Henbi1P6MMbq4DnnxPa+6rWPSWK10rx2q0z+WEzoipP399QgcthOVp9jekH X-Received: by 2002:a9d:7e8c:: with SMTP id m12mr7361906otp.346.1581801523701; Sat, 15 Feb 2020 13:18:43 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1581801523; cv=none; d=google.com; s=arc-20160816; b=N9FMvtjmiSOGu3x2WxqynHzXHMoA1OML80JfOYIN3sQ9n/6sVmta0zHSBSPMf57+Zw RHZO/7qw7fiD+aig+iJUCpSYmQg01GdyGDJ+xnLzdCGL2Yfz0RHXv4iXRWWHXcQHeRm0 9jMSbxeeMiuhAA/fP7ayYfIolgSEY+4z/xDOkvBawEOTTiyBo2l2jyI2/HRIUNIXHrQL etmMStZsZ2isTSU73CnSiXO8fE1yCKrxDRd9ddSUiENhOMsx+ymBgvlRXF4QxDsEkVke 0GfrQ15xtElJSjUP0X8UiQiFaUPCQ8hvtVmlKeGIcfRbrzvqBi93/9WGa9nLHF52ZCJu EOpA== 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=HAi/YhfW6mtZQUdZvRb9+V86VL70ddk0pA+gPIE05zPBnKodpRAIhe3ZLjzNsKo2fz EgvcRVkKE/XLapGCxcGTImXKnIxQgSBFm5phj2trTThFW44Q+YfuGhdZqBrW+heLMrnx uNley58bC7zZiXKhGe1y6ylhcQ8gUq4dz/nJsEdWr6YIyRqZEIO14bJrKENdmej+YAhw yo7XA7c08C+3cgxrmf+kLML+QBhqFSEBmd0+JTT9+3gYkqz9oiqxCBxkE2NGnlRmSOkg bmHjr7HTS6EhhITNm1khMwD2IjfUQdI2BYmwZYkK8C1aWarAIJPqoBwYFWwhbwRqR+mc NIwg== 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 b25si4981170otp.212.2020.02.15.13.18.31; Sat, 15 Feb 2020 13:18:43 -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 S1727868AbgBOVSE (ORCPT + 99 others); Sat, 15 Feb 2020 16:18:04 -0500 Received: from kvm5.telegraphics.com.au ([98.124.60.144]:34954 "EHLO kvm5.telegraphics.com.au" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727781AbgBOVSD (ORCPT ); Sat, 15 Feb 2020 16:18:03 -0500 Received: by kvm5.telegraphics.com.au (Postfix, from userid 502) id 0808929B32; Sat, 15 Feb 2020 16:18:02 -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: Sun, 16 Feb 2020 08:03:32 +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