[PATCH v2 0/3] irqchip/gic-v5: Tidy up LPI allocation

Sascha Bischoff posted 3 patches 1 month, 1 week ago
drivers/irqchip/irq-gic-v5-its.c   | 34 +++--------
drivers/irqchip/irq-gic-v5.c       | 98 ++++++++++++++++--------------
include/linux/irqchip/arm-gic-v5.h |  3 -
3 files changed, 60 insertions(+), 75 deletions(-)
[PATCH v2 0/3] irqchip/gic-v5: Tidy up LPI allocation
Posted by Sascha Bischoff 1 month, 1 week ago
LPIs are owned by the LPI domain, but the ITS MSI and IPI domains
currently allocate and free them directly. This exposes the parent's
allocation policy to child domains and requires the children to release
resources that belong to the parent.

Move LPI allocation and teardown into the LPI domain and remove the
exported wrappers that allowed external callers to manage LPIs
directly. Then update the LPI, IPI and ITS MSI domains to use range
allocation and teardown instead of enforcing one-by-one operation.

Thanks,
Sascha

---
Changes since v1:
* Re-wrote commit messages for patches 1 & 2 to be in keeping with the
  expected style.
* Cleaned up loops in patch 2 to use unsigned int and minimise usage
  of `virq + i` (using `virq++` instead). Thanks, Thomas.
* Added Reviewed-by tags.
* Added a Fixes tag to patch 2 as it does fix an existing bug.

v1: https://lore.kernel.org/all/20260430153352.3654325-1-sascha.bischoff@arm.com/

Sascha Bischoff (3):
  irqchip/gic-v5: Move LPI allocation into the LPI domain
  irqchip/gic-v5: Support range allocation for LPIs
  irqchip/gic-v5: Allocate ITS parent LPIs as a range

 drivers/irqchip/irq-gic-v5-its.c   | 34 +++--------
 drivers/irqchip/irq-gic-v5.c       | 98 ++++++++++++++++--------------
 include/linux/irqchip/arm-gic-v5.h |  3 -
 3 files changed, 60 insertions(+), 75 deletions(-)

-- 
2.34.1