Re: [PATCH v2 03/30] xen/PCI: Don't use deprecated function pci_scan_bus_parented()

Yijing Wang
2015-01-23T02:12:42Z

On 2015/1/23 4:25, Konrad Rzeszutek Wilk wrote:
> On Wed, Jan 21, 2015 at 08:29:58AM +0800, Yijing Wang wrote:
>> From: Arnd Bergmann <arnd@arndb.de>
>>
>> Use pci_scan_root_bus() instead of deprecated function
>> pci_scan_bus_parented().
>>
>> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
>> Signed-off-by: Yijing Wang <wangyijing@huawei.com>
>> CC: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
>> CC: xen-devel@lists.xenproject.org
>
> It looks OK to me thought I need to test it first.

Thanks!

>> ---
>> 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);
>> 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
>> * devfn==0. The pcifront_scan_bus enumerates all devfn. */
>> err = pcifront_scan_bus(pdev, domain, bus, b);
>>
>> --
>> 1.7.1
>>
>
> .
>

--
Thanks!
Yijing