[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20070416115441.GA26177@elte.hu>
Date: Mon, 16 Apr 2007 13:54:41 +0200
From: Ingo Molnar <mingo@...e.hu>
To: Oleg Nesterov <oleg@...sign.ru>
Cc: Satoru Takeuchi <takeuchi_satoru@...fujitsu.com>,
Con Kolivas <kernel@...ivas.org>,
Andrew Morton <akpm@...ux-foundation.org>,
Linux Kernel <linux-kernel@...r.kernel.org>,
Mike Galbraith <efault@....de>
Subject: Re: [PATCH -mm] scheduler: fix the return of the first time_slice
* Oleg Nesterov <oleg@...sign.ru> wrote:
> > > * The remainder of the first timeslice might be recovered by
> > > * the parent if the child exits early enough.
> > > */
> > > - p->first_time_slice = 1;
> > > + p->time_slice_reaper = current;
> > > p->timestamp = sched_clock();
> > > local_irq_enable();
> >
> > I am afraid this doesn't work for CLONE_THREAD. Suppose that some
> > sub-thread (not main thread) T1 creates another sub-thread, T2.
> In case I was not clear...
> To make this correct, we should iterate over all thread-group, but
> this can slow down exit() when we have a lot of threads.
>
> I guess we need Ingo's opinion on that.
right now my first cautious estimation seems to be that we might be able
to get rid of this whole child/parent timeslice sharing complexity and
do all the scheduling setup without affecting the parent - hence
avoiding all the reaper problems as well. People reported interactivity
improvements with this removed from CFS. (It all still needs a ton of
validation to make sure, but the trend seems to be this.)
(the only valid component of that complexity is 'child runs first' - but
it's not really related to the timesplice splitting thing just
intermixed with it.)
Ingo
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists