On Sat, 25 Apr 2020 at 03:01, Stefano Stabellini <[email protected]> wrote:
> [   86.900974] ------------[ cut here ]------------
> [   86.905134] Interrupt for port 6, but apparently not enabled; per-user 
> (____ptrval____)
> [   86.913228] WARNING: CPU: 0 PID: 2437 at drivers/xen/evtchn.c:167 
> evtchn_interrupt+0xfc/0x108

The implementation of the evtchn_interrupt() is relying to be called
in the top-half. On RT, interrupts handlers are forced to be threaded
and use the IRQF_ONESHOT semantics if they were not threaded before.

However, IRQF_ONESHOT is completely broken for event channels (this is
not RT's fault) and hence why you see the warning here.

Note that you can't force to run evtchn_interrupt() in the top-half
because it relies on functions that may sleep.

See https://lkml.org/lkml/2019/2/19/642.

Cheers,

-- 
Julien Grall

Reply via email to