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
F136942899: D25693.id.diff
Thu, Nov 20, 6:53 PM
F136941439: D25693.id74762.diff
Thu, Nov 20, 6:45 PM
F136939769: D25693.id74539.diff
Thu, Nov 20, 6:31 PM
F136938019: D25693.diff
Thu, Nov 20, 6:17 PM
Unknown Object (File)
Thu, Nov 13, 6:29 PM
Unknown Object (File)
Mon, Nov 10, 10:26 AM
Unknown Object (File)
Sun, Nov 9, 7:20 AM
Unknown Object (File)
Tue, Nov 4, 4:50 AM
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.