aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlan Cox <alan@linux.intel.com>2012-08-09 12:33:52 -0300
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2013-05-24 11:09:24 -0700
commite51c0ea1c933d98e3f0ea5bf0a8a3149475cf0a1 (patch)
treecb1a2e2ec6fc1e98c905154e4c7fd5395acac396
parent38180ec039a7589112633b85b2cfab72a76ec9c0 (diff)
downloadkernel_samsung_smdk4412-e51c0ea1c933d98e3f0ea5bf0a8a3149475cf0a1.zip
kernel_samsung_smdk4412-e51c0ea1c933d98e3f0ea5bf0a8a3149475cf0a1.tar.gz
kernel_samsung_smdk4412-e51c0ea1c933d98e3f0ea5bf0a8a3149475cf0a1.tar.bz2
media: mantis: fix silly crash case
commit e1d45ae10aea8e8a403e5d96bf5902ee670007ff upstream. If we set mantis->fe to NULL on an error its not a good idea to then try passing NULL to the unregister paths and oopsing really. Resolves-bug: https://bugzilla.kernel.org/show_bug.cgi?id=16473 Signed-off-by: Alan Cox <alan@linux.intel.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com> Cc: Bjørn Mork <bjorn@mork.no> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--drivers/media/dvb/mantis/mantis_dvb.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/media/dvb/mantis/mantis_dvb.c b/drivers/media/dvb/mantis/mantis_dvb.c
index e5180e4..5d15c6b 100644
--- a/drivers/media/dvb/mantis/mantis_dvb.c
+++ b/drivers/media/dvb/mantis/mantis_dvb.c
@@ -248,8 +248,10 @@ int __devinit mantis_dvb_init(struct mantis_pci *mantis)
err5:
tasklet_kill(&mantis->tasklet);
dvb_net_release(&mantis->dvbnet);
- dvb_unregister_frontend(mantis->fe);
- dvb_frontend_detach(mantis->fe);
+ if (mantis->fe) {
+ dvb_unregister_frontend(mantis->fe);
+ dvb_frontend_detach(mantis->fe);
+ }
err4:
mantis->demux.dmx.remove_frontend(&mantis->demux.dmx, &mantis->fe_mem);