Re: [rfc] balance-on-fork NUMA placement

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

 



On Tue, Jul 31, 2007 at 10:01:14AM +0200, Ingo Molnar wrote:
> 
> * Nick Piggin <[email protected]> wrote:
> 
> > This patch uses memory policies to attempt to improve this. It 
> > requires that we ask the scheduler to suggest the child's new CPU 
> > earlier in the fork, but that is not a fundamental difference.
> 
> no fundamental objections, but i think we could simply move sched_fork() 
> to the following place:
> 
> > @@ -989,10 +990,13 @@ static struct task_struct *copy_process(
> >  	if (retval)
> >  		goto fork_out;
> >  
> > +	cpu = sched_fork_suggest_cpu(clone_flags);
> > +	mpol_arg = mpol_prefer_cpu_start(cpu);
> > +
> >  	retval = -ENOMEM;
> >  	p = dup_task_struct(current);
> >  	if (!p)
> > -		goto fork_out;
> > +		goto fork_mpol;
> >  
> >  	rt_mutex_init_task(p);
> 
> 
> _after_ the dup_task_struct(). Then change sched_fork() to return a CPU 
> number - hence we dont have a separate sched_fork_suggest_cpu() 
> initialization function, only one, obvious sched_fork() function. 
> Agreed?

That puts task struct, kernel stack, thread info on the wrong node.

-
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