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
F131906828: D25693.id74762.diff
Sun, Oct 12, 3:17 AM
Unknown Object (File)
Tue, Sep 30, 2:06 PM
Unknown Object (File)
Thu, Sep 18, 10:23 PM
Unknown Object (File)
Thu, Sep 18, 10:59 AM
Unknown Object (File)
Thu, Sep 18, 10:51 AM
Unknown Object (File)
Thu, Sep 18, 10:47 AM
Unknown Object (File)
Thu, Sep 18, 10:44 AM
Unknown Object (File)
Thu, Sep 18, 10:38 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.