diff options
author | Paul Burton <paul.burton@imgtec.com> | 2017-08-18 14:02:21 -0700 |
---|---|---|
committer | Ralf Baechle <ralf@linux-mips.org> | 2017-09-04 13:53:15 +0200 |
commit | 7778c4b27cbe0e24dc016477ec60d63b272f7ea2 (patch) | |
tree | 6cfeb73936730711aa90b1c371a563a635cbaaf2 /tools | |
parent | aa493737d8e2b7d4393a94479eec63381f842daa (diff) | |
download | linux-7778c4b27cbe0e24dc016477ec60d63b272f7ea2.tar.bz2 |
irqchip: mips-gic: Use pcpu_masks to avoid reading GIC_SH_MASK*
This patch avoids the need to read the GIC_SH_MASK* registers when
decoding shared interrupts by setting & clearing the interrupt's bit in
the appropriate CPU's pcpu_masks entry when masking or unmasking the
interrupt.
This effectively means that whilst an interrupt is masked we clear its
bit in all pcpu_masks, which causes gic_handle_shared_int() to ignore it
on all CPUs without needing to check GIC_SH_MASK*.
In essence, we add a little overhead to masking or unmasking interrupts
but in return reduce the overhead of the far more common task of
decoding interrupts.
Signed-off-by: Paul Burton <paul.burton@imgtec.com>
Acked-by: Marc Zyngier <marc.zyngier@arm.com>
Cc: Jason Cooper <jason@lakedaemon.net>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: linux-mips@linux-mips.org
Patchwork: https://patchwork.linux-mips.org/patch/17109/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Diffstat (limited to 'tools')
0 files changed, 0 insertions, 0 deletions