From: Kent Overstreet <kent.overstreet@linux.dev>
To: Usama Arif <usamaarif642@gmail.com>
Cc: Andrew Morton <akpm@linux-foundation.org>,
surenb@google.com, hannes@cmpxchg.org, shakeel.butt@linux.dev,
vlad.wing@gmail.com, linux-mm@kvack.org,
linux-kernel@vger.kernel.org, kernel-team@meta.com
Subject: Re: [PATCH 1/2] mm: slub: allocate slab object extensions non-contiguously
Date: Tue, 20 May 2025 10:01:27 -0400 [thread overview]
Message-ID: <22oihuvcrh5sg3urocw6wbop2v5yni7zinuhywbz7glsee4yoa@gzi5v5fcggdl> (raw)
In-Reply-To: <6d015d91-e74c-48b3-8bc3-480980a74f9b@gmail.com>
On Tue, May 20, 2025 at 02:46:14PM +0100, Usama Arif wrote:
>
>
> On 20/05/2025 14:44, Kent Overstreet wrote:
> > On Tue, May 20, 2025 at 01:25:46PM +0100, Usama Arif wrote:
> >> When memory allocation profiling is running on memory bound services,
> >> allocations greater than order 0 for slab object extensions can fail,
> >> for e.g. zs_handle zswap slab which will be 512 objsperslab x 16 bytes
> >> per slabobj_ext (order 1 allocation). Use kvcalloc to improve chances
> >> of the allocation being successful.
> >>
> >> Signed-off-by: Usama Arif <usamaarif642@gmail.com>
> >> Reported-by: Vlad Poenaru <vlad.wing@gmail.com>
> >> Closes: https://lore.kernel.org/all/17fab2d6-5a74-4573-bcc3-b75951508f0a@gmail.com/
> >> ---
> >> mm/slub.c | 2 +-
> >> 1 file changed, 1 insertion(+), 1 deletion(-)
> >>
> >> diff --git a/mm/slub.c b/mm/slub.c
> >> index dc9e729e1d26..bf43c403ead2 100644
> >> --- a/mm/slub.c
> >> +++ b/mm/slub.c
> >> @@ -1989,7 +1989,7 @@ int alloc_slab_obj_exts(struct slab *slab, struct kmem_cache *s,
> >> gfp &= ~OBJCGS_CLEAR_MASK;
> >> /* Prevent recursive extension vector allocation */
> >> gfp |= __GFP_NO_OBJ_EXT;
> >> - vec = kcalloc_node(objects, sizeof(struct slabobj_ext), gfp,
> >> + vec = kvcalloc_node(objects, sizeof(struct slabobj_ext), gfp,
> >> slab_nid(slab));
> >
> > And what's the latency going to be on a vmalloc() allocation when we're
> > low on memory?
>
> Would it not be better to get the allocation slighly slower than to not get
> it at all?
Our behaviour when thrashing sucks, we don't want to do anything to make
that worse.
There's also the fact that vmalloc doesn't correctly respect gfp flags,
so until that gets fixed this doesn't work at all.
next prev parent reply other threads:[~2025-05-20 14:01 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-05-20 12:25 Usama Arif
2025-05-20 12:25 ` [PATCH 2/2] mm: slub: only warn once when allocating slab obj extensions fails Usama Arif
2025-05-20 13:34 ` Harry Yoo
2025-05-20 13:42 ` Usama Arif
2025-05-20 14:18 ` Shakeel Butt
2025-05-20 15:14 ` Suren Baghdasaryan
2025-05-20 15:22 ` Usama Arif
2025-05-22 0:16 ` Harry Yoo
2025-05-22 12:42 ` Usama Arif
2025-05-20 13:44 ` [PATCH 1/2] mm: slub: allocate slab object extensions non-contiguously Kent Overstreet
2025-05-20 13:46 ` Usama Arif
2025-05-20 14:01 ` Kent Overstreet [this message]
2025-05-20 14:24 ` Shakeel Butt
2025-05-20 14:28 ` Kent Overstreet
2025-05-20 17:44 ` Uladzislau Rezki
2025-05-20 17:47 ` Kent Overstreet
2025-05-20 17:57 ` Uladzislau Rezki
2025-05-20 17:58 ` Kent Overstreet
2025-05-20 18:59 ` Uladzislau Rezki
2025-05-20 14:13 ` Usama Arif
2025-05-20 15:20 ` Suren Baghdasaryan
2025-05-20 16:41 ` Kent Overstreet
2025-05-20 17:20 ` Suren Baghdasaryan
2025-05-20 17:25 ` Kent Overstreet
2025-05-20 17:18 ` Johannes Weiner
2025-05-20 14:01 ` Usama Arif
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=22oihuvcrh5sg3urocw6wbop2v5yni7zinuhywbz7glsee4yoa@gzi5v5fcggdl \
--to=kent.overstreet@linux.dev \
--cc=akpm@linux-foundation.org \
--cc=hannes@cmpxchg.org \
--cc=kernel-team@meta.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=shakeel.butt@linux.dev \
--cc=surenb@google.com \
--cc=usamaarif642@gmail.com \
--cc=vlad.wing@gmail.com \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox