[Devel] process_group()
Sukadev Bhattiprolu
sukadev at us.ibm.com
Sat Jan 20 12:19:59 PST 2007
We currently have:
static inline pid_t process_group(struct task_struct *tsk)
{
return tsk->signal->pgrp;
}
and
static inline struct pid *task_pgrp(struct task_struct *task)
{
return task->group_leader->pids[PIDTYPE_PGID].pid;
}
and we are replacing process_group() with task_pgrp() and eventually
plan to remove process_group().
But there are several places in the kernel where we interact with
user space using a pid_t (obvious being sys_setpgid(), sys_getpgid()
do_task_stat(), do_wait() etc).
In all these places, process_group(p) would simply be replaced by
pid_nr(task_pgrp(p)). Rather than do that same replacement in many
places, can we keep the interface and change the implmenation to:
static inline pid_t process_group(struct task_struct *tsk)
{
return pid_nr(task_pgrp(tsk));
}
i.e our ultimate goal is not really to remove process_group() but
actually to remove the caching of pid_t in signal->pgrp right ?
The above disussion is also valid for process_session()/task_session().
_______________________________________________
Containers mailing list
Containers at lists.osdl.org
https://lists.osdl.org/mailman/listinfo/containers
More information about the Devel
mailing list