patch-2.0.22 linux/kernel/fork.c

Next file: linux/net/bridge/br.c
Previous file: linux/init/main.c
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v2.0.21/linux/kernel/fork.c linux/kernel/fork.c
@@ -100,12 +100,12 @@
 			mpnt->vm_next_share = tmp;
 			tmp->vm_prev_share = mpnt;
 		}
-		if (tmp->vm_ops && tmp->vm_ops->open)
-			tmp->vm_ops->open(tmp);
 		if (copy_page_range(mm, current->mm, tmp)) {
 			exit_mmap(mm);
 			return -ENOMEM;
 		}
+		if (tmp->vm_ops && tmp->vm_ops->open)
+			tmp->vm_ops->open(tmp);
 		*p = tmp;
 		p = &tmp->vm_next;
 	}

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen, slshen@lbl.gov