Commit-ID:  839b0f1c4ef674cd929a42304c078afca278581a
Gitweb:     https://git.kernel.org/tip/839b0f1c4ef674cd929a42304c078afca278581a
Author:     Thomas Gleixner <t...@linutronix.de>
AuthorDate: Mon, 4 Jun 2018 17:33:58 +0200
Committer:  Thomas Gleixner <t...@linutronix.de>
CommitDate: Wed, 6 Jun 2018 15:18:21 +0200

x86/platform/uv: Use apic_ack_irq()

To address the EBUSY fail of interrupt affinity settings in case that the
previous setting has not been cleaned up yet, use the new apic_ack_irq()
function instead of the special uv_ack_apic() implementation which is
merily a wrapper around ack_APIC_irq().

Preparatory change for the real fix

Fixes: dccfe3147b42 ("x86/vector: Simplify vector move cleanup")
Reported-by: Song Liu <liu.song....@gmail.com>
Signed-off-by: Thomas Gleixner <t...@linutronix.de>
Tested-by: Song Liu <songliubrav...@fb.com>
Cc: Joerg Roedel <jroe...@suse.de>
Cc: Peter Zijlstra <pet...@infradead.org>
Cc: Dmitry Safonov <0x7f454...@gmail.com>
Cc: sta...@vger.kernel.org
Cc: Mike Travis <mike.tra...@hpe.com>
Cc: Borislav Petkov <b...@alien8.de>
Cc: Tariq Toukan <tar...@mellanox.com>
Link: https://lkml.kernel.org/r/20180604162224.721691...@linutronix.de

---
 arch/x86/platform/uv/uv_irq.c | 7 +------
 1 file changed, 1 insertion(+), 6 deletions(-)

diff --git a/arch/x86/platform/uv/uv_irq.c b/arch/x86/platform/uv/uv_irq.c
index e4cb9f4cde8a..fc13cbbb2dce 100644
--- a/arch/x86/platform/uv/uv_irq.c
+++ b/arch/x86/platform/uv/uv_irq.c
@@ -47,11 +47,6 @@ static void uv_program_mmr(struct irq_cfg *cfg, struct 
uv_irq_2_mmr_pnode *info)
 
 static void uv_noop(struct irq_data *data) { }
 
-static void uv_ack_apic(struct irq_data *data)
-{
-       ack_APIC_irq();
-}
-
 static int
 uv_set_irq_affinity(struct irq_data *data, const struct cpumask *mask,
                    bool force)
@@ -73,7 +68,7 @@ static struct irq_chip uv_irq_chip = {
        .name                   = "UV-CORE",
        .irq_mask               = uv_noop,
        .irq_unmask             = uv_noop,
-       .irq_eoi                = uv_ack_apic,
+       .irq_eoi                = apic_ack_irq,
        .irq_set_affinity       = uv_set_irq_affinity,
 };
 

Reply via email to