summaryrefslogtreecommitdiffstats
path: root/init
diff options
context:
space:
mode:
authorVladimir Davydov <vdavydov@parallels.com>2014-08-08 14:22:01 -0700
committerLinus Torvalds <torvalds@linux-foundation.org>2014-08-08 15:57:23 -0700
commit4f7d461433bb4a4deee61baefdac6cd1a1ecb546 (patch)
treefe3609c5e750d4a06876f61ab217503e56b4e182 /init
parentce65cefa5debefc0e81d0a533bda467f0aa67350 (diff)
downloadop-kernel-dev-4f7d461433bb4a4deee61baefdac6cd1a1ecb546.zip
op-kernel-dev-4f7d461433bb4a4deee61baefdac6cd1a1ecb546.tar.gz
fork: copy mm's vm usage counters under mmap_sem
If a forking process has a thread calling (un)mmap (silly but still), the child process may have some of its mm's vm usage counters (total_vm and friends) screwed up, because currently they are copied from oldmm w/o holding any locks (memcpy in dup_mm). This patch moves the counters initialization to dup_mmap() to be called under oldmm->mmap_sem, which eliminates any possibility of race. Signed-off-by: Vladimir Davydov <vdavydov@parallels.com> Cc: Oleg Nesterov <oleg@redhat.com> Cc: David Rientjes <rientjes@google.com> Cc: Christoph Lameter <cl@linux.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'init')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud