Commit ed5a35ac authored by Russell King's avatar Russell King

VIDEO: cyberpro: pci_request_regions needs a persistent name

Don't pass a name pointer from the kernel stack, it will not survive
and will result in corrupted /proc/iomem output.
Signed-off-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
parent e8b8f5ef
...@@ -1573,15 +1573,15 @@ cyberpro_pci_probe(struct pci_dev *dev, const struct pci_device_id *id) ...@@ -1573,15 +1573,15 @@ cyberpro_pci_probe(struct pci_dev *dev, const struct pci_device_id *id)
if (err) if (err)
return err; return err;
err = pci_request_regions(dev, name);
if (err)
return err;
err = -ENOMEM; err = -ENOMEM;
cfb = cyberpro_alloc_fb_info(id->driver_data, name); cfb = cyberpro_alloc_fb_info(id->driver_data, name);
if (!cfb) if (!cfb)
goto failed_release; goto failed_release;
err = pci_request_regions(dev, cfb->fb.fix.id);
if (err)
goto failed_regions;
cfb->dev = dev; cfb->dev = dev;
cfb->region = pci_ioremap_bar(dev, 0); cfb->region = pci_ioremap_bar(dev, 0);
if (!cfb->region) if (!cfb->region)
...@@ -1633,10 +1633,10 @@ cyberpro_pci_probe(struct pci_dev *dev, const struct pci_device_id *id) ...@@ -1633,10 +1633,10 @@ cyberpro_pci_probe(struct pci_dev *dev, const struct pci_device_id *id)
failed: failed:
iounmap(cfb->region); iounmap(cfb->region);
failed_ioremap: failed_ioremap:
pci_release_regions(dev);
failed_regions:
cyberpro_free_fb_info(cfb); cyberpro_free_fb_info(cfb);
failed_release: failed_release:
pci_release_regions(dev);
return err; return err;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment