summaryrefslogtreecommitdiffstats
path: root/drivers/atm
diff options
context:
space:
mode:
authorMeelis Roos <mroos@linux.ee>2009-02-11 02:19:19 +0100
committerDavid S. Miller <davem@davemloft.net>2009-02-11 02:19:19 +0100
commitfcffd0d8bbddac757cd856e635ac75e8eb4518bc (patch)
tree0cd406e00238ed32dad2dc9d4edfaab8775e13f4 /drivers/atm
parentpkt_sched: type should be __u32 in header (diff)
downloadlinux-fcffd0d8bbddac757cd856e635ac75e8eb4518bc.tar.xz
linux-fcffd0d8bbddac757cd856e635ac75e8eb4518bc.zip
fore200: fix oops on failed firmware load
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>
Diffstat (limited to 'drivers/atm')
-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;
}