HomeFreeBSD

arm64: gicv3: setup PPIs on all APs after they're online

Description

arm64: gicv3: setup PPIs on all APs after they're online

For all PPIs setup earlier than SI_SUB_SMP, PIC_INIT_SECONDARY ends up
cleaning these up for each AP as it comes online. Once they're online,
we don't currently do anything to make sure they're configured for other
APs. Fix it by using smp_rendezvous for the meaty bits of configuring a
PPI, which will just do single-thread behavior before APs are online but
do the right thing for other CPUs after.

While we're here, make sure redistributor config is correct for other
APs as they come online in gic_v3_init_secondary.

Reported/Tested by: Souradeep Chakrabarti (Microsoft/Hyper-V)
Reviewed by: andrew (before slight refactor)
Differential Revision: https://reviews.freebsd.org/D40112

Details

Provenance
kevansAuthored on May 15 2023, 5:21 PM
Reviewer
andrew
Differential Revision
D40112: arm64: gicv3: setup PPIs on all APs after they're online
Parents
rG26056fa8d348: Revert "ifconfig: switch IPv4/IPv6 address manipulations to Netlink"
Branches
Unknown
Tags
Unknown