Jiri Slaby e9d152
From: Reinette Chatre <reinette.chatre@intel.com>
Jiri Slaby e9d152
Date: Wed, 29 Mar 2023 13:13:11 -0700
Jiri Slaby e9d152
Subject: [PATCH] PCI/MSI: Provide missing stub for pci_msix_can_alloc_dyn()
Jiri Slaby e9d152
References: bsc#1012628
Jiri Slaby e9d152
Patch-mainline: 6.2.12
Jiri Slaby e9d152
Git-commit: 195d8e5da3acb17c5357526494f818a21e97cd10
Jiri Slaby e9d152
Jiri Slaby e9d152
commit 195d8e5da3acb17c5357526494f818a21e97cd10 upstream.
Jiri Slaby e9d152
Jiri Slaby e9d152
pci_msix_can_alloc_dyn() is not declared when CONFIG_PCI_MSI is disabled.
Jiri Slaby e9d152
Jiri Slaby e9d152
There is no existing user of pci_msix_can_alloc_dyn() but work is in
Jiri Slaby e9d152
progress to change this. This work encounters the following error when
Jiri Slaby e9d152
CONFIG_PCI_MSI is disabled:
Jiri Slaby e9d152
Jiri Slaby e9d152
  drivers/vfio/pci/vfio_pci_intrs.c:427:21: error: implicit declaration of function 'pci_msix_can_alloc_dyn' [-Werror=implicit-function-declaration]
Jiri Slaby e9d152
Jiri Slaby e9d152
Provide definition for pci_msix_can_alloc_dyn() in preparation for users
Jiri Slaby e9d152
that need to compile when CONFIG_PCI_MSI is disabled.
Jiri Slaby e9d152
Jiri Slaby e9d152
[bhelgaas: Also reported by Arnd Bergmann <arnd@kernel.org> in
Jiri Slaby e9d152
drivers/net/ethernet/mellanox/mlx5/core/pci_irq.c; added his Fixes: line]
Jiri Slaby e9d152
Jiri Slaby e9d152
Fixes: fb0a6a268dcd ("net/mlx5: Provide external API for allocating vectors")
Jiri Slaby e9d152
Fixes: 34026364df8e ("PCI/MSI: Provide post-enable dynamic allocation interfaces for MSI-X")
Jiri Slaby e9d152
Link: https://lore.kernel.org/oe-kbuild-all/202303291000.PWFqGCxH-lkp@intel.com/
Jiri Slaby e9d152
Link: https://lore.kernel.org/r/310ecc4815dae4174031062f525245f0755c70e2.1680119924.git.reinette.chatre@intel.com
Jiri Slaby e9d152
Reported-by: kernel test robot <lkp@intel.com>
Jiri Slaby e9d152
Signed-off-by: Reinette Chatre <reinette.chatre@intel.com>
Jiri Slaby e9d152
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Jiri Slaby e9d152
Reviewed-by: Kuppuswamy Sathyanarayanan <sathyanarayanan.kuppuswamy@linux.intel.com>
Jiri Slaby e9d152
Cc: stable@vger.kernel.org	# v6.2+
Jiri Slaby e9d152
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Jiri Slaby e9d152
Signed-off-by: Jiri Slaby <jslaby@suse.cz>
Jiri Slaby e9d152
---
Jiri Slaby e9d152
 include/linux/pci.h | 2 ++
Jiri Slaby e9d152
 1 file changed, 2 insertions(+)
Jiri Slaby e9d152
Jiri Slaby e9d152
diff --git a/include/linux/pci.h b/include/linux/pci.h
Jiri Slaby e9d152
index db6ec828..7e8e8633 100644
Jiri Slaby e9d152
--- a/include/linux/pci.h
Jiri Slaby e9d152
+++ b/include/linux/pci.h
Jiri Slaby e9d152
@@ -1623,6 +1623,8 @@ pci_alloc_irq_vectors(struct pci_dev *dev, unsigned int min_vecs,
Jiri Slaby e9d152
 					      flags, NULL);
Jiri Slaby e9d152
 }
Jiri Slaby e9d152
 
Jiri Slaby e9d152
+static inline bool pci_msix_can_alloc_dyn(struct pci_dev *dev)
Jiri Slaby e9d152
+{ return false; }
Jiri Slaby e9d152
 static inline struct msi_map pci_msix_alloc_irq_at(struct pci_dev *dev, unsigned int index,
Jiri Slaby e9d152
 						   const struct irq_affinity_desc *affdesc)
Jiri Slaby e9d152
 {
Jiri Slaby e9d152
-- 
Jiri Slaby e9d152
2.35.3
Jiri Slaby e9d152