nfsd: fix vm overcommit crash
authorAlan Cox <alan@redhat.com>
Wed, 29 Oct 2008 21:01:20 +0000 (14:01 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Thu, 30 Oct 2008 18:38:47 +0000 (11:38 -0700)
commit731572d39fcd3498702eda4600db4c43d51e0b26
treef892907ae20539845f353d72d2a2bf202b67e007
parent6c89161b10f5771ee0b51ada0fce0e8835e72ade
nfsd: fix vm overcommit crash

Junjiro R.  Okajima reported a problem where knfsd crashes if you are
using it to export shmemfs objects and run strict overcommit.  In this
situation the current->mm based modifier to the overcommit goes through a
NULL pointer.

We could simply check for NULL and skip the modifier but we've caught
other real bugs in the past from mm being NULL here - cases where we did
need a valid mm set up (eg the exec bug about a year ago).

To preserve the checks and get the logic we want shuffle the checking
around and add a new helper to the vm_ security wrappers

Also fix a current->mm reference in nommu that should use the passed mm

[akpm@linux-foundation.org: coding-style fixes]
[akpm@linux-foundation.org: fix build]
Reported-by: Junjiro R. Okajima <hooanon05@yahoo.co.jp>
Acked-by: James Morris <jmorris@namei.org>
Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
include/linux/security.h
mm/mmap.c
mm/nommu.c
mm/shmem.c
security/security.c