proc: mem_release() should check mm != NULL
authorOleg Nesterov <[email protected]>
Tue, 31 Jan 2012 16:14:38 +0000 (17:14 +0100)
committerLinus Torvalds <[email protected]>
Wed, 1 Feb 2012 22:39:01 +0000 (14:39 -0800)
mem_release() can hit mm == NULL, add the necessary check.

Cc: [email protected]
Signed-off-by: Oleg Nesterov <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
fs/proc/base.c

index 9cde9edf9c4d40a4a3c20e3fb1c3758518092f98..c3617ea7830bad1632cfa9da39bf9b2cce3dba1f 100644 (file)
@@ -822,8 +822,8 @@ loff_t mem_lseek(struct file *file, loff_t offset, int orig)
 static int mem_release(struct inode *inode, struct file *file)
 {
        struct mm_struct *mm = file->private_data;
-
-       mmput(mm);
+       if (mm)
+               mmput(mm);
        return 0;
 }