mirror of https://gitee.com/openkylin/linux.git
staging: vt6655: do not use PCI resources before pci_enable_device()
IRQ and resource[] may not have correct values until after PCI hotplug setup occurs at pci_enable_device() time. The semantic match that finds this problem is as follows: // <smpl> @@ identifier x; identifier request ~= "pci_request.*|pci_resource.*"; @@ ( * x->irq | * x->resource | * request(x, ...) ) ... *pci_enable_device(x) // </smpl> Signed-off-by: Kulikov Vasiliy <segooon@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
parent
bd2bc4c763
commit
13b631a599
|
@ -955,12 +955,13 @@ vt6655_probe(struct pci_dev *pcid, const struct pci_device_id *ent)
|
||||||
pDevice->dev = dev;
|
pDevice->dev = dev;
|
||||||
pDevice->next_module = root_device_dev;
|
pDevice->next_module = root_device_dev;
|
||||||
root_device_dev = dev;
|
root_device_dev = dev;
|
||||||
dev->irq = pcid->irq;
|
|
||||||
|
|
||||||
if (pci_enable_device(pcid)) {
|
if (pci_enable_device(pcid)) {
|
||||||
device_free_info(pDevice);
|
device_free_info(pDevice);
|
||||||
return -ENODEV;
|
return -ENODEV;
|
||||||
}
|
}
|
||||||
|
dev->irq = pcid->irq;
|
||||||
|
|
||||||
#ifdef DEBUG
|
#ifdef DEBUG
|
||||||
printk("Before get pci_info memaddr is %x\n",pDevice->memaddr);
|
printk("Before get pci_info memaddr is %x\n",pDevice->memaddr);
|
||||||
#endif
|
#endif
|
||||||
|
|
Loading…
Reference in New Issue