Re: Kaffeine problem with CFS

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

 



2007/4/18, Christoph Pfister <[email protected]>:
[ Sorry for accidentally dropping CCs ]

2007/4/18, Christoph Pfister <[email protected]>:
> 2007/4/18, Ingo Molnar <[email protected]>:
> >
> > * Christoph Pfister <[email protected]> wrote:
> >
> > > Or I could try playing around a bit with your patchset and trying to
> > > reproduce it over here. Because I already have debug builds for
> > > xine-lib and compiling a new kernel can take place in the background
> > > it wouldn't be much effort for me.
> >
> > that would be great :) Here are the URLs for it. CFS is based on
> > v2.6.21-rc7:
> >
> >   http://kernel.org/pub/linux/kernel/v2.6/testing/linux-2.6.21-rc7.tar.bz2
> >
> > And the CFS patch is at:
> >
> >   http://people.redhat.com/mingo/cfs-scheduler/sched-cfs-v2.patch
> >
> > rebuild your kernel as usual and boot into it. No extra configuration is
> > needed, you'll get CFS by default.
> >
> > if this kernel builds/boots fine for you then you might also want to
> > send me a quick note about how it feels, interactivity-wise. And of
> > course i'm interested in any sort of feedback about problems as well.
> > I'd like to make CFS as media-playback friendly as possible, so if
> > there's any problem in that area it would be nice for me to know about
> > it as soon as possible.
> >
> >         Ingo
>
> Okay - so here are some results (it's strange that gdb goes nuts
> inside the xine_play call). I have three bts (seems to be fairly easy
> to reproduce that behaviour over here): Twice while playing an audio
> cd and once while playing a normal file. The hang usually ends if you
> wait long enough (something around 30 secs over here).

<big snip>

> Christoph
>
>
> PS: Haven't analyzed them yet - but doing so now :-)

Ok - one nice thing: In all those bts demux_loop is at demux.c:285 -
meaing that demux_lock is held and xine_play is waiting for it ...
The lock should be temporilary unreleased with a sched_yield so that
the main thread can access it. As you wrote the implementation of this
function seems to have changed a bit - so I'll replace it with a short
sleep and try again ...

Christoph

Replacing the sched_yield in demux.c with an usleep(10) stopped those
seeking hangs here (at least I was able to pull the slider back and
forth during 2 mins without trouble compared to the few secs I need
earlier to get a hang).

Christoph
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux