Messages in this thread | | | Subject | Re: + proc-connector-add-event-for-process-becoming-session-leader.patch added to -mm tree | From | Scott James Remnant <> | Date | Wed, 24 Jun 2009 09:53:51 +0100 |
| |
On Tue, 2009-06-23 at 22:29 +0200, Oleg Nesterov wrote:
> > The act of a process becoming a session leader is a useful signal to a > > supervising init daemon such as Upstart. > ... > > @@ -360,8 +360,10 @@ void __set_special_pids(struct pid *pid) > > { > > struct task_struct *curr = current->group_leader; > > > > - if (task_session(curr) != pid) > > + if (task_session(curr) != pid) { > > change_pid(curr, PIDTYPE_SID, pid); > > + proc_sid_connector(curr); > > + } > > Wouldn't it better to change sys_setsid() then? This looks more clear > imho, and we can move proc_sid_connector() outside of tasklist_lock. > > Note also that __set_special_pids() does not neccessary mean we are > becoming a session leader, see daemonize(). > Actually, I specifically wanted to receive this event if the process called daemonize() which is why this is done here rather than in sys_setsid()
The new session is important information to init in figuring out what the process is up to (ie, fork(), setsid(), fork() = daemonise)
Scott -- Scott James Remnant scott@ubuntu.com [unhandled content-type:application/pgp-signature] | |