diff options
Diffstat (limited to 'linux/drivers')
-rw-r--r-- | linux/drivers/media/dvb/dvb-core/dvb_frontend.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/linux/drivers/media/dvb/dvb-core/dvb_frontend.c b/linux/drivers/media/dvb/dvb-core/dvb_frontend.c index 493ae0203..179d1af24 100644 --- a/linux/drivers/media/dvb/dvb-core/dvb_frontend.c +++ b/linux/drivers/media/dvb/dvb-core/dvb_frontend.c @@ -418,7 +418,7 @@ int dvb_frontend_is_exiting (struct dvb_frontend_data *fe) if (fe->exit) return 1; - if (fe->dvbdev->users == 1 && dvb_shutdown_timeout) + if (fe->dvbdev->users == 1) if (jiffies - fe->release_jiffies > dvb_shutdown_timeout * HZ) return 1; @@ -494,7 +494,9 @@ int dvb_frontend_thread (void *data) dvb_frontend_add_event (fe, s); }; - dvb_frontend_internal_ioctl (&fe->frontend, FE_SLEEP, NULL); + if (dvb_shutdown_timeout) + dvb_frontend_internal_ioctl (&fe->frontend, FE_SLEEP, NULL); + up (&fe->sem); fe->thread = NULL; return 0; |