On 14/07/2019 03:31, Benjamin Herrenschmidt wrote:
> On Sat, 2019-07-13 at 18:53 +1000, Alexey Kardashevskiy wrote:
>>
>> On 13/07/2019 09:47, Benjamin Herrenschmidt wrote:
>>> On Fri, 2019-07-12 at 19:37 +1000, Alexey Kardashevskiy wrote:
>>>>
>>>
>>>
> https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/arch/powerpc/kernel/irq.c#n614
>>>>
>>>> If so, then in order to do EOI, I'll need the desc which is gone,
>>>> or
>>>> I am missing the point?
>>>
>>> All you need is drop the local CPU priority.
>>
>> I know that, the question was how. I cannot use irq_chip in
>> arch/powerpc/kernel/irq.c and I do not want to add
>> ppc_md.enable_irqs().
> 
> Well, best is probably to do just that though, but call it something
> like ppc_md.orphan_irq() or something like that instead. Another option
> as you mention is to try to scrub queues, but that's trickier to do due
> to the lockless nature of the queue handling.

When the IRQ is shutdown, couldn't we cleanup the CPU EQ by filtering 
all the dangling entries, and replacing them with zeroes ? That would
be alternative 1, but I don't think we need to scan all cpus. The last
target should be enough.

C.   

Reply via email to