Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751987AbdGYNI4 convert rfc822-to-8bit (ORCPT ); Tue, 25 Jul 2017 09:08:56 -0400 Received: from us-smtp-delivery-107.mimecast.com ([216.205.24.107]:29946 "EHLO us-smtp-delivery-107.mimecast.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751819AbdGYNIz (ORCPT ); Tue, 25 Jul 2017 09:08:55 -0400 Subject: [PATCH v3] irqchip/tango: Don't use incorrect irq_mask_ack callback To: Thomas Gleixner , Marc Zyngier , Jason Cooper References: <20170719190734.18566-1-opendmb@gmail.com> <20170719190734.18566-3-opendmb@gmail.com> <7a51555f-8191-9ebd-1f30-7c20f6db9d3f@sigmadesigns.com> <8d29fec9-35b8-c33b-3091-3e9a51c99ed7@gmail.com> CC: Doug Berger , Florian Fainelli , Mans Rullgard , LKML , Linux ARM , Mason From: Marc Gonzalez Message-ID: Date: Tue, 25 Jul 2017 15:08:49 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Firefox/52.0 SeaMonkey/2.49.1 MIME-Version: 1.0 In-Reply-To: <8d29fec9-35b8-c33b-3091-3e9a51c99ed7@gmail.com> X-Originating-IP: [172.27.0.114] X-MC-Unique: OyQf9r6vOtipSwrmHO1FZg-1 Content-Type: text/plain; charset=WINDOWS-1252 Content-Transfer-Encoding: 8BIT Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1241 Lines: 31 irq_gc_mask_disable_reg_and_ack() is not equivalent to irq_gc_mask_disable_reg() and irq_gc_ack_set_bit(). Leave the irq_mask_ack callback undefined, and let the irqchip framework use irq_mask and irq_ack instead. Reported-by: Doug Berger Fixes: 4bba66899ac6 ("irqchip/tango: Add support for Sigma Designs SMP86xx/SMP87xx interrupt controller") Signed-off-by: Marc Gonzalez Cc: stable@vger.kernel.org --- As discussed previously, it is acceptable for tango to rely on mask_ack_irq() doing the right thing(TM). --- drivers/irqchip/irq-tango.c | 1 - 1 file changed, 1 deletion(-) diff --git a/drivers/irqchip/irq-tango.c b/drivers/irqchip/irq-tango.c index bdbb5c0ff7fe..825085cdab99 100644 --- a/drivers/irqchip/irq-tango.c +++ b/drivers/irqchip/irq-tango.c @@ -141,7 +141,6 @@ static void __init tangox_irq_init_chip(struct irq_chip_generic *gc, for (i = 0; i < 2; i++) { ct[i].chip.irq_ack = irq_gc_ack_set_bit; ct[i].chip.irq_mask = irq_gc_mask_disable_reg; - ct[i].chip.irq_mask_ack = irq_gc_mask_disable_reg_and_ack; ct[i].chip.irq_unmask = irq_gc_unmask_enable_reg; ct[i].chip.irq_set_type = tangox_irq_set_type; ct[i].chip.name = gc->domain->name; -- 2.11.0