Hi Andrew,
Today's linux-next merge of the akpm tree got a conflict in kernel/fork.c
between commit touching paths: ("fork: call complete_vfork_done() after
clearing child_tid and flushing rss-counters") from Linus' tree and
commit "mm: correctly synchronize rss-counters at exit/exec" from the
akpm tree.
Just context changes. I fixed it up (see below) and can carry the fix as
necessary.
--
Cheers,
Stephen Rothwell sfr@canb.auug.org.au
diff --cc kernel/fork.c
index 095a951,30e9ee8..0000000--- a/kernel/fork.c
+++ b/kernel/fork.c
@@@ -808,11 -811,12 +808,19 @@@ void mm_release(struct task_struct *tsk
}
/*
+ * Final rss-counter synchronization. After this point there must be
+ * no pagefaults into this mm from the current context. Otherwise
+ * mm->rss_stat will be inconsistent.
+ */
+ if (mm)
+ sync_mm_rss(mm);
++
++ /*
+ * All done, finally we can wake up parent and return this mm to him.
+ * Also kthread_stop() uses this completion for synchronization.
+ */
+ if (tsk->vfork_done)
+ complete_vfork_done(tsk);
}
/*