Page MenuHomeFreeBSD

INTRNG: only shuffle interrupts for !EARLY_AP_STARTUP
ClosedPublic

Authored by mhorne on Jul 16 2020, 8:06 PM.
Tags
None
Referenced Files
F169359969: D25693.id74762.diff
Tue, Sep 1, 7:48 AM
F169225310: D25693.id.diff
Mon, Aug 31, 10:55 PM
F169220853: D25693.diff
Mon, Aug 31, 10:20 PM
Unknown Object (File)
Sun, Aug 30, 1:08 AM
Unknown Object (File)
Sat, Aug 29, 11:37 PM
Unknown Object (File)
Sat, Aug 29, 9:45 PM
Unknown Object (File)
Sat, Aug 29, 9:36 PM
Unknown Object (File)
Fri, Aug 28, 3:26 PM
Subscribers

Details

Summary

During device attachment, all interrupt sources will bind to the BSP,
as it is the only processor online. This means interrupts must be
redistributed later, during SI_SUB_SMP.

For the EARLY_AP_STARTUP case, this is no longer true. SI_SUB_SMP will
execute much earlier, meaning APs will be online and available before
devices begin attachment, and there will therefore be nothing to
shuffle.

All PIC-conforming interrupt controllers will handle this early
distribution properly, except for RISC-V's PLIC. Make the necessary
tweak to the PLIC driver.

While here, convert irq_assign_cpu from boolean_t to a bool.

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

mhorne created this revision.
This revision is now accepted and ready to land.Jul 20 2020, 5:41 PM
This revision was automatically updated to reflect the committed changes.