[PATCH 2/2] Explicitly set pgid/sid of init

From: Sukadev Bhattiprolu
Date: Sat Jan 20 2007 - 14:45:34 EST



Pls treat this patch as Patch 2/2 where Patch 1/2 is

http://lkml.org/lkml/2007/1/19/159
---

From: Sukadev Bhattiprolu <sukadev@xxxxxxxxxx>

Explicitly set pgid and sid of init process to 1.

Signed-off-by: Sukadev Bhattiprolu <sukadev@xxxxxxxxxx>
Cc: Cedric Le Goater <clg@xxxxxxxxxx>
Cc: Dave Hansen <haveblue@xxxxxxxxxx>
Cc: Serge Hallyn <serue@xxxxxxxxxx>
Cc: Eric Biederman <ebiederm@xxxxxxxxxxxx>
Cc: containers@xxxxxxxxxxxxxx
---
init/main.c | 1 +
kernel/exit.c | 4 ++--
2 files changed, 3 insertions(+), 2 deletions(-)

Index: lx26-20-rc4-mm1/init/main.c
===================================================================
--- lx26-20-rc4-mm1.orig/init/main.c 2007-01-20 11:12:00.803672744 -0800
+++ lx26-20-rc4-mm1/init/main.c 2007-01-20 11:12:20.786634872 -0800
@@ -774,6 +774,7 @@ static int __init init(void * unused)
*/
init_pid_ns.child_reaper = current;

+ __set_special_pids(1, 1);
cad_pid = task_pid(current);

smp_prepare_cpus(max_cpus);
Index: lx26-20-rc4-mm1/kernel/exit.c
===================================================================
--- lx26-20-rc4-mm1.orig/kernel/exit.c 2007-01-20 11:12:00.803672744 -0800
+++ lx26-20-rc4-mm1/kernel/exit.c 2007-01-20 11:12:20.787634720 -0800
@@ -297,12 +297,12 @@ void __set_special_pids(pid_t session, p
{
struct task_struct *curr = current->group_leader;

- if (process_session(curr) != session) {
+ if (pid_nr(task_session(curr)) != session) {
detach_pid(curr, PIDTYPE_SID);
set_signal_session(curr->signal, session);
attach_pid(curr, PIDTYPE_SID, find_pid(session));
}
- if (process_group(curr) != pgrp) {
+ if (pid_nr(task_pgrp(curr)) != pgrp) {
detach_pid(curr, PIDTYPE_PGID);
curr->signal->pgrp = pgrp;
attach_pid(curr, PIDTYPE_PGID, find_pid(pgrp));
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/