Re: [PATCH 5/6] riscv: allow kmalloc() caches aligned to the smallest value

From: Jisheng Zhang
Date: Wed May 31 2023 - 11:03:50 EST


On Tue, May 30, 2023 at 02:08:10PM +0100, Catalin Marinas wrote:
> On Tue, May 30, 2023 at 11:34:06AM +0100, Conor Dooley wrote:
> > On Tue, May 30, 2023 at 10:59:41AM +0100, Catalin Marinas wrote:
> > > On Mon, May 29, 2023 at 12:17:46PM +0100, Conor Dooley wrote:
> > > > On Sat, May 27, 2023 at 12:59:57AM +0800, Jisheng Zhang wrote:
> > > > > After this patch, a simple test of booting to a small buildroot rootfs
> > > > > on qemu shows:
> > > > >
> > > > > kmalloc-96 5041 5041 96 ...
> > > > > kmalloc-64 9606 9606 64 ...
> > > > > kmalloc-32 5128 5128 32 ...
> > > > > kmalloc-16 7682 7682 16 ...
> > > > > kmalloc-8 10246 10246 8 ...
> > > > >
> > > > > So we save about 1268KB memory. The saving will be much larger in normal
> > > > > OS env on real HW platforms.
> > > > >
> > > > > [1] Link: https://lore.kernel.org/linux-arm-kernel/20230524171904.3967031-1-catalin.marinas@xxxxxxx/
> >
> > While I think of it, Link: goes at the start of the line, the [1] should
> > go at the end (although I don't think you actually reference the link
> > anywhere in the text & it'll probably not be particularly relevant if a
> > subsequent revision of that patchset is applied.
>
> I plan to post at least one more. I'd suggest the risc-v patchset to
> only go in once my series landed.

Sure I will wait for your series landing in linus tree firstly.

>
> > > > > Signed-off-by: Jisheng Zhang <jszhang@xxxxxxxxxx>
> > > >
> > > > Fails to build chief, with loads of:
> > > > linux/dma-mapping.h:546:19: error: redefinition of 'dma_get_cache_alignment'
> > > >
> > > > And for 32-bit there's also a rake of:
> > > > include/linux/slab.h:239:9: warning: 'ARCH_KMALLOC_MINALIGN' macro redefined [-Wmacro-redefined]
> > > >
> > > > At the very least, reproducable with rv32_defconfig.
> > >
> > > Have you this it on top of the KMALLOC_MINALIGN preparation series?
> > >
> > > https://lore.kernel.org/r/20230524171904.3967031-1-catalin.marinas@xxxxxxx/
> >
> > Oh, no. Thanks for pointing that out.
> > Our automation stuff only uses what is in riscv/{for-next,master,fixes}.
> > Unless my reading comprehension is particularly bad of late it was

Aha I dunno this mechanism before.

> > non-obvious that this depended on something that had not yet been

Your reading comprehension is good ;) I just listed the dependency but
didn't explictly mention its merge status.

I will wait for Catalin's series being merged.