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

Re: [Xen-devel] [PATCH v4 03/30] xen/PCI: Don't use deprecated function pci_scan_bus_parented()



On Thu, Feb 26, 2015 at 04:11:57PM +0800, Yijing Wang wrote:
> From: Arnd Bergmann <arnd@xxxxxxxx>
> 
> Use pci_scan_root_bus() instead of deprecated function
> pci_scan_bus_parented().
> 
> Signed-off-by: Arnd Bergmann <arnd@xxxxxxxx>
> Signed-off-by: Yijing Wang <wangyijing@xxxxxxxxxx>
> CC: Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx>
> CC: xen-devel@xxxxxxxxxxxxxxxxxxxx
> ---
>  drivers/pci/xen-pcifront.c |   10 +++++++---
>  1 files changed, 7 insertions(+), 3 deletions(-)
> 
> diff --git a/drivers/pci/xen-pcifront.c b/drivers/pci/xen-pcifront.c
> index b1ffebe..240ddbc 100644
> --- a/drivers/pci/xen-pcifront.c
> +++ b/drivers/pci/xen-pcifront.c
> @@ -446,6 +446,7 @@ static int pcifront_scan_root(struct pcifront_device 
> *pdev,
>                                unsigned int domain, unsigned int bus)
>  {
>       struct pci_bus *b;
> +     LIST_HEAD(resources);
>       struct pcifront_sd *sd = NULL;
>       struct pci_bus_entry *bus_entry = NULL;
>       int err = 0;
> @@ -470,17 +471,20 @@ static int pcifront_scan_root(struct pcifront_device 
> *pdev,
>               err = -ENOMEM;
>               goto err_out;
>       }
> +     pci_add_resource(&resources, &ioport_resource);
> +     pci_add_resource(&resources, &iomem_resource);

This doesn't add &busn_resource like pci_scan_bus_parented() does.
That might be OK, but I think we'll now emit "No busn resource found for
root bus, will use [bus %02x-ff]" when we didn't before.  I don't know how
xen-pcifront works; it would be nice if it could supply the correct
bus resource (and ioport and iomem).

>       pcifront_init_sd(sd, domain, bus, pdev);
>  
>       pci_lock_rescan_remove();
>  
> -     b = pci_scan_bus_parented(&pdev->xdev->dev, bus,
> -                               &pcifront_bus_ops, sd);
> +     b = pci_scan_root_bus(&pdev->xdev->dev, bus,
> +                               &pcifront_bus_ops, sd, &resources);
>       if (!b) {
>               dev_err(&pdev->xdev->dev,
>                       "Error creating PCI Frontend Bus!\n");
>               err = -ENOMEM;
>               pci_unlock_rescan_remove();
> +             pci_free_resource_list(&resources);
>               goto err_out;
>       }
>  
> @@ -488,7 +492,7 @@ static int pcifront_scan_root(struct pcifront_device 
> *pdev,
>  
>       list_add(&bus_entry->list, &pdev->root_buses);
>  
> -     /* pci_scan_bus_parented skips devices which do not have a have
> +     /* pci_scan_root_bus skips devices which do not have a have

Please fix the comment typo at the same time ("have a have").

>       * devfn==0. The pcifront_scan_bus enumerates all devfn. */
>       err = pcifront_scan_bus(pdev, domain, bus, b);
>  
> -- 
> 1.7.1
> 

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.