[PATCH 09/32] cgroup: use ns_common_init()

Christian Brauner posted 32 patches 9 hours ago
[PATCH 09/32] cgroup: use ns_common_init()
Posted by Christian Brauner 9 hours ago
Don't cargo-cult the same thing over and over.

Signed-off-by: Christian Brauner <brauner@kernel.org>
---
 kernel/cgroup/namespace.c | 12 ++++--------
 1 file changed, 4 insertions(+), 8 deletions(-)

diff --git a/kernel/cgroup/namespace.c b/kernel/cgroup/namespace.c
index 144a464e45c6..0391b6ab0bf1 100644
--- a/kernel/cgroup/namespace.c
+++ b/kernel/cgroup/namespace.c
@@ -21,20 +21,16 @@ static void dec_cgroup_namespaces(struct ucounts *ucounts)
 
 static struct cgroup_namespace *alloc_cgroup_ns(void)
 {
-	struct cgroup_namespace *new_ns;
+	struct cgroup_namespace *new_ns __free(kfree) = NULL;
 	int ret;
 
 	new_ns = kzalloc(sizeof(struct cgroup_namespace), GFP_KERNEL_ACCOUNT);
 	if (!new_ns)
 		return ERR_PTR(-ENOMEM);
-	ret = ns_alloc_inum(&new_ns->ns);
-	if (ret) {
-		kfree(new_ns);
+	ret = ns_common_init(&new_ns->ns, &cgroupns_operations, true);
+	if (ret)
 		return ERR_PTR(ret);
-	}
-	refcount_set(&new_ns->ns.count, 1);
-	new_ns->ns.ops = &cgroupns_operations;
-	return new_ns;
+	return no_free_ptr(new_ns);
 }
 
 void free_cgroup_ns(struct cgroup_namespace *ns)

-- 
2.47.3
Re: [PATCH 09/32] cgroup: use ns_common_init()
Posted by Jan Kara 7 hours ago
On Wed 10-09-25 16:36:54, Christian Brauner wrote:
> Don't cargo-cult the same thing over and over.
> 
> Signed-off-by: Christian Brauner <brauner@kernel.org>

Looks good. Feel free to add:

Reviewed-by: Jan Kara <jack@suse.cz>

								Honza

> ---
>  kernel/cgroup/namespace.c | 12 ++++--------
>  1 file changed, 4 insertions(+), 8 deletions(-)
> 
> diff --git a/kernel/cgroup/namespace.c b/kernel/cgroup/namespace.c
> index 144a464e45c6..0391b6ab0bf1 100644
> --- a/kernel/cgroup/namespace.c
> +++ b/kernel/cgroup/namespace.c
> @@ -21,20 +21,16 @@ static void dec_cgroup_namespaces(struct ucounts *ucounts)
>  
>  static struct cgroup_namespace *alloc_cgroup_ns(void)
>  {
> -	struct cgroup_namespace *new_ns;
> +	struct cgroup_namespace *new_ns __free(kfree) = NULL;
>  	int ret;
>  
>  	new_ns = kzalloc(sizeof(struct cgroup_namespace), GFP_KERNEL_ACCOUNT);
>  	if (!new_ns)
>  		return ERR_PTR(-ENOMEM);
> -	ret = ns_alloc_inum(&new_ns->ns);
> -	if (ret) {
> -		kfree(new_ns);
> +	ret = ns_common_init(&new_ns->ns, &cgroupns_operations, true);
> +	if (ret)
>  		return ERR_PTR(ret);
> -	}
> -	refcount_set(&new_ns->ns.count, 1);
> -	new_ns->ns.ops = &cgroupns_operations;
> -	return new_ns;
> +	return no_free_ptr(new_ns);
>  }
>  
>  void free_cgroup_ns(struct cgroup_namespace *ns)
> 
> -- 
> 2.47.3
> 
-- 
Jan Kara <jack@suse.com>
SUSE Labs, CR