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
Unknown Object (File)
Sun, Apr 12, 5:33 PM
Unknown Object (File)
Sat, Apr 11, 10:18 PM
Unknown Object (File)
Fri, Apr 10, 12:08 PM
Unknown Object (File)
Thu, Apr 9, 11:27 PM
Unknown Object (File)
Wed, Apr 8, 9:23 AM
Unknown Object (File)
Wed, Apr 8, 2:17 AM
Unknown Object (File)
Thu, Mar 26, 12:30 PM
Unknown Object (File)
Tue, Mar 24, 2:49 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.