[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20220603143555.41914-1-sxwjean@me.com>
Date: Fri, 3 Jun 2022 22:35:55 +0800
From: sxwjean@...com
To: cl@...ux.com, penberg@...nel.org, rientjes@...gle.com,
iamjoonsoo.kim@....com, akpm@...ux-foundation.org, vbabka@...e.cz,
roman.gushchin@...ux.dev, 42.hyeyoo@...il.com,
songmuchun@...edance.com
Cc: linux-mm@...ck.org, linux-kernel@...r.kernel.org,
Xiongwei Song <xiongwei.song@...driver.com>
Subject: [PATCH v2] mm/slub: Simplify __kmem_cache_alias()
From: Xiongwei Song <xiongwei.song@...driver.com>
There is no need to do anything if sysfs_slab_alias() return nonzero
value after getting a mergeable cache.
Signed-off-by: Xiongwei Song <xiongwei.song@...driver.com>
Reviewed-by: Muchun Song <songmuchun@...edance.com>
---
v2: Collect Reviewed-by tag from Muchun.
---
mm/slub.c | 8 +++-----
1 file changed, 3 insertions(+), 5 deletions(-)
diff --git a/mm/slub.c b/mm/slub.c
index d8d5abf49f5f..9444277d669a 100644
--- a/mm/slub.c
+++ b/mm/slub.c
@@ -4861,6 +4861,9 @@ __kmem_cache_alias(const char *name, unsigned int size, unsigned int align,
s = find_mergeable(size, align, flags, name, ctor);
if (s) {
+ if (sysfs_slab_alias(s, name))
+ return NULL;
+
s->refcount++;
/*
@@ -4869,11 +4872,6 @@ __kmem_cache_alias(const char *name, unsigned int size, unsigned int align,
*/
s->object_size = max(s->object_size, size);
s->inuse = max(s->inuse, ALIGN(size, sizeof(void *)));
-
- if (sysfs_slab_alias(s, name)) {
- s->refcount--;
- s = NULL;
- }
}
return s;
--
2.30.2
Powered by blists - more mailing lists