Page MenuHomeFreeBSD

Don't use critical section when calling intr_irq_handler()
ClosedPublic

Authored by trasz on Oct 6 2020, 3:04 PM.
Tags
None
Referenced Files
F137797165: D26694.diff
Tue, Nov 25, 9:53 PM
Unknown Object (File)
Thu, Nov 20, 9:03 PM
Unknown Object (File)
Thu, Nov 20, 8:59 PM
Unknown Object (File)
Thu, Nov 20, 8:58 PM
Unknown Object (File)
Thu, Nov 20, 8:58 PM
Unknown Object (File)
Thu, Nov 20, 8:50 PM
Unknown Object (File)
Wed, Nov 19, 2:12 AM
Unknown Object (File)
Sun, Nov 16, 5:05 AM
Subscribers

Details

Summary

Don't use critical section when calling intr_irq_handler() - that
function enters critical section by itself anyway.

(XXX: Probably the critical section here can disappear entirely;
I'd rather do that later.)

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Passed
Unit
No Test Coverage
Build Status
Buildable 34017
Build 31206: arc lint + arc unit

Event Timeline

trasz requested review of this revision.Oct 6 2020, 3:04 PM
This revision is now accepted and ready to land.Oct 6 2020, 5:41 PM
jhb added inline comments.
sys/riscv/riscv/intr_machdep.c
174

This is likely needed as it is what sets the boundary as to when a context switch to a taskqueue or other there scheduled by a handler executes. If intr_isrc_dispatch() has its own critical section, then you can remove this, but if it doesn't, you probably need to leave this in place.