[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20230104060605.930910-1-feng.tang@intel.com>
Date: Wed, 4 Jan 2023 14:06:04 +0800
From: Feng Tang <feng.tang@...el.com>
To: Andrew Morton <akpm@...ux-foundation.org>,
Vlastimil Babka <vbabka@...e.cz>,
Christoph Lameter <cl@...ux.com>,
Pekka Enberg <penberg@...nel.org>,
David Rientjes <rientjes@...gle.com>,
Joonsoo Kim <iamjoonsoo.kim@....com>,
Roman Gushchin <roman.gushchin@...ux.dev>,
Hyeonggon Yoo <42.hyeyoo@...il.com>,
Andrey Konovalov <andreyknvl@...il.com>,
Dmitry Vyukov <dvyukov@...gle.com>,
Andrey Ryabinin <ryabinin.a.a@...il.com>,
Alexander Potapenko <glider@...gle.com>,
Vincenzo Frascino <vincenzo.frascino@....com>
Cc: linux-mm@...ck.org, kasan-dev@...glegroups.com,
linux-kernel@...r.kernel.org, Feng Tang <feng.tang@...el.com>
Subject: [Patch v3 -mm 1/2] mm/slab: add is_kmalloc_cache() helper function
commit 6edf2576a6cc ("mm/slub: enable debugging memory wasting of
kmalloc") introduces 'SLAB_KMALLOC' bit specifying whether a
kmem_cache is a kmalloc cache for slab/slub (slob doesn't have
dedicated kmalloc caches).
Add a helper inline function for other components like kasan to
simplify code.
Signed-off-by: Feng Tang <feng.tang@...el.com>
Acked-by: Vlastimil Babka <vbabka@...e.cz>
Acked-by: Hyeonggon Yoo <42.hyeyoo@...il.com>
---
changlog:
since v2:
* fix type in subject(Vlastimil Babka)
* collect Acked-by tag
since v1:
* don't use macro for the helper (Andrew Morton)
* place the inline function in mm/slab.h to solve data structure
definition issue (Vlastimil Babka)
mm/slab.h | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/mm/slab.h b/mm/slab.h
index 7cc432969945..63fb4c00d529 100644
--- a/mm/slab.h
+++ b/mm/slab.h
@@ -323,6 +323,14 @@ static inline slab_flags_t kmem_cache_flags(unsigned int object_size,
}
#endif
+static inline bool is_kmalloc_cache(struct kmem_cache *s)
+{
+#ifndef CONFIG_SLOB
+ return (s->flags & SLAB_KMALLOC);
+#else
+ return false;
+#endif
+}
/* Legal flag mask for kmem_cache_create(), for various configurations */
#define SLAB_CORE_FLAGS (SLAB_HWCACHE_ALIGN | SLAB_CACHE_DMA | \
--
2.34.1
Powered by blists - more mailing lists