summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMeelis Roos <mroos@linux.ee>2009-02-10 17:19:19 -0800
committerGreg Kroah-Hartman <gregkh@suse.de>2009-03-16 17:32:26 -0700
commit08f40e6c3eaada943bdbf70914068a5ebf193e6b (patch)
treeec93a93c247d7c4e371a7fa53fbaa74b7774abbc
parentcfd769d22833e9ac5a63017a89655b8724b36ff9 (diff)
downloadlinux-stable-08f40e6c3eaada943bdbf70914068a5ebf193e6b.tar.gz
fore200: fix oops on failed firmware load
commit fcffd0d8bbddac757cd856e635ac75e8eb4518bc upstream. Fore 200 ATM driver fails to handle request_firmware failures and oopses when no firmware file was found. Fix it by checking for the right return values and propaganting the return value up. Signed-off-by: Meelis Roos <mroos@linux.ee> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-rw-r--r--drivers/atm/fore200e.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/atm/fore200e.c b/drivers/atm/fore200e.c
index 937c9c0ef4c9..10f000dbe448 100644
--- a/drivers/atm/fore200e.c
+++ b/drivers/atm/fore200e.c
@@ -2519,8 +2519,8 @@ fore200e_load_and_start_fw(struct fore200e* fore200e)
return err;
sprintf(buf, "%s%s", fore200e->bus->proc_name, FW_EXT);
- if (request_firmware(&firmware, buf, device) == 1) {
- printk(FORE200E "missing %s firmware image\n", fore200e->bus->model_name);
+ if ((err = request_firmware(&firmware, buf, device)) < 0) {
+ printk(FORE200E "problem loading firmware image %s\n", fore200e->bus->model_name);
return err;
}