Re: [PATCH 4/4] pidns: Use task_active_pid_ns where appropriate

From: Daniel Lezcano
Date: Mon Jan 31 2011 - 09:48:16 EST


On 01/31/2011 12:26 PM, Alexey Dobriyan wrote:
On Mon, Jan 31, 2011 at 12:25 PM, Daniel Lezcano<daniel.lezcano@xxxxxxx> wrote:
The expressions tsk->nsproxy->pid_ns and task_active_pid_ns
aka ns_of_pid(task_pid(tsk)) should have the same number of
cache line misses with the practical difference that
ns_of_pid(task_pid(tsk)) is released later in a processes life.

Furthermore by using task_active_pid_ns it becomes trivial
to write an unshare implementation for the the pid namespace.

So I have used task_active_pid_ns everywhere I can.
Yet current->nsproxy->pid_ns is way clearer.
Because live current always has pid_ns.

This task_active_pid_ns() is misnamed(?) because it does matter only
for dead tasks?

Actually this function is later used, for the unshare, to get the pid_ns of a specific task, not the current one.

http://kerneltrap.org/mailarchive/linux-kernel/2010/6/20/4585095

Do you suggest task_pid_ns(struct task_struct *tsk) would be a better name ?

- current->nsproxy->pid_ns->last_pid);
+ task_active_pid_ns(current)->last_pid);
I thought of doing exactly opposite patch :-)


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/