From: Prasanna Meda Set errorp in dup_fd, it will be used in sys_unshare also. Signed-off-by: Prasanna Meda Signed-off-by: Andrew Morton --- kernel/fork.c | 3 ++- 1 files changed, 2 insertions(+), 1 deletion(-) diff -puN kernel/fork.c~dup-fd-error kernel/fork.c --- devel/kernel/fork.c~dup-fd-error 2006-04-17 21:54:10.000000000 -0700 +++ devel-akpm/kernel/fork.c 2006-04-17 21:54:10.000000000 -0700 @@ -622,6 +622,7 @@ out: /* * Allocate a new files structure and copy contents from the * passed in files structure. + * errorp will be valid only when the returned files_struct is NULL. */ static struct files_struct *dup_fd(struct files_struct *oldf, int *errorp) { @@ -630,6 +631,7 @@ static struct files_struct *dup_fd(struc int open_files, size, i, expand; struct fdtable *old_fdt, *new_fdt; + *errorp = -ENOMEM; newf = alloc_files(); if (!newf) goto out; @@ -743,7 +745,6 @@ static int copy_files(unsigned long clon * break this. */ tsk->files = NULL; - error = -ENOMEM; newf = dup_fd(oldf, &error); if (!newf) goto out; _