Re: [PATCH] proc-ns: Use d_set_d_op() API to set dentry ops in proc_ns_instantiate().

From: Eric W. Biederman
Date: Wed Mar 14 2012 - 14:40:27 EST


Jesse Gross <jesse@xxxxxxxxxx> writes:

> From: Pravin B Shelar <pshelar@xxxxxxxxxx>
>
> Use d_set_d_op() so that DCACHE_OP_* flags are set correctly which fixes ns
> cleanup path i.e. `ip netns delete `.
>
> This issue exists back to 3.0.

Acked-by: "Eric W. Biederman" <ebiederm@xxxxxxxxxxxx>

Jesse thanks for picking this up and giving this a push. This is most
definitely the right fix and it most definitely solves issues. Somehow
this fix got lost when I sent it to Linus the first time.

> CC: Eric W. Biederman <ebiederm@xxxxxxxxxxxx>
> Reported-by: Justin Pettit <jpettit@xxxxxxxxxx>
> Signed-off-by: Pravin B Shelar <pshelar@xxxxxxxxxx>
> Signed-off-by: Jesse Gross <jesse@xxxxxxxxxx>
> ---
> fs/proc/namespaces.c | 2 +-
> 1 files changed, 1 insertions(+), 1 deletions(-)
>
> diff --git a/fs/proc/namespaces.c b/fs/proc/namespaces.c
> index 27da860..3551f1f 100644
> --- a/fs/proc/namespaces.c
> +++ b/fs/proc/namespaces.c
> @@ -53,7 +53,7 @@ static struct dentry *proc_ns_instantiate(struct inode *dir,
> ei->ns_ops = ns_ops;
> ei->ns = ns;
>
> - dentry->d_op = &pid_dentry_operations;
> + d_set_d_op(dentry, &pid_dentry_operations);
> d_add(dentry, inode);
> /* Close the race of the process dying before we return the dentry */
> if (pid_revalidate(dentry, NULL))
--
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/