From: Eric W. Biederman Use task_pgrp_vnr not task_pgrp_nr so we return the process id the processes pid namespace and not in the initial pid namespace. Signed-off-by: Eric W. Biederman Cc: Pavel Emelyanov Cc: Oleg Nesterov Cc: "David S. Miller" Signed-off-by: Andrew Morton --- arch/sparc64/solaris/misc.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff -puN arch/sparc64/solaris/misc.c~pid-fix-solaris_procids arch/sparc64/solaris/misc.c --- a/arch/sparc64/solaris/misc.c~pid-fix-solaris_procids +++ a/arch/sparc64/solaris/misc.c @@ -415,7 +415,7 @@ asmlinkage int solaris_procids(int cmd, switch (cmd) { case 0: /* getpgrp */ - return task_pgrp_nr(current); + return task_pgrp_vnr(current); case 1: /* setpgrp */ { int (*sys_setpgid)(pid_t,pid_t) = @@ -426,7 +426,7 @@ asmlinkage int solaris_procids(int cmd, ret = sys_setpgid(0, 0); if (ret) return ret; proc_clear_tty(current); - return task_pgrp_nr(current); + return task_pgrp_vnr(current); } case 2: /* getsid */ { _