Re: [PATCH] PCI/MSI: Provide missing stub for pci_msix_can_alloc_dyn()

From: Bjorn Helgaas
Date: Thu Apr 06 2023 - 14:49:40 EST


[+cc folks from Arnd's similar patch]

On Wed, Mar 29, 2023 at 01:13:11PM -0700, Reinette Chatre wrote:
> pci_msix_can_alloc_dyn() is not declared when CONFIG_PCI_MSI
> is disabled.
>
> There is no existing user of pci_msix_can_alloc_dyn() but
> work is in progress to change this. This work encounters
> the following error when CONFIG_PCI_MSI is disabled:
>
> drivers/vfio/pci/vfio_pci_intrs.c:427:21: error: implicit declaration \
> of function 'pci_msix_can_alloc_dyn' \
> [-Werror=implicit-function-declaration]
>
> Provide definition for pci_msix_can_alloc_dyn() in preparation
> for users that need to compile when CONFIG_PCI_MSI is disabled.
>
> Fixes: 34026364df8e ("PCI/MSI: Provide post-enable dynamic allocation interfaces for MSI-X")
> Reported-by: kernel test robot <lkp@xxxxxxxxx>
> Link: https://lore.kernel.org/oe-kbuild-all/202303291000.PWFqGCxH-lkp@xxxxxxxxx/
> Signed-off-by: Reinette Chatre <reinette.chatre@xxxxxxxxx>

Applied with Sathy's reviewed-by to for-linus for v6.3, thanks!

I also added the Fixes: line for mlx5 from Arnd's patch.

> ---
> I missed this one in my previous fix. After this all the functions
> in pci.h's #ifdef CONFIG_PCI_MSI portion have stubs when
> CONFIG_PCI_MSI is disabled.
>
> include/linux/pci.h | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/include/linux/pci.h b/include/linux/pci.h
> index b50e5c79f7e3..a5dda515fcd1 100644
> --- a/include/linux/pci.h
> +++ b/include/linux/pci.h
> @@ -1624,6 +1624,8 @@ pci_alloc_irq_vectors(struct pci_dev *dev, unsigned int min_vecs,
> flags, NULL);
> }
>
> +static inline bool pci_msix_can_alloc_dyn(struct pci_dev *dev)
> +{ return false; }
> static inline struct msi_map pci_msix_alloc_irq_at(struct pci_dev *dev, unsigned int index,
> const struct irq_affinity_desc *affdesc)
> {
> --
> 2.34.1
>