git: 490928831178 - stable/15 - LinuxKPI: fix argument type to lkpi_pci_msi_desc_alloc()
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Sat, 19 Sep 2026 14:40:26 UTC
The branch stable/15 has been updated by bz:
URL: https://cgit.FreeBSD.org/src/commit/?id=49092883117817e3201371b4c366ada630309b86
commit 49092883117817e3201371b4c366ada630309b86
Author: Bjoern A. Zeeb <bz@FreeBSD.org>
AuthorDate: 2026-08-16 21:37:08 +0000
Commit: Bjoern A. Zeeb <bz@FreeBSD.org>
CommitDate: 2026-09-19 09:34:10 +0000
LinuxKPI: fix argument type to lkpi_pci_msi_desc_alloc()
lkpi_pci_msi_desc_alloc() takes an unsigned int, not an int.
While here make sure the prototype is visibile in interrupt.h as
well before use to avoid -Wimplicit-function-declaration errors.
Discovered while working on a wireless driver.
Reviewed by: dumbbell
Differential Revision: https://reviews.freebsd.org/D58879
(cherry picked from commit cfb23b01e269e8a0a84066637b82b746f01b46b4)
---
sys/compat/linuxkpi/common/include/linux/interrupt.h | 1 +
sys/compat/linuxkpi/common/include/linux/pci.h | 3 ++-
sys/compat/linuxkpi/common/src/linux_pci.c | 2 +-
3 files changed, 4 insertions(+), 2 deletions(-)
diff --git a/sys/compat/linuxkpi/common/include/linux/interrupt.h b/sys/compat/linuxkpi/common/include/linux/interrupt.h
index dfd9816da8be..4dd88c217c5f 100644
--- a/sys/compat/linuxkpi/common/include/linux/interrupt.h
+++ b/sys/compat/linuxkpi/common/include/linux/interrupt.h
@@ -140,6 +140,7 @@ irq_set_affinity_hint(int vector, const cpumask_t *mask)
return (-error);
}
+struct msi_desc *lkpi_pci_msi_desc_alloc(unsigned int);
static inline struct msi_desc *
irq_get_msi_desc(unsigned int irq)
{
diff --git a/sys/compat/linuxkpi/common/include/linux/pci.h b/sys/compat/linuxkpi/common/include/linux/pci.h
index 6efd43f311cf..f6799ab6be28 100644
--- a/sys/compat/linuxkpi/common/include/linux/pci.h
+++ b/sys/compat/linuxkpi/common/include/linux/pci.h
@@ -59,6 +59,7 @@
#include <linux/device.h>
#include <linux/pci_ids.h>
#include <linux/pm.h>
+#include <linux/interrupt.h>
/*
* <linux/ioport.h> should be included here, like Linux, but we can't have that
@@ -387,7 +388,7 @@ int linuxkpi_pci_enable_msix(struct pci_dev *pdev, struct msix_entry *entries,
struct pci_dev *lkpinew_pci_dev(device_t);
void lkpi_pci_devres_release(struct device *, void *);
struct pci_dev *lkpi_pci_get_device(uint32_t, uint32_t, struct pci_dev *);
-struct msi_desc *lkpi_pci_msi_desc_alloc(int);
+struct msi_desc *lkpi_pci_msi_desc_alloc(unsigned int);
struct device *lkpi_pci_find_irq_dev(unsigned int irq);
int _lkpi_pci_enable_msi_range(struct pci_dev *pdev, int minvec, int maxvec);
diff --git a/sys/compat/linuxkpi/common/src/linux_pci.c b/sys/compat/linuxkpi/common/src/linux_pci.c
index c966daae9507..4909b52150ae 100644
--- a/sys/compat/linuxkpi/common/src/linux_pci.c
+++ b/sys/compat/linuxkpi/common/src/linux_pci.c
@@ -1613,7 +1613,7 @@ out:
}
struct msi_desc *
-lkpi_pci_msi_desc_alloc(int irq)
+lkpi_pci_msi_desc_alloc(unsigned int irq)
{
struct device *dev;
struct pci_dev *pdev;