Re: [PATCH 4/8] net/fungible: Remove redundant pci_clear_master

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, Mar 23, 2023 at 2:04 AM Cai Huoqing <cai.huoqing@xxxxxxxxx> 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@xxxxxxxxx>

Acked-by: Dimitris Michailidis <dmichail@xxxxxxxxxxxx>


> ---
>  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
>




[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Photo]     [Yosemite News]     [Yosemite Photos]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux