Thread (27 messages) 27 messages, 7 authors, 2007-08-06

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

From: Ingo Molnar <hidden>
Date: 2007-07-31 08:01:28
Also in: lkml

* Nick Piggin [off-list ref] 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:
quoted hunk ↗ jump to hunk
@@ -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?

	Ingo

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help