Konstantin Khlebnikov 4fe7efdbdf mm: correctly synchronize rss-counters at exit/exec
do_exit() and exec_mmap() call sync_mm_rss() before mm_release() does
put_user(clear_child_tid) which can update task->rss_stat and thus make
mm->rss_stat inconsistent.  This triggers the "BUG:" printk in check_mm().

Let's fix this bug in the safest way, and optimize/cleanup this later.

Reported-by: Markus Trippelsdorf <markus@trippelsdorf.de>
Signed-off-by: Konstantin Khlebnikov <khlebnikov@openvz.org>
Cc: Oleg Nesterov <oleg@redhat.com>
Cc: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
Cc: Hugh Dickins <hughd@google.com>
Cc: <stable@vger.kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2012-06-20 14:39:36 -07:00
..
2012-04-04 17:26:08 -07:00
2012-05-21 23:52:30 -04:00
2012-05-31 17:49:27 -07:00
2012-03-28 18:30:03 +01:00
2012-05-31 17:49:32 -07:00
2012-05-31 17:49:28 -07:00
2012-05-29 23:28:41 -04:00
2012-03-29 19:52:46 +08:00
2012-03-28 18:30:03 +01:00
2012-06-01 12:58:52 -04:00
2012-05-08 12:35:06 +02:00
2012-05-31 17:49:32 -07:00
2012-03-15 18:17:55 -07:00
2012-05-19 15:44:40 -06:00