diff options
author | Andrew Jones <ajones@ventanamicro.com> | 2025-04-30 14:48:37 +0200 |
---|---|---|
committer | Thomas Gleixner <tglx@linutronix.de> | 2025-04-30 23:25:10 +0200 |
commit | e6a3fc4f10b872d02e25f83227e725c79b25d893 (patch) | |
tree | 09f5bbc5dd09cb7b8c08d1a692e70cebec267322 /kernel | |
parent | b4432656b36e5cc1d50a1f2dc15357543add530e (diff) |
genirq/msi: Prevent NULL pointer dereference in msi_domain_debug_show()
irq_domain_debug_show_one() calls msi_domain_debug_show() with a non-NULL
domain pointer and a NULL irq_data pointer. irq_debug_show_data() calls it
with a NULL domain pointer.
The domain pointer is not used, but the irq_data pointer is required to be
non-NULL and lacks a NULL pointer check.
Add the missing NULL pointer check to ensure there is a non-NULL irq_data
pointer in msi_domain_debug_show() before dereferencing it.
[ tglx: Massaged change log ]
Fixes: 01499ae673dc ("genirq/msi: Expose MSI message data in debugfs")
Signed-off-by: Andrew Jones <ajones@ventanamicro.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Link: https://lore.kernel.org/all/20250430124836.49964-2-ajones@ventanamicro.com
Diffstat (limited to 'kernel')
-rw-r--r-- | kernel/irq/msi.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/kernel/irq/msi.c b/kernel/irq/msi.c index 5c8d43cdb0a3..c05ba7ca00fa 100644 --- a/kernel/irq/msi.c +++ b/kernel/irq/msi.c @@ -761,7 +761,7 @@ static int msi_domain_translate(struct irq_domain *domain, struct irq_fwspec *fw static void msi_domain_debug_show(struct seq_file *m, struct irq_domain *d, struct irq_data *irqd, int ind) { - struct msi_desc *desc = irq_data_get_msi_desc(irqd); + struct msi_desc *desc = irqd ? irq_data_get_msi_desc(irqd) : NULL; if (!desc) return; |