summaryrefslogtreecommitdiff
path: root/kernel/irq
diff options
context:
space:
mode:
authorThomas Gleixner <tglx@linutronix.de>2021-12-07 01:51:04 +0300
committerThomas Gleixner <tglx@linutronix.de>2021-12-17 00:22:16 +0300
commit125282cd4f33ecd53a24ae4807409da0e5e90fd4 (patch)
tree78038c05146e206da2db48be3456342eef080f36 /kernel/irq
parent1900c962e2dcfacec894558eb34971bdc9c67443 (diff)
downloadlinux-125282cd4f33ecd53a24ae4807409da0e5e90fd4.tar.xz
genirq/msi: Move descriptor list to struct msi_device_data
It's only required when MSI is in use. 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/20211206210747.650487479@linutronix.de
Diffstat (limited to 'kernel/irq')
-rw-r--r--kernel/irq/msi.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/kernel/irq/msi.c b/kernel/irq/msi.c
index ab5e83f41188..c66787daee57 100644
--- a/kernel/irq/msi.c
+++ b/kernel/irq/msi.c
@@ -75,7 +75,9 @@ EXPORT_SYMBOL_GPL(get_cached_msi_msg);
static void msi_device_data_release(struct device *dev, void *res)
{
- WARN_ON_ONCE(!list_empty(&dev->msi_list));
+ struct msi_device_data *md = res;
+
+ WARN_ON_ONCE(!list_empty(&md->list));
dev->msi.data = NULL;
}
@@ -100,6 +102,7 @@ int msi_setup_device_data(struct device *dev)
if (!md)
return -ENOMEM;
+ INIT_LIST_HEAD(&md->list);
dev->msi.data = md;
devres_add(dev, md);
return 0;