summaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorCliff Wickman <cpw@sgi.com>2012-01-16 15:21:46 -0600
committerIngo Molnar <mingo@elte.hu>2012-01-17 09:09:57 +0100
commit88ed9dd7f63c3ae71c1984d99ee2dced0b386dea (patch)
treec08a108089b7ab2e819bba86aef61d093a8b75ed /arch
parent478c6e529e7bd7c6ef8994c55bd252c287c35893 (diff)
downloadlinux-stable-88ed9dd7f63c3ae71c1984d99ee2dced0b386dea.tar.gz
linux-stable-88ed9dd7f63c3ae71c1984d99ee2dced0b386dea.tar.bz2
linux-stable-88ed9dd7f63c3ae71c1984d99ee2dced0b386dea.zip
x86/UV2: Ack BAU interrupt earlier
This patch moves the ack of the BAU interrupt to the beginning of the interrupt handler so that there is less possibility of a lost interrupt and slower response to a shootdown message. Signed-off-by: Cliff Wickman <cpw@sgi.com> Link: http://lkml.kernel.org/r/20120116212146.GE5767@sgi.com Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch')
-rw-r--r--arch/x86/platform/uv/tlb_uv.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/arch/x86/platform/uv/tlb_uv.c b/arch/x86/platform/uv/tlb_uv.c
index affea509c174..4686bf1e56ec 100644
--- a/arch/x86/platform/uv/tlb_uv.c
+++ b/arch/x86/platform/uv/tlb_uv.c
@@ -1218,6 +1218,7 @@ void uv_bau_message_interrupt(struct pt_regs *regs)
struct ptc_stats *stat;
struct msg_desc msgdesc;
+ ack_APIC_irq();
time_start = get_cycles();
bcp = &per_cpu(bau_control, smp_processor_id());
@@ -1247,8 +1248,6 @@ void uv_bau_message_interrupt(struct pt_regs *regs)
stat->d_nomsg++;
else if (count > 1)
stat->d_multmsg++;
-
- ack_APIC_irq();
}
/*