OpenVZ Forum


Home » Mailing lists » Devel » process_group()
process_group() [message #17298] Sat, 20 January 2007 20:19 Go to previous message
Sukadev Bhattiprolu is currently offline  Sukadev Bhattiprolu
Messages: 413
Registered: August 2006
Senior Member
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@lists.osdl.org
https://lists.osdl.org/mailman/listinfo/containers
 
Read Message
Read Message
Read Message
Read Message
Previous Topic: Re: Re: [PATCH/RFC] kthread API conversion for dvb_frontend and av7110
Next Topic: [PATCH 1/2] sysfs: Shadow directory support
Goto Forum:
  


Current Time: Sat Aug 10 18:41:47 GMT 2024

Total time taken to generate the page: 0.02719 seconds