summaryrefslogtreecommitdiff
path: root/drivers/base/firmware_class.c
diff options
context:
space:
mode:
authorJames Morris <jmorris@namei.org>2009-08-06 02:55:03 +0400
committerJames Morris <jmorris@namei.org>2009-08-06 02:55:03 +0400
commit012a5299a29672039f42944a37984558393ef769 (patch)
treede0815c67cf4156c32c8b552cd7448387cc391b0 /drivers/base/firmware_class.c
parentda34d4248bd2013ee64ce51e63ec0ebd1f32b46c (diff)
parent90bc1a658a53f8832ee799685703977a450e5af9 (diff)
downloadlinux-012a5299a29672039f42944a37984558393ef769.tar.xz
Merge branch 'master' into next
Diffstat (limited to 'drivers/base/firmware_class.c')
-rw-r--r--drivers/base/firmware_class.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/drivers/base/firmware_class.c b/drivers/base/firmware_class.c
index fc466531260e..7376367bcb80 100644
--- a/drivers/base/firmware_class.c
+++ b/drivers/base/firmware_class.c
@@ -180,7 +180,6 @@ static ssize_t firmware_loading_store(struct device *dev,
goto err;
}
/* Pages will be freed by vfree() */
- fw_priv->pages = NULL;
fw_priv->page_array_size = 0;
fw_priv->nr_pages = 0;
complete(&fw_priv->completion);
@@ -217,8 +216,10 @@ firmware_data_read(struct kobject *kobj, struct bin_attribute *bin_attr,
ret_count = -ENODEV;
goto out;
}
- if (offset > fw->size)
- return 0;
+ if (offset > fw->size) {
+ ret_count = 0;
+ goto out;
+ }
if (count > fw->size - offset)
count = fw->size - offset;