Geert,
Yep, but pretty much all NOP. Is the interrupt entry/return that much of a hassle these days?So we could stop blocking further interrupts in multi platform kernels. How much of a performance hit will this be on say a stock Falcon or TT?That's 15000 - 30000 more interrupts per second.
The former is safer but slower, the second is faster but will miss cases where some interrupt priorities are disabled.The safer but slower option (we can still use the fast version of it on single platform kernels). We should test the faster at any rate to see whether there are really cases where we miss disabled interrupts.On single-platform kernels, ALLOWINT = ~0x500, and we can use the current (fast) version.
I meant to say that - we can use the current version on single platform kernels:
static inline bool arch_irqs_disabled_flags(unsigned long flags) { + #if defined(MACH_ATARI_ONLY) || defined(MACH_AMIGA_ONLY) return (flags & ~ALLOWINT) != 0; + #else + if (MACH_IS_ATARI) { + /* Ignore HSYNC = ipl 2 on Atari */ + return (flags & ~(ALLOWINT | 0x200)) != 0; + } else + return (flags & ~ALLOWINT) != 0; + #endif }(or whatever compiler flag we have to indicate we're not building a multi-platform kernel)
Cheers, Michael
Gr{oetje,eeting}s, Geert -- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that. -- Linus Torvalds