Commit 877fe9d4 authored by Jakub Kicinski's avatar Jakub Kicinski Committed by David S. Miller

Revert "drivers/net/ethernet/neterion/vxge: Fix a use-after-free bug in vxge-main.c"

This reverts commit 8fc74d18.

BAR0 is the main (only?) register bank for this device. We most
obviously can't unmap it before the netdev is unregistered.
This was pointed out in review but the patch got reposted and
merged, anyway.

The author of the patch was only testing it with a QEMU model,
which I presume does not emulate enough for the netdev to be brought
up (author's replies are not visible in lore because they kept sending
their emails in HTML).

Link: https://lore.kernel.org/all/20220616085059.680dc215@kernel.org/
Fixes: 8fc74d18 ("drivers/net/ethernet/neterion/vxge: Fix a use-after-free bug in vxge-main.c")
Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 53664d51
...@@ -4736,10 +4736,10 @@ static void vxge_remove(struct pci_dev *pdev) ...@@ -4736,10 +4736,10 @@ static void vxge_remove(struct pci_dev *pdev)
for (i = 0; i < vdev->no_of_vpath; i++) for (i = 0; i < vdev->no_of_vpath; i++)
vxge_free_mac_add_list(&vdev->vpaths[i]); vxge_free_mac_add_list(&vdev->vpaths[i]);
iounmap(vdev->bar0);
vxge_device_unregister(hldev); vxge_device_unregister(hldev);
/* Do not call pci_disable_sriov here, as it will break child devices */ /* Do not call pci_disable_sriov here, as it will break child devices */
vxge_hw_device_terminate(hldev); vxge_hw_device_terminate(hldev);
iounmap(vdev->bar0);
pci_release_region(pdev, 0); pci_release_region(pdev, 0);
pci_disable_device(pdev); pci_disable_device(pdev);
driver_config->config_dev_cnt--; driver_config->config_dev_cnt--;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment