- Make sure GICv3 controller interrupt activation doesn't race with

a concurrent deactivation due to propagation delays of the register
   write
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEzv7L6UO9uDPlPSfHEsHwGGHeVUoFAmcwppUACgkQEsHwGGHe
 VUoQug/+I1WMcgYC3gT+psepRSoR3jFzEbOsBxNuxwGiRWHb9CL3b64BTH/ORilM
 CJsK6119XkcQMtPgfPivX9tu3XtEcsmlI+riiwsQvzRyzRAt+LPYlGTtck0mzGv3
 1N3UQQRM9erPycLZlaGl6WOPYpbQ67ztKWGiQZnJeicecKHIkwM0agRh+jLkpSnV
 WAqODzqC+7+Kcr8AGxaR2AQtEuGyIKqtjqPnDxFnRm3Vkxzd297uYos9+bYgZN0q
 53ZUQTxnCq8X5zqrzvMXXAAW8iBfBoU5GmqKrLFd+HOpXz6fyJZMYO60RlvXVs3+
 FDuxnr20tLbv7nomOHYWyCX2NjtXN5E+p/NDeEd41gbGWMUa5Ho36YIo3s03L7qm
 LjJNUbSr0kwpcDlShuJh/kthLFUJ5TZnirBF7LCaSd3EFG2N4hPc56YEELD+zus5
 SS2HcMgNBp1+O8ix3kWbhE6PO2uqNSdlFr2B2Rh6JTVOHZxoxz2Ww/bC8Zd32B/F
 sYYRCyf0EzrHYsSbR+Ib7Hj48mNmFuFkk3nGEapk7KaaszFR6Ackoyh/onul60GB
 il8Le+yskQuL6/7B12NwPjcH0Ggt9xfWKoYaQK40OU61p52KYdqDzNajA5ReL0Sh
 79ZrM7wY2rbypwbJp0s7T5ThuQ4jVMEoMDQJsTxrcmS4Kkl1Wtc=
 =SfyT
 -----END PGP SIGNATURE-----

Merge tag 'irq_urgent_for_v6.12_rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

Pull irq fix from Borislav Petkov:

 - Make sure GICv3 controller interrupt activation doesn't race with a
   concurrent deactivation due to propagation delays of the register
   write

* tag 'irq_urgent_for_v6.12_rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
  irqchip/gic-v3: Force propagation of the active state with a read-back
This commit is contained in:
Linus Torvalds 2024-11-10 09:37:47 -08:00
commit a9cda7c0ff

View File

@ -524,6 +524,13 @@ static int gic_irq_set_irqchip_state(struct irq_data *d,
} }
gic_poke_irq(d, reg); gic_poke_irq(d, reg);
/*
* Force read-back to guarantee that the active state has taken
* effect, and won't race with a guest-driven deactivation.
*/
if (reg == GICD_ISACTIVER)
gic_peek_irq(d, reg);
return 0; return 0;
} }