Mailing List archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[linux-dvb] Re: wait_event_interruptible_timeout not working correctly



>  > is NOT FESTATE_RETUNE.
>  >
>  > The problem is the wake_up_interruptible is not working. The frontend
>  > thread *always* sleeps for the 3*HZ. You can really see this by upping
>  > the frontend thread initial delay to 20*HZ. There will be a 20 second
>  > delay before the FE_SET_FRONTEND ioctl returns.
>  >
>  > I've tried adding a wake_up_interruptible(&fe->wait_queue) just before
>  > the dvb_delay() above, but that doesn't have any effect.
>  >
>  > Am I mistaken in thinking the wake_up_interruptible() call is supposed
>  > to wake up the tasks on the wait queue before their timeout occurs??
>
> Yes, it will only wake if the condition is fulfilled.
>
> Originally interruptible_sleep_on_timeout() was used here and I am
> still using it. The other thing cannot work correctly this way.
> If you want to use it you will have to use some extra flag which
> indicates that tuning is needed and check for dvb_frontend_exiting
> and (or rather OR) this flag as a wakeup condition.

Ah, thank you very much for that explanation; I was sure there was an 
unnecessary delay during tuning before I started doing these frontend 
changes. Thanks!


-- 
Info:
To unsubscribe send a mail to ecartis@linuxtv.org with "unsubscribe linux-dvb" as subject.



Home | Main Index | Thread Index