X-Git-Url: http://demsky.eecs.uci.edu/git/?a=blobdiff_plain;f=arch%2Fmips%2Finclude%2Fasm%2Firq.h;h=ebb9efb025029d6f5184f45f765688912a1ece48;hb=d8b8b5528ea5a394074a91e37571bcca081b27e1;hp=15e0fecbc300fd9752023931984fe277a73da876;hpb=16651fc2f30dfe14dcdd59cf0ccb4e1ccdba4dc7;p=firefly-linux-kernel-4.4.55.git diff --git a/arch/mips/include/asm/irq.h b/arch/mips/include/asm/irq.h index 15e0fecbc300..ebb9efb02502 100644 --- a/arch/mips/include/asm/irq.h +++ b/arch/mips/include/asm/irq.h @@ -17,6 +17,18 @@ #include +#define IRQ_STACK_SIZE THREAD_SIZE + +extern void *irq_stack[NR_CPUS]; + +static inline bool on_irq_stack(int cpu, unsigned long sp) +{ + unsigned long low = (unsigned long)irq_stack[cpu]; + unsigned long high = low + IRQ_STACK_SIZE; + + return (low <= sp && sp <= high); +} + #ifdef CONFIG_I8259 static inline int irq_canonicalize(int irq) {