All of lore.kernel.org
 help / color / mirror / Atom feed
From: Mike Rapoport <rppt@kernel.org>
To: Christian Brauner <brauner@kernel.org>
Cc: Vlastimil Babka <vbabka@suse.cz>, Jens Axboe <axboe@kernel.dk>,
	Jann Horn <jannh@google.com>,
	Linus Torvalds <torvalds@linux-foundation.org>,
	Kees Cook <kees@kernel.org>, Christoph Lameter <cl@linux.com>,
	Pekka Enberg <penberg@kernel.org>,
	David Rientjes <rientjes@google.com>,
	Joonsoo Kim <iamjoonsoo.kim@lge.com>,
	Andrew Morton <akpm@linux-foundation.org>,
	Roman Gushchin <roman.gushchin@linux.dev>,
	Hyeonggon Yoo <42.hyeyoo@gmail.com>,
	linux-mm@kvack.org, linux-fsdevel@vger.kernel.org
Subject: Re: [PATCH v4 16/17] slab: make __kmem_cache_create() static inline
Date: Thu, 5 Sep 2024 11:16:22 +0300	[thread overview]
Message-ID: <Ztlo1sZfIpJ_wNG4@kernel.org> (raw)
In-Reply-To: <20240905-work-kmem_cache_args-v4-16-ed45d5380679@kernel.org>

On Thu, Sep 05, 2024 at 09:56:59AM +0200, Christian Brauner wrote:
> Make __kmem_cache_create() a static inline function.
> 
> Signed-off-by: Christian Brauner <brauner@kernel.org>

Reviewed-by: Mike Rapoport (Microsoft) <rppt@kernel.org>

> ---
>  include/linux/slab.h | 13 ++++++++++---
>  mm/slab_common.c     | 38 --------------------------------------
>  2 files changed, 10 insertions(+), 41 deletions(-)
> 
> diff --git a/include/linux/slab.h b/include/linux/slab.h
> index d744397aa46f..597f6913cc0f 100644
> --- a/include/linux/slab.h
> +++ b/include/linux/slab.h
> @@ -261,10 +261,17 @@ struct kmem_cache *__kmem_cache_create_args(const char *name,
>  					    unsigned int object_size,
>  					    struct kmem_cache_args *args,
>  					    slab_flags_t flags);
> +static inline struct kmem_cache *
> +__kmem_cache_create(const char *name, unsigned int size, unsigned int align,
> +		    slab_flags_t flags, void (*ctor)(void *))
> +{
> +	struct kmem_cache_args kmem_args = {
> +		.align	= align,
> +		.ctor	= ctor,
> +	};
>  
> -struct kmem_cache *__kmem_cache_create(const char *name, unsigned int size,
> -				       unsigned int align, slab_flags_t flags,
> -				       void (*ctor)(void *));
> +	return __kmem_cache_create_args(name, size, &kmem_args, flags);
> +}
>  
>  /**
>   * kmem_cache_create_usercopy - Create a cache with a region suitable
> diff --git a/mm/slab_common.c b/mm/slab_common.c
> index 3477a3918afd..30000dcf0736 100644
> --- a/mm/slab_common.c
> +++ b/mm/slab_common.c
> @@ -337,44 +337,6 @@ struct kmem_cache *__kmem_cache_create_args(const char *name,
>  }
>  EXPORT_SYMBOL(__kmem_cache_create_args);
>  
> -/**
> - * __kmem_cache_create - Create a cache.
> - * @name: A string which is used in /proc/slabinfo to identify this cache.
> - * @size: The size of objects to be created in this cache.
> - * @align: The required alignment for the objects.
> - * @flags: SLAB flags
> - * @ctor: A constructor for the objects.
> - *
> - * Cannot be called within a interrupt, but can be interrupted.
> - * The @ctor is run when new pages are allocated by the cache.
> - *
> - * The flags are
> - *
> - * %SLAB_POISON - Poison the slab with a known test pattern (a5a5a5a5)
> - * to catch references to uninitialised memory.
> - *
> - * %SLAB_RED_ZONE - Insert `Red` zones around the allocated memory to check
> - * for buffer overruns.
> - *
> - * %SLAB_HWCACHE_ALIGN - Align the objects in this cache to a hardware
> - * cacheline.  This can be beneficial if you're counting cycles as closely
> - * as davem.
> - *
> - * Return: a pointer to the cache on success, NULL on failure.
> - */
> -struct kmem_cache *__kmem_cache_create(const char *name, unsigned int size,
> -				       unsigned int align, slab_flags_t flags,
> -				       void (*ctor)(void *))
> -{
> -	struct kmem_cache_args kmem_args = {
> -		.align	= align,
> -		.ctor	= ctor,
> -	};
> -
> -	return __kmem_cache_create_args(name, size, &kmem_args, flags);
> -}
> -EXPORT_SYMBOL(__kmem_cache_create);
> -
>  static struct kmem_cache *kmem_buckets_cache __ro_after_init;
>  
>  /**
> 
> -- 
> 2.45.2
> 

-- 
Sincerely yours,
Mike.

  reply	other threads:[~2024-09-05  8:19 UTC|newest]

Thread overview: 39+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-09-05  7:56 [PATCH v4 00/17] slab: add struct kmem_cache_args Christian Brauner
2024-09-05  7:56 ` [PATCH v4 01/17] slab: s/__kmem_cache_create/do_kmem_cache_create/g Christian Brauner
2024-09-06  0:12   ` Roman Gushchin
2024-09-05  7:56 ` [PATCH v4 02/17] slab: add struct kmem_cache_args Christian Brauner
2024-09-06  0:15   ` Roman Gushchin
2024-09-05  7:56 ` [PATCH v4 03/17] slab: port kmem_cache_create() to " Christian Brauner
2024-09-06  0:43   ` Roman Gushchin
2024-09-05  7:56 ` [PATCH v4 04/17] slab: port kmem_cache_create_rcu() " Christian Brauner
2024-09-06  0:45   ` Roman Gushchin
2024-09-05  7:56 ` [PATCH v4 05/17] slab: port kmem_cache_create_usercopy() " Christian Brauner
2024-09-06  0:48   ` Roman Gushchin
2024-09-05  7:56 ` [PATCH v4 06/17] slab: pass struct kmem_cache_args to create_cache() Christian Brauner
2024-09-06  0:51   ` Roman Gushchin
2024-09-05  7:56 ` [PATCH v4 07/17] slab: pull kmem_cache_open() into do_kmem_cache_create() Christian Brauner
2024-09-06  0:53   ` Roman Gushchin
2024-09-05  7:56 ` [PATCH v4 08/17] slab: pass struct kmem_cache_args to do_kmem_cache_create() Christian Brauner
2024-09-06  0:54   ` Roman Gushchin
2024-09-05  7:56 ` [PATCH v4 09/17] slab: remove rcu_freeptr_offset from struct kmem_cache Christian Brauner
2024-09-06  0:55   ` Roman Gushchin
2024-09-05  7:56 ` [PATCH v4 10/17] slab: port KMEM_CACHE() to struct kmem_cache_args Christian Brauner
2024-09-06  0:58   ` Roman Gushchin
2024-09-05  7:56 ` [PATCH v4 11/17] slab: port KMEM_CACHE_USERCOPY() " Christian Brauner
2024-09-06  1:00   ` Roman Gushchin
2024-09-05  7:56 ` [PATCH v4 12/17] slab: create kmem_cache_create() compatibility layer Christian Brauner
2024-09-05  8:15   ` Mike Rapoport
2024-09-05 11:54   ` Vlastimil Babka
2024-09-06  1:05   ` Roman Gushchin
2024-09-05  7:56 ` [PATCH v4 13/17] file: port to struct kmem_cache_args Christian Brauner
2024-09-06  1:06   ` Roman Gushchin
2024-09-05  7:56 ` [PATCH v4 14/17] slab: remove kmem_cache_create_rcu() Christian Brauner
2024-09-06  1:08   ` Roman Gushchin
2024-09-05  7:56 ` [PATCH v4 15/17] slab: make kmem_cache_create_usercopy() static inline Christian Brauner
2024-09-05  8:15   ` Mike Rapoport
2024-09-06  1:08   ` Roman Gushchin
2024-09-05  7:56 ` [PATCH v4 16/17] slab: make __kmem_cache_create() " Christian Brauner
2024-09-05  8:16   ` Mike Rapoport [this message]
2024-09-06  1:10   ` Roman Gushchin
2024-09-05  7:57 ` [PATCH v4 17/17] io_uring: port to struct kmem_cache_args Christian Brauner
2024-09-05 12:02 ` [PATCH v4 00/17] slab: add " Vlastimil Babka

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=Ztlo1sZfIpJ_wNG4@kernel.org \
    --to=rppt@kernel.org \
    --cc=42.hyeyoo@gmail.com \
    --cc=akpm@linux-foundation.org \
    --cc=axboe@kernel.dk \
    --cc=brauner@kernel.org \
    --cc=cl@linux.com \
    --cc=iamjoonsoo.kim@lge.com \
    --cc=jannh@google.com \
    --cc=kees@kernel.org \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=penberg@kernel.org \
    --cc=rientjes@google.com \
    --cc=roman.gushchin@linux.dev \
    --cc=torvalds@linux-foundation.org \
    --cc=vbabka@suse.cz \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.