Commit ed5a35acbb48d512332a53565e6341c65eecfa29

Authored by Russell King
1 parent e8b8f5ef90

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: Russell King <rmk+kernel@arm.linux.org.uk>

Showing 1 changed file with 6 additions and 6 deletions Side-by-side Diff

drivers/video/cyber2000fb.c
... ... @@ -1573,15 +1573,15 @@
1573 1573 if (err)
1574 1574 return err;
1575 1575  
1576   - err = pci_request_regions(dev, name);
1577   - if (err)
1578   - return err;
1579   -
1580 1576 err = -ENOMEM;
1581 1577 cfb = cyberpro_alloc_fb_info(id->driver_data, name);
1582 1578 if (!cfb)
1583 1579 goto failed_release;
1584 1580  
  1581 + err = pci_request_regions(dev, cfb->fb.fix.id);
  1582 + if (err)
  1583 + goto failed_regions;
  1584 +
1585 1585 cfb->dev = dev;
1586 1586 cfb->region = pci_ioremap_bar(dev, 0);
1587 1587 if (!cfb->region)
1588 1588  
... ... @@ -1633,10 +1633,10 @@
1633 1633 failed:
1634 1634 iounmap(cfb->region);
1635 1635 failed_ioremap:
  1636 + pci_release_regions(dev);
  1637 +failed_regions:
1636 1638 cyberpro_free_fb_info(cfb);
1637 1639 failed_release:
1638   - pci_release_regions(dev);
1639   -
1640 1640 return err;
1641 1641 }
1642 1642