On 16/06/11 17:01 +0200, Greg Kurz wrote: > On Thu, 2011-06-16 at 15:25 +0200, Louis Rilling wrote: > > > Ok. You're right, the RCU grace period is just what I need to ensure > > I > > > won't dereference a stale pointer. So I don't even have to bother > > with > > > ->siglock and just check pid_alive() before peeking into > > pid->numbers. > > > > It ends like open-coding an optimized version of task_pid_vnr(). If > > the > > optimization is really important (I guess this depends on the depth of > > recursive > > pid namespaces), it would be better to re-write task_pid_vnr(). > > Otherwise, just > > use task_pid_vnr() as it is. > > > > Thanks, > > > > Louis > > > Hmm, sorry Louis but I'm looking for the pid number from the task active > pid_ns (AKA. the return value of getpid() if called by this task), so > task_pid_vnr() doesn't fit. Yup, I should have somewhat recalled that _vnr() means "in the caller's pid namespace". Sorry for the wrong argument. > > About the open-coding argument, that's why I used task_pid_nr_ns() and > task_active_pid_ns() at first... Sure. I still think that if you end accessing pid->numbers[pid->level].nr, then you're close to coding some (optimized) task_active_pid_nr() that could also be used by getpid(), using some task_active_tgid_nr() instead of task_tgid_vnr(). Anyway, optimization is not a relevant point here AFAICS. Thanks, Louis -- Dr Louis Rilling Kerlabs Skype: louis.rilling Batiment Germanium Phone: (+33|0) 6 80 89 08 23 80 avenue des Buttes de Coesmes http://www.kerlabs.com/ 35700 Rennes
Attachment:
signature.asc
Description: Digital signature
_______________________________________________ Containers mailing list Containers@xxxxxxxxxxxxxxxxxxxxxxxxxx https://lists.linux-foundation.org/mailman/listinfo/containers