On Fri, 10 Oct 2014, Lina Iyer wrote:I was able to review the options and I attempted a few methods, but
On Wed, Oct 08 2014 at 09:03 -0600, Thomas Gleixner wrote:
> On Thu, 25 Sep 2014, Lina Iyer wrote:
> > > How would a general "keep track of the targets of all interrupts in
> > > the system" mechanism make use of this?
> > Sorry, I do not understand your question.
> > PM QoS is only interested in the IRQs specified in the QoS request. If
> > there are no requests that need to be associated with an IRQ, then PM
> > QoS will not register for an affinity change notification.
>
> Right, and I really hate the whole per irq notifier. It's a rats nest
> of life time issues and other problems.
>
> It also does not tell you whether an irq is disabled, reenabled or
> removed, which will change the qos constraints as well unless you
> plaster all drivers with updates to qos for those cases.
>
> So what about adding a qos field to irq_data itself, have a function
> to update it and let the irq core keep track of the per cpu irq
> relevant qos constraints and provide an evaluation function or a
> notifier for the PM/idle code?
If that isnt intrusive in the IRQ core, then we can make it work for PM
QoS. The issue that I am concerned is that, it might result in back and
forth between IRQ and PM QoS frameworks. If that doesnt happen, then we
are good with this approach.
I can't tell that upfront, but I think it's worth to explore it.