Thread (11 messages) 11 messages, 4 authors, 2023-03-24

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
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help