From: ebiederm@xmission.com (Eric W. Biederman)
To: Jeremy Fitzhardinge <jeremy@goop.org>
Cc: Ingo Molnar <mingo@elte.hu>, Thomas Gleixner <tglx@linutronix.de>,
Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
Andi Kleen <andi@firstfloor.org>, Avi Kivity <avi@qumranet.com>,
"H. Peter Anvin" <hpa@zytor.com>,
Keir Fraser <Keir.Fraser@eu.citrix.com>
Subject: Re: Question about interrupt routing and irq allocation
Date: Wed, 28 May 2008 02:35:08 -0700 [thread overview]
Message-ID: <m1ve0yai0j.fsf@frodo.ebiederm.org> (raw)
In-Reply-To: <483C35AA.5060102@goop.org> (Jeremy Fitzhardinge's message of "Tue, 27 May 2008 17:24:10 +0100")
Jeremy Fitzhardinge <jeremy@goop.org> writes:
> Ingo Molnar wrote:
>>> I'm initially targeting 32-bit, though obviously I'd like something that
>>> works for both 32 and 64 bit. irq_cfg[] is missing in io_apic_32.c; would I
>>> achieve the same effect by setting irq_vector[irq] = 0xff or something?
>>>
>>
>> ok, here comes the next phase of a rather cunning plan: please unify these
>> vector allocators first! ;-)
>>
>
> Somehow I knew you were going to say that...
>
>> it's nontrivial but would result in rather nice code. I dont know whether we
>> want to extend per-CPU vectors to 32-bit as well ... but might be worth an
>> attempt and we could give any exploratory patches a try in -tip. Eric, what do
>> you think about the general approach?
>>
>> this would also pave the way towards unified APIC code. Hm
>
> All of that sounds very appealing, particularly as the work on xen-dom0
> continues. But in the meantime I'm just using create_irq(), and I'll wear the
> wasted vector (after all, it will only happen when booting under Xen-hvm).
- I think using create_irq is a good step.
- I think all vectors are wasted in the case of Xen.
- I think we want a individual irq for each xen irq source.
Sparc already does a demux in similar circumstances with
a queue of received MSI messages an a single cpu irq
that these get demuxed from.
If we don't have individual irqs per drivers it will be hard
to share a source base with native drivers.
- I think it would be very nice if we could get irqs allocated
in request_irq instead of create_irq (and equivalents).
- I think ultimately it makes sense to port the per vector
code to 32bit linux. On single cpu systems the cost should
be just a hair more code, but no extra data structures. We
can easily restrict the irq allocation to allocating the same
vector on all cpus for any old machines that prove flaky with
irq migration.
The code between the two architectures we kept fairly close
in sync when I worked on it so a merge should not be a big deal.
Trouble is I'm not finding a lot of time to work on any of this
stuff lately :(
Eric
next prev parent reply other threads:[~2008-05-28 9:41 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-05-26 22:08 Question about interrupt routing and irq allocation Jeremy Fitzhardinge
2008-05-27 8:37 ` Ingo Molnar
2008-05-27 9:45 ` Jeremy Fitzhardinge
2008-05-27 14:56 ` Ingo Molnar
2008-05-27 16:24 ` Jeremy Fitzhardinge
2008-05-28 9:35 ` Eric W. Biederman [this message]
2008-05-28 10:40 ` Jeremy Fitzhardinge
2008-05-28 16:04 ` Eric W. Biederman
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=m1ve0yai0j.fsf@frodo.ebiederm.org \
--to=ebiederm@xmission.com \
--cc=Keir.Fraser@eu.citrix.com \
--cc=andi@firstfloor.org \
--cc=avi@qumranet.com \
--cc=hpa@zytor.com \
--cc=jeremy@goop.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@elte.hu \
--cc=tglx@linutronix.de \
/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