ipc, shm: guard against non-existant vma in shmdt(2)
[GitHub/mt8127/android_kernel_alcatel_ttab.git] / ipc / shm.c
index 92d41e0b82e9eef55372500a3e5ea1949790a4fa..aa053a24575966ae37144aa7aa6fc489f1aa8e90 100644 (file)
--- a/ipc/shm.c
+++ b/ipc/shm.c
@@ -1288,8 +1288,7 @@ SYSCALL_DEFINE1(shmdt, char __user *, shmaddr)
 #else /* CONFIG_MMU */
        /* under NOMMU conditions, the exact address to be destroyed must be
         * given */
-       retval = -EINVAL;
-       if (vma->vm_start == addr && vma->vm_ops == &shm_vm_ops) {
+       if (vma && vma->vm_start == addr && vma->vm_ops == &shm_vm_ops) {
                do_munmap(mm, vma->vm_start, vma->vm_end - vma->vm_start);
                retval = 0;
        }