Messages in this thread | | | Date | Mon, 17 Nov 2014 23:22:05 -0700 | From | Lina Iyer <> | Subject | Re: [PATCH v3 3/4] irq: Allow multiple clients to register for irq affinity notification |
| |
Hi Thomas,
On Fri, Oct 17 2014 at 01:29 -0600, Thomas Gleixner wrote: >On Fri, 10 Oct 2014, Lina Iyer wrote: >> 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. > I was able to review the options and I attempted a few methods, but off-loading the QoS onto the IRQ framework, made it quite complex to manage it. QoS values for each of the four constraints and the constraints could be one of 3 types - min, max or sum, makes it a whole lot of mess handling it in IRQ code.
I was able to get QoS to be notified of IRQ affinity changes without using notifiers, but, I still am yet to find a way to modify QoS requests on enable/disable of IRQ.
I will send the RFC of the new patchset, would be interested in taking a look and let me know what you think.
Thanks, Lina
| |