RE: Player Thread is not woken after period elapsed

Nallasellan, Singaravelan
2011-09-06T14:20:13Z

> please do not top post!
>
Ok.
> correcting that mistake for you for this time
>
Thanks so much.
>
> >> > User thread which invokes the writei function which in turn invokes
> >> > a kernel function which waits for the free buffer to write the
> >> > audio data. This kernel function adds this thread to a
> >> > wake(sleep) queue and calls a schedule_timeout
> >> > (msecs_to_jiffies(10000)).
> >
> >> actually it doesn't... you must be on some really really old kernel
> >> or something.
> >>
>
> > Sorry, I have not provided the kernel version. Kernel version is
> > 2.6.35.
>
> Please always test bugs like this with a recent kernel. 2.6.35 is pretty much 6
> versions (and 18 months) behind and at that point you really have to test with
> something newer first before asking others to help you and spend their time on
> your problem.
>
Unfortunately, I am stuck with that version as the product that I work on is on that version.
>
> >> > Will you provide some hint on how to go about identifying the root
> >> > cause?
>
> >> https://lkml.org/lkml/2011/9/5/201
>
I manually ported the changes and verified. I still see the issue. Found more information which might throw more light into the problem.
p->state in try_to_wake_up() is 0 when it is expected to be 2 or 3.

> > However, wait_for_avail() does not have the code similar to the one
> > provided in the patch below.
>
> the patch is against a recent kernel; no surprise that the code has changed in the
> last 18 months....
>
>
> --
> Arjan van de Ven Intel Open Source Technology Centre
> For development, discussion and tips for power savings, visit
> http://www.lesswatts.org