irqdomain: Cache irq_data instead of a virq number in the revmap
authorMarc Zyngier <maz@kernel.org>
Mon, 5 Apr 2021 10:46:53 +0000 (11:46 +0100)
committerMarc Zyngier <maz@kernel.org>
Thu, 10 Jun 2021 12:09:18 +0000 (13:09 +0100)
commit48b15a7921d60680babe59f64e127816585a585c
treef98cf345ef64188bfa4e05f235acbbdf49c56ecc
parent426fa316148bccabf48f9c91a13c387ee911eadc
irqdomain: Cache irq_data instead of a virq number in the revmap

Caching a virq number in the revmap is pretty inefficient, as
it means we will need to convert it back to either an irq_data
or irq_desc to do anything with it.

It is also a bit odd, as the radix tree does cache irq_data
pointers.

Change the revmap type to be an irq_data pointer instead of
an unsigned int, and preserve the current API for now.

Signed-off-by: Marc Zyngier <maz@kernel.org>
include/linux/irqdomain.h
kernel/irq/irqdomain.c