Re: [PATCH v2 bpf 0/3] vmalloc: bpf: introduce VM_ALLOW_HUGE_VMAP

From: Song Liu
Date: Tue Apr 12 2022 - 20:35:39 EST


Hi Luis,

On Tue, Apr 12, 2022 at 8:38 AM Luis Chamberlain <mcgrof@xxxxxxxxxx> wrote:
>
> On Mon, Apr 11, 2022 at 04:18:05PM -0700, Song Liu wrote:
> > Changes v1 => v2:
> > 1. Add vmalloc_huge(). (Christoph Hellwig)
> > 2. Add module_alloc_huge(). (Christoph Hellwig)
> > 3. Add Fixes tag and Link tag. (Thorsten Leemhuis)
> >
> > Enabling HAVE_ARCH_HUGE_VMALLOC on x86_64 and use it for bpf_prog_pack has
> > caused some issues [1], as many users of vmalloc are not yet ready to
> > handle huge pages. To enable a more smooth transition to use huge page
> > backed vmalloc memory, this set replaces VM_NO_HUGE_VMAP flag with an new
> > opt-in flag, VM_ALLOW_HUGE_VMAP. More discussions about this topic can be
> > found at [2].
> >
> > Patch 1 removes VM_NO_HUGE_VMAP and adds VM_ALLOW_HUGE_VMAP.
> > Patch 2 uses VM_ALLOW_HUGE_VMAP in bpf_prog_pack.
> >
> > [1] https://lore.kernel.org/lkml/20220204185742.271030-1-song@xxxxxxxxxx/
> > [2] https://lore.kernel.org/linux-mm/20220330225642.1163897-1-song@xxxxxxxxxx/
> >
> > Song Liu (3):
> > vmalloc: replace VM_NO_HUGE_VMAP with VM_ALLOW_HUGE_VMAP
> > module: introduce module_alloc_huge
> > bpf: use vmalloc with VM_ALLOW_HUGE_VMAP for bpf_prog_pack
> >
> > arch/Kconfig | 6 ++----
> > arch/powerpc/kernel/module.c | 2 +-
> > arch/s390/kvm/pv.c | 2 +-
> > arch/x86/kernel/module.c | 21 +++++++++++++++++++
> > include/linux/moduleloader.h | 5 +++++
> > include/linux/vmalloc.h | 4 ++--
> > kernel/bpf/core.c | 9 +++++----
> > kernel/module.c | 8 ++++++++
>
> Please use modules-next [0] as that has queued up changes which change
> kernel/module.c quite a bit.
>
> [0] https://git.kernel.org/pub/scm/linux/kernel/git/mcgrof/linux.git/log/?h=modules-next

We are hoping to ship this set to fix some issues with 5.18. So I guess it
shouldn't go through modules-next branch? Would this work for you?
We are adding a new API module_alloc_huge(), so it shouldn't break
existing features.

Thanks,
Song