Message ID | 20210225151023.3642391-5-maz@kernel.org (mailing list archive) |
---|---|
State | Awaiting Upstream |
Delegated to: | Geert Uytterhoeven |
Headers | show |
Series | PCI: MSI: Getting rid of msi_controller, and other cleanups | expand |
From: Marc Zyngier <maz@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@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@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@microsoft.com>
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);
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@kernel.org> --- drivers/pci/controller/pci-hyperv.c | 4 ---- 1 file changed, 4 deletions(-)