Fixup error path, without that one the driver kills the machine by oopsing in the IRQ handler in case the frontend initialization fails. Signed-off-by: Gerd Knorr <kraxel@xxxxxxxxxxx> --- drivers/media/video/cx88/cx88-dvb.c | 10 +++++----- 1 files changed, 5 insertions(+), 5 deletions(-) Index: linux-2.6.12-rc3/drivers/media/video/cx88/cx88-dvb.c =================================================================== --- linux-2.6.12-rc3.orig/drivers/media/video/cx88/cx88-dvb.c 2005-04-27 14:40:38.000000000 +0200 +++ linux-2.6.12-rc3/drivers/media/video/cx88/cx88-dvb.c 2005-04-27 15:19:38.000000000 +0200 @@ -243,10 +243,8 @@ static int dvb_register(struct cx8802_de break; #endif default: - printk("%s: The frontend of your DVB/ATSC card isn't supported yet\n" - "%s: you might want to look out for patches here:\n" - "%s: http://dl.bytesex.org/patches/\n", - dev->core->name, dev->core->name, dev->core->name); + printk("%s: The frontend of your DVB/ATSC card isn't supported yet\n", + dev->core->name); break; } if (NULL == dev->dvb.frontend) { @@ -308,9 +306,11 @@ static int __devinit dvb_probe(struct pc dev); err = dvb_register(dev); if (0 != err) - goto fail_free; + goto fail_fini; return 0; + fail_fini: + cx8802_fini_common(dev); fail_free: kfree(dev); fail_core: -- #define printk(args...) fprintf(stderr, ## args)