[PATCH 04/13] PCI: hyperv: Drop msi_controller structure

Michael Kelley mikelley at microsoft.com
Mon Mar 1 04:24:11 GMT 2021


From: Marc Zyngier <maz at kernel.org> Sent: Thursday, February 25, 2021 7:10 AM
> 
> The Hyper-V PCI driver still makes use of a msi_controller structure,
> but it looks more like a distant leftover than anything actually
> useful, since it is initialised to 0 and never used for anything.
> 
> Just remove it.
> 
> Signed-off-by: Marc Zyngier <maz at kernel.org>
> ---
>  drivers/pci/controller/pci-hyperv.c | 4 ----
>  1 file changed, 4 deletions(-)
> 
> diff --git a/drivers/pci/controller/pci-hyperv.c b/drivers/pci/controller/pci-hyperv.c
> index 6db8d96a78eb..93dc0fd004a3 100644
> --- a/drivers/pci/controller/pci-hyperv.c
> +++ b/drivers/pci/controller/pci-hyperv.c
> @@ -473,7 +473,6 @@ struct hv_pcibus_device {
>  	struct list_head dr_list;
> 
>  	struct msi_domain_info msi_info;
> -	struct msi_controller msi_chip;
>  	struct irq_domain *irq_domain;
> 
>  	spinlock_t retarget_msi_interrupt_lock;
> @@ -1866,9 +1865,6 @@ static int create_root_hv_pci_bus(struct hv_pcibus_device *hbus)
>  	if (!hbus->pci_bus)
>  		return -ENODEV;
> 
> -	hbus->pci_bus->msi = &hbus->msi_chip;
> -	hbus->pci_bus->msi->dev = &hbus->hdev->device;
> -
>  	pci_lock_rescan_remove();
>  	pci_scan_child_bus(hbus->pci_bus);
>  	hv_pci_assign_numa_node(hbus);
> --
> 2.29.2

Reviewed-by: Michael Kelley <mikelley at microsoft.com>

I also tested in an Azure VM on Hyper-V, with a Mellanox ConnectX-4
virtual function as the PCI device.  Started with a 5.11 kernel and
applied all 13 patches in the series.  The VM booted up correctly with
nothing anomalous in the 'dmesg' output. The Mellanox VF was
detected and configured properly.  'ethtool -S' output showed that
the Mellanox VF was handling network traffic as expected.  I also
hot-removed the Mellanox VF, and then hot-added it back again.
All worked as expected.  So,

Tested-by: Michael Kelley <mikelley at microsoft.com>



More information about the Linux-mediatek mailing list