[PATCH 0/2] genirq: Move prio assignment into the newly created thread

From: Sebastian Andrzej Siewior
Date: Tue Nov 10 2020 - 06:39:05 EST


Mike reported [0] a lockdep splat triggered by the nouveau driver together
with enabled threaded interrupts.
I can't easily tell if moving / changing locking within nouveau does not
break anything and does not create the same lockchain in another path.
Mike did confirm that the lockdep splat can be avoided by by moving
`request_irq()' out of the picture [1]. He also tested the two patches
which are scattered in the thread.

Mike is betting on commit
710da3c8ea7df ("sched/core: Prevent race condition between cpuset and __sched_setscheduler()")

as the source change that introduce that problem assuming that locking
within the nouveau remained unchanged. He did confirm that this splat
exists also in a v5.4 stable kernel [2] which is where the change was
introduced.

[0] https://lkml.kernel.org/r/a23a826af7c108ea5651e73b8fbae5e653f16e86.camel@xxxxxx
[1] https://lkml.kernel.org/r/431e81699f2310eabfe5af0a3de400ab99d9323b.camel@xxxxxx
[2] https://lkml.kernel.org/r/f7e43b369c7d168c2ff04bfd91dfdf3afd0da12c.camel@xxxxxx

Sebastian