[PATCH v10 8/9] net: add symlinks to ref_tracker_dir for netns
Eric Dumazet
edumazet at google.com
Tue May 27 13:35:23 UTC 2025
On Tue, May 27, 2025 at 4:34 AM Jeff Layton <jlayton at kernel.org> wrote:
>
> After assigning the inode number to the namespace, use it to create a
> unique name for each netns refcount tracker with the ns.inum and
> net_cookie values in it, and register a symlink to the debugfs file for
> it.
>
> init_net is registered before the ref_tracker dir is created, so add a
> late_initcall() to register its files and symlinks.
>
> Signed-off-by: Jeff Layton <jlayton at kernel.org>
> ---
> net/core/net_namespace.c | 30 +++++++++++++++++++++++++++++-
> 1 file changed, 29 insertions(+), 1 deletion(-)
>
> diff --git a/net/core/net_namespace.c b/net/core/net_namespace.c
> index 8708eb975295ffb78de35fcf4abef7cc281f5a51..39b01af90d240df48827e5c3159c3e2253e0a44d 100644
> --- a/net/core/net_namespace.c
> +++ b/net/core/net_namespace.c
> @@ -791,12 +791,40 @@ struct net *get_net_ns_by_pid(pid_t pid)
> }
> EXPORT_SYMBOL_GPL(get_net_ns_by_pid);
>
> +#ifdef CONFIG_NET_NS_REFCNT_TRACKER
> +static void net_ns_net_debugfs(struct net *net)
> +{
> + ref_tracker_dir_symlink(&net->refcnt_tracker, "netns--%lx-%u-refcnt",
> + net->net_cookie, net->ns.inum);
With proper annotations, you should be able to catch format error as in:
warning: format ‘%lx’ expects argument of type ‘long unsigned int’,
but argument x has type ‘u64’ {aka ‘long long unsigned int’}
[-Wformat=]
More information about the dri-devel
mailing list