diff options
author | Shanker Donthineni <sdonthineni@nvidia.com> | 2023-05-19 08:49:02 -0500 |
---|---|---|
committer | Thomas Gleixner <tglx@linutronix.de> | 2023-05-24 11:39:44 +0200 |
commit | 721255b9826bd11c7a38b585905fc2dd0fb94e52 (patch) | |
tree | 2c266db0d16e3708c17e86e3adb6cc644a0d9e4b /arch/mips/kernel/cpu-probe.c | |
parent | 5e630aa8d9fcd4c0cb6d5d09422009533aba979a (diff) |
genirq: Use a maple tree for interrupt descriptor management
The current implementation uses a static bitmap for interrupt descriptor
allocation and a radix tree to pointer store the pointer for lookup.
However, the size of the bitmap is constrained by the build time macro
MAX_SPARSE_IRQS, which may not be sufficient to support high-end servers,
particularly those with GICv4.1 hardware, which require a large interrupt
space to cover LPIs and vSGIs.
Replace the bitmap and the radix tree with a maple tree, which not only
stores pointers for lookup, but also provides a mechanism to find free
ranges. That removes the build time hardcoded upper limit.
Signed-off-by: Shanker Donthineni <sdonthineni@nvidia.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Link: https://lore.kernel.org/r/20230519134902.1495562-4-sdonthineni@nvidia.com
Diffstat (limited to 'arch/mips/kernel/cpu-probe.c')
0 files changed, 0 insertions, 0 deletions