Thread (35 messages) 35 messages, 6 authors, 2021-06-14

Re: [PATCH tip:irq/core v1] genirq: remove auto-set of the mask when setting the hint

From: Thomas Gleixner <hidden>
Date: 2021-05-17 20:18:33
Also in: intel-wired-lan, linux-pci, lkml, netdev

On Mon, May 17 2021 at 21:08, Thomas Gleixner wrote:
On Mon, May 17 2021 at 19:50, Robin Murphy wrote:
quoted
On 2021-05-17 19:08, Thomas Gleixner wrote:
quoted
On Mon, May 17 2021 at 18:26, Robin Murphy wrote:
quoted
On 2021-05-17 17:57, Nitesh Lal wrote:
I'm not implying that there isn't a bug, or that this code ever made
sense in the first place, just that fixing it will unfortunately be a
bit more involved than a simple revert. This patch as-is *will* subtly
break at least the system PMU drivers currently using
s/using/abusing/
quoted
irq_set_affinity_hint() - those I know require the IRQ affinity to
follow whichever CPU the PMU context is bound to, in order to meet perf
core's assumptions about mutual exclusion.
Which driver is that?
Right now, any driver which wants to control an IRQ's affinity and also 
build as a module, for one thing. I'm familiar with drivers/perf/ where 
a basic pattern has been widely copied;
Bah. Why the heck can't people talk and just go and rumage until they
find something which hopefully does what they want...

The name of that function should have rang all alarm bells...
Aside of that all the warnings around the return value are useless cargo
cult. Why?

The only reason why this function returns an error code is when there is
no irq descriptor assigned to the interrupt number, which is well close
to impossible in that context.

But it does _NOT_ return an error when the actual affinity setting
fails...

Thanks,

        tglx
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help