From mboxrd@z Thu Jan 1 00:00:00 1970 From: Michael Schmitz Subject: Re: linux 3.10.1 with initrd (was Re: linux 3.8.12-1 (atari flavour) does not boot) Date: Sat, 03 Aug 2013 13:37:20 +1200 Message-ID: <51FC5ED0.2070708@gmail.com> References: <5192331E.9010009@debian.org> <20130514144112.GH11842@chumley.earth.sol> <0f1d3739660c2bece613948285afd937@biophys.uni-duesseldorf.de> <51FBEBE1.1020507@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Return-path: Received: from mail-pa0-f43.google.com ([209.85.220.43]:33221 "EHLO mail-pa0-f43.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753554Ab3HCBh0 (ORCPT ); Fri, 2 Aug 2013 21:37:26 -0400 Received: by mail-pa0-f43.google.com with SMTP id hz10so1260573pad.16 for ; Fri, 02 Aug 2013 18:37:26 -0700 (PDT) In-Reply-To: Sender: linux-m68k-owner@vger.kernel.org List-Id: linux-m68k@vger.kernel.org To: Geert Uytterhoeven Cc: Michael Schmitz , Mikael Pettersson , Thorsten Glaser , Linux/m68k , Debian m68k Geert, >> 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. Yep, but pretty much all NOP. Is the interrupt entry/return that much of a hassle these days? >>> 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