Re: [PATCH 4/8] net/fungible: Remove redundant pci_clear_master
From: Dimitris Michailidis <hidden>
Date: 2023-03-23 17:25:25
Also in:
linux-hyperv, linux-rdma, lkml
On Thu, Mar 23, 2023 at 2:04 AM Cai Huoqing [off-list ref] wrote:
Remove pci_clear_master to simplify the code,
the bus-mastering is also cleared in do_pci_disable_device,
like this:
./drivers/pci/pci.c:2197
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 dev->is_busmaster is set to 0 in pci_disable_device.
Signed-off-by: Cai Huoqing <cai.huoqing@linux.dev>Acked-by: Dimitris Michailidis <dmichail@fungible.com>
quoted hunk ↗ jump to hunk
--- drivers/net/ethernet/fungible/funcore/fun_dev.c | 2 -- 1 file changed, 2 deletions(-)diff --git a/drivers/net/ethernet/fungible/funcore/fun_dev.c b/drivers/net/ethernet/fungible/funcore/fun_dev.c index 3680f83feba2..a7fbd4cd560a 100644 --- a/drivers/net/ethernet/fungible/funcore/fun_dev.c +++ b/drivers/net/ethernet/fungible/funcore/fun_dev.c@@ -746,7 +746,6 @@ void fun_dev_disable(struct fun_dev *fdev) bitmap_free(fdev->irq_map); pci_free_irq_vectors(pdev); - pci_clear_master(pdev); pci_disable_device(pdev); fun_unmap_bars(fdev);@@ -821,7 +820,6 @@ int fun_dev_enable(struct fun_dev *fdev, struct pci_dev *pdev, disable_admin: fun_disable_admin_queue(fdev); free_irq_mgr: - pci_clear_master(pdev); bitmap_free(fdev->irq_map); free_irqs: pci_free_irq_vectors(pdev); --2.34.1