LKML Archive on lore.kernel.org
help / color / mirror / Atom feed
From: Benjamin Herrenschmidt <benh@kernel.crashing.org>
To: Ingo Molnar <mingo@elte.hu>
Cc: "Eric W. Biederman" <ebiederm@xmission.com>,
linux-arch@vger.kernel.org, linux-kernel@vger.kernel.org,
Linus Torvalds <torvalds@linux-foundation.org>,
Andrew Morton <akpm@linux-foundation.org>,
Andi Kleen <ak@suse.de>, Alan Cox <alan@lxorguk.ukuu.org.uk>
Subject: Re: [RFC] killing the NR_IRQS arrays.
Date: Sat, 17 Feb 2007 09:33:10 +1100 [thread overview]
Message-ID: <1171665190.5644.96.camel@localhost.localdomain> (raw)
In-Reply-To: <20070216124117.GB4218@elte.hu>
On Fri, 2007-02-16 at 13:41 +0100, Ingo Molnar wrote:
> * Eric W. Biederman <ebiederm@xmission.com> wrote:
>
> > So I propose we remove all assumptions from the code that we actually
> > have an array of irqs. That will allow for irq_desc to be dynamically
> > allocated instead of statically allocated saving memory and reducing
> > kernel complexity.
>
> hm. I'd suggest to do this without changing request_irq() - and then we
> could avoid the 'massive, every driver affected' change, right?
>
> i.e. because we'll (have to) have an nr_to_desc() and desc_to_nr()
> mapping facility anyway, lets just not change the driver APIs massively.
> There dont seem to be that many drivers that assume that irq_desc[] is
> an array - are there?
>
> otherwise, in terms of the irqchips infrastructure and the API between
> genirq and the irqchip arch-level drivers, this change makes quite a bit
> of sense i think.
>
> or am i missing something fundamental?
Well, I don't want to see anything like desc_to_nr / nr_to_desc unless
the number in question is a virtual number. That is, there is no way we
should go that way and keep passing a HW number through request_irq.
That would just be a total nightmare for powerpc and sparc at least.
What we can do is generalize the powerpc virtual irq scheme though. You
can see the implementation in arch/powerpc/kernel/irq.c starting from
the definition of irq_alloc_host() though for some stupid reason, I've
put all the documentation in include/asm-powerpc/irq.h so you might want
to start there.
Once the IRQ numbers are virtualized, it becomes easier to slowly
migrate things to use irq_desc_t * while still having a virutal number
available.
Once everything has been migrated, we can then get rid of the virtual
numbers completely except maybe for an optional 16 entries array for
legacy cruft.
Ben.
next prev parent reply other threads:[~2007-02-16 22:33 UTC|newest]
Thread overview: 40+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-02-16 12:10 [RFC] killing the NR_IRQS arrays Eric W. Biederman
2007-02-16 12:16 ` Andi Kleen
2007-02-16 15:35 ` Eric W. Biederman
2007-02-16 12:41 ` Ingo Molnar
2007-02-16 15:23 ` Eric W. Biederman
2007-02-16 15:49 ` Eric W. Biederman
2007-02-16 22:33 ` Benjamin Herrenschmidt [this message]
2007-02-18 21:24 ` Arjan van de Ven
2007-02-19 0:25 ` Benjamin Herrenschmidt
2007-02-27 20:29 ` Eric W. Biederman
2007-02-28 0:41 ` Arnd Bergmann
2007-02-28 7:20 ` Eric W. Biederman
2007-02-28 8:09 ` Benjamin Herrenschmidt
2007-02-28 13:28 ` Eric W. Biederman
2007-02-28 12:24 ` Arnd Bergmann
2007-02-28 13:02 ` Segher Boessenkool
2007-02-28 13:53 ` Eric W. Biederman
2007-03-01 10:47 ` Benjamin Herrenschmidt
2007-02-16 18:07 ` Jeremy Fitzhardinge
2007-02-16 19:01 ` Eric W. Biederman
2007-02-16 19:06 ` Jeremy Fitzhardinge
2007-02-16 19:45 ` Arnd Bergmann
2007-02-16 19:52 ` Russell King
2007-02-16 20:43 ` Arnd Bergmann
2007-02-16 20:59 ` Russell King
2007-02-16 22:37 ` Benjamin Herrenschmidt
2007-02-17 1:37 ` Arnd Bergmann
2007-02-17 4:00 ` Benjamin Herrenschmidt
2007-02-17 9:06 ` Eric W. Biederman
2007-02-17 21:15 ` Benjamin Herrenschmidt
2007-02-18 6:30 ` Eric W. Biederman
2007-02-18 20:01 ` Benjamin Herrenschmidt
2007-02-17 9:34 ` Eric W. Biederman
2007-02-17 21:20 ` Benjamin Herrenschmidt
2007-02-18 3:58 ` Eric W. Biederman
2007-02-16 22:29 ` Benjamin Herrenschmidt
2007-02-17 8:51 ` Eric W. Biederman
2007-02-17 21:04 ` Benjamin Herrenschmidt
2007-02-18 4:58 ` Eric W. Biederman
2007-02-18 19:58 ` Benjamin Herrenschmidt
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1171665190.5644.96.camel@localhost.localdomain \
--to=benh@kernel.crashing.org \
--cc=ak@suse.de \
--cc=akpm@linux-foundation.org \
--cc=alan@lxorguk.ukuu.org.uk \
--cc=ebiederm@xmission.com \
--cc=linux-arch@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@elte.hu \
--cc=torvalds@linux-foundation.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).