From: Steven Toth Date: Fri, 25 Jan 2008 01:29:46 +0000 (-0300) Subject: V4L/DVB (7063): xc5000: Fix OOPS caused by missing firmware X-Git-Tag: v2.6.25-rc1~1235^2~13 X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=5ea60531c1c6164788ea7d6efecdf575adc543ff;p=linux-2.6 V4L/DVB (7063): xc5000: Fix OOPS caused by missing firmware xc5000: Fix OOPS caused by missing firmware. Signed-off-by: Chaogui Zhang Acked-by: Steven Toth Signed-off-by: Mauro Carvalho Chehab --- diff --git a/drivers/media/dvb/frontends/xc5000.c b/drivers/media/dvb/frontends/xc5000.c index a13027e09c..f642ca200b 100644 --- a/drivers/media/dvb/frontends/xc5000.c +++ b/drivers/media/dvb/frontends/xc5000.c @@ -558,6 +558,7 @@ static int xc5000_fwupload(struct dvb_frontend* fe) if (ret) { printk(KERN_ERR "xc5000: Upload failed. (file not found?)\n"); ret = XC_RESULT_RESET_FAILURE; + goto out; } else { printk(KERN_INFO "xc5000: firmware read %Zu bytes.\n", fw->size); @@ -572,6 +573,7 @@ static int xc5000_fwupload(struct dvb_frontend* fe) ret = xc_load_i2c_sequence(fe, fw->data ); } +out: release_firmware(fw); return ret; }