summaryrefslogtreecommitdiffstats
path: root/drivers/pci/pci-sysfs.c
diff options
context:
space:
mode:
authorTimothy S. Nelson <wayland@wayland.id.au>2009-01-29 20:12:47 +0100
committerJesse Barnes <jbarnes@virtuousgeek.org>2009-02-05 01:58:41 +0100
commit97c44836cdec1ea713a15d84098a1a908157e68f (patch)
treebc544c64ed8eeb3feb2f0b210ae7db04a40e1bae /drivers/pci/pci-sysfs.c
parentPCI: properly clean up ASPM link state on device remove (diff)
downloadlinux-97c44836cdec1ea713a15d84098a1a908157e68f.tar.xz
linux-97c44836cdec1ea713a15d84098a1a908157e68f.zip
PCI: return error on failure to read PCI ROMs
This patch makes the ROM reading code return an error to user space if the size of the ROM read is equal to 0. The patch also emits a warnings if the contents of the ROM are invalid, and documents the effects of the "enable" file on ROM reading. Signed-off-by: Timothy S. Nelson <wayland@wayland.id.au> Acked-by: Alex Villacis-Lasso <a_villacis@palosanto.com> Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
Diffstat (limited to 'drivers/pci/pci-sysfs.c')
-rw-r--r--drivers/pci/pci-sysfs.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/pci/pci-sysfs.c b/drivers/pci/pci-sysfs.c
index db7ec14fa719..dfc4e0ddf241 100644
--- a/drivers/pci/pci-sysfs.c
+++ b/drivers/pci/pci-sysfs.c
@@ -768,8 +768,8 @@ pci_read_rom(struct kobject *kobj, struct bin_attribute *bin_attr,
return -EINVAL;
rom = pci_map_rom(pdev, &size); /* size starts out as PCI window size */
- if (!rom)
- return 0;
+ if (!rom || !size)
+ return -EIO;
if (off >= size)
count = 0;