pds_core: remove redundant pci_clear_master()
authorYu Liao <liaoyu15@huawei.com>
Thu, 17 Aug 2023 02:57:09 +0000 (10:57 +0800)
committerJakub Kicinski <kuba@kernel.org>
Fri, 18 Aug 2023 22:30:03 +0000 (15:30 -0700)
do_pci_disable_device() disable PCI bus-mastering as following:
static void do_pci_disable_device(struct pci_dev *dev)
{
u16 pci_command;

pci_read_config_word(dev, PCI_COMMAND, &pci_command);
if (pci_command & PCI_COMMAND_MASTER) {
pci_command &= ~PCI_COMMAND_MASTER;
pci_write_config_word(dev, PCI_COMMAND, pci_command);
}

pcibios_disable_device(dev);
}
And pci_disable_device() sets dev->is_busmaster to 0.

pci_enable_device() is called only once before calling to
pci_disable_device() and such pci_clear_master() is not needed. So remove
redundant pci_clear_master().

Also rename goto label 'err_out_clear_master' to 'err_out_disable_device'.

Signed-off-by: Yu Liao <liaoyu15@huawei.com>
Reviewed-by: Simon Horman <horms@kernel.org>
Reviewed-by: Leon Romanovsky <leonro@nvidia.com>
Acked-by: Shannon Nelson <shannon.nelson@amd.com>
Link: https://lore.kernel.org/r/20230817025709.2023553-1-liaoyu15@huawei.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/ethernet/amd/pds_core/main.c

index 6727579..3a45bf4 100644 (file)
@@ -367,14 +367,13 @@ static int pdsc_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
                err = pdsc_init_vf(pdsc);
        if (err) {
                dev_err(dev, "Cannot init device: %pe\n", ERR_PTR(err));
-               goto err_out_clear_master;
+               goto err_out_disable_device;
        }
 
        clear_bit(PDSC_S_INITING_DRIVER, &pdsc->state);
        return 0;
 
-err_out_clear_master:
-       pci_clear_master(pdev);
+err_out_disable_device:
        pci_disable_device(pdev);
 err_out_free_ida:
        ida_free(&pdsc_ida, pdsc->uid);
@@ -439,7 +438,6 @@ static void pdsc_remove(struct pci_dev *pdev)
                pci_release_regions(pdev);
        }
 
-       pci_clear_master(pdev);
        pci_disable_device(pdev);
 
        ida_free(&pdsc_ida, pdsc->uid);