Oleg Nesterov wrote:
On 04/10, Konstantin Khlebnikov wrote:
This patch moves sync_mm_rss() into mm_release(), and moves mm_release() out of
do_exit() and calls it earlier. After mm_release() there should be no page-faults.
Can't prove, but I feel there should be a simpler fix...
Anyway, this patch is not exactly correct.
@@ -959,9 +959,10 @@ void do_exit(long code)
preempt_count());
acct_update_integrals(tsk);
- /* sync mm's RSS info before statistics gathering */
- if (tsk->mm)
- sync_mm_rss(tsk->mm);
+
+ /* Release mm and sync mm's RSS info before statistics gathering */
+ mm_release(tsk, tsk->mm);
This breaks kthread_stop() at least.
The exiting kthread shouldn't do complete_vfork_done() until it
sets ->exit_code.
Ouch, I was afraid something like that.
Oleg.
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@xxxxxxxxx. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/
Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>