From: Marc Zyngier <marc.zyngier@arm.com>
To: Jiang Liu <jiang.liu@linux.intel.com>,
Thomas Gleixner <tglx@linutronix.de>
Cc: "linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH 0/2] genirq: Make irqchip flags work with stacked irq domains
Date: Fri, 09 Jan 2015 09:52:46 +0000 [thread overview]
Message-ID: <54AFA4EE.5080906@arm.com> (raw)
In-Reply-To: <54AF45E0.2080803@linux.intel.com>
Hi Jiang,
On 09/01/15 03:07, Jiang Liu wrote:
> On 2015/1/9 1:32, Marc Zyngier wrote:
>> With the landing of stacked irq domains in 3.19, we have ended up in a
>> situation where we have a stack of IRQ controllers, each with their
>> set of flags, but the core code is only able to look at the top-most,
>> which is not very helpful. This small series is trying to fix this.
>>
>> The first patch converts all access to desc->irq_data.chip->flags to
>> using an accessor, without changing anything else. The second patch
>> adds some logic to combine these flags as we allocate the interrupts,
>> ultimately storing the resulting set as part of the irq_desc
>> structure.
>>
>> We end-up with a configuration where the flags can either be located
>> in the irq_chip structure (non stacked case), or in the irq_desc
>> (stacked case). While this isn't really ideal, this gives at least the
>> right level of information to the rest of the IRQ framework.
> Hi Mark,
> By this way, we need to aggregate irq_chip flags for every
> irq. How about changing irq_desc_get_chip_flags(struct irq_desc *desc)
> to irq_desc_check_chip_flags(struct irq_desc *desc, unsigned int flags)
> which dynamically walks the stacked irqchips?
That was the other option, but I felt that going through the list of
irqchips was not a very nice idea performance wise. This is used is some
moderately hot paths (cond_unmask_eoi_irq, for example), and I wondered
if we wanted to pay this price at runtime...
Thoughts?
Thanks,
M.
--
Jazz is not dead. It just smells funny...
next prev parent reply other threads:[~2015-01-09 9:53 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-01-08 17:32 [PATCH 0/2] genirq: Make irqchip flags work with stacked irq domains Marc Zyngier
2015-01-08 17:32 ` [PATCH 1/2] genirq: Abstract access to irq_chip flags Marc Zyngier
2015-01-09 3:00 ` Jiang Liu
2015-01-09 9:43 ` Marc Zyngier
2015-01-08 17:32 ` [PATCH 2/2] genirq: Allow irq_desc to carry the union of stacked " Marc Zyngier
2015-01-09 3:07 ` [PATCH 0/2] genirq: Make irqchip flags work with stacked irq domains Jiang Liu
2015-01-09 9:52 ` Marc Zyngier [this message]
2015-01-13 10:41 ` Thomas Gleixner
2015-01-13 10:49 ` Marc Zyngier
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=54AFA4EE.5080906@arm.com \
--to=marc.zyngier@arm.com \
--cc=jiang.liu@linux.intel.com \
--cc=linux-kernel@vger.kernel.org \
--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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.