Messages in this thread | | | Date | Sun, 9 Nov 2008 20:52:45 -0600 | From | "Serge E. Hallyn" <> | Subject | Re: [TOMOYO #12 (2.6.28-rc2-mm1) 06/11] Common functions for TOMOYOLinux. |
| |
Quoting Tetsuo Handa (penguin-kernel@i-love.sakura.ne.jp): > Hello. > > Serge E. Hallyn wrote: > > > There are two PIDs, PID seen from inside virtualized environment and > > > PID seen from outside virtualized environment. To clarify, let me call > > > the former "PIDv" and the latter "PIDg". > > > > > > PIDv is not system-wide unique. But PIDg is system-wide unique, aren't they? > > > The PID received from outside virtualized environment is PIDg and they are > > > system-wide unique, am I right? > > > > You are doing find_task_by_vpid(), so you are not looking up a task by > > global pid. > > > I need to clarify reachability of "struct task_struct". > > A process inside a virtualized environment cannot reach "struct task_struct" > which belongs to outside the virtualized environment. > > A process outside virtualized environments can reach "struct task_struct" > which belongs to inside virtualized environments, can't it?
To be precise, there isn't a real 'inside' and 'outside' virtualized environements. Rather pid namespaces are hierarchical.
(Taking another look) it looks like In is_select_one() you're doing the right thing - you look up the domain of a task based on find_task_by_vpid() on a passed-in pid. Seems correct.
thanks, -serge
| |