dvb_unregister_frontend has to be called before detach. Otherwise the
unregister call will segfault. This made tm6000-dvb module unload unusable.

Signed-off-by: Julian Scheel <jul...@jusst.de>
---
 drivers/media/usb/tm6000/tm6000-dvb.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/media/usb/tm6000/tm6000-dvb.c 
b/drivers/media/usb/tm6000/tm6000-dvb.c
index e1f3f66..9fc1e94 100644
--- a/drivers/media/usb/tm6000/tm6000-dvb.c
+++ b/drivers/media/usb/tm6000/tm6000-dvb.c
@@ -360,8 +360,8 @@ dvb_dmx_err:
        dvb_dmx_release(&dvb->demux);
 frontend_err:
        if (dvb->frontend) {
-               dvb_frontend_detach(dvb->frontend);
                dvb_unregister_frontend(dvb->frontend);
+               dvb_frontend_detach(dvb->frontend);
        }
 adapter_err:
        dvb_unregister_adapter(&dvb->adapter);
@@ -384,8 +384,8 @@ static void unregister_dvb(struct tm6000_core *dev)
 
 /*     mutex_lock(&tm6000_driver.open_close_mutex); */
        if (dvb->frontend) {
-               dvb_frontend_detach(dvb->frontend);
                dvb_unregister_frontend(dvb->frontend);
+               dvb_frontend_detach(dvb->frontend);
        }
 
        dvb_dmxdev_release(&dvb->dmxdev);
-- 
1.8.0

--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to