diff options
author | Thomas Gleixner <tglx@linutronix.de> | 2021-12-06 23:51:52 +0100 |
---|---|---|
committer | Thomas Gleixner <tglx@linutronix.de> | 2021-12-16 22:22:20 +0100 |
commit | cd6cf06590b9792340dceaa285138777f3cc4d90 (patch) | |
tree | 7012825c2c5947ddc13516012f5d4bfb77f4487a /drivers/pci/msi | |
parent | genirq/msi: Simplify sysfs handling (diff) | |
download | linux-cd6cf06590b9792340dceaa285138777f3cc4d90.tar.xz linux-cd6cf06590b9792340dceaa285138777f3cc4d90.zip |
genirq/msi: Convert storage to xarray
The current linked list storage for MSI descriptors is suboptimal in
several ways:
1) Looking up a MSI desciptor requires a O(n) list walk in the worst case
2) The upcoming support of runtime expansion of MSI-X vectors would need
to do a full list walk to figure out whether a particular index is
already associated.
3) Runtime expansion of sparse allocations is even more complex as the
current implementation assumes an ordered list (increasing MSI index).
Use an xarray which solves all of the above problems nicely.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Tested-by: Michael Kelley <mikelley@microsoft.com>
Tested-by: Nishanth Menon <nm@ti.com>
Reviewed-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Reviewed-by: Jason Gunthorpe <jgg@nvidia.com>
Link: https://lore.kernel.org/r/20211206210749.280627070@linutronix.de
Diffstat (limited to 'drivers/pci/msi')
0 files changed, 0 insertions, 0 deletions