[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <CAPhsuW46YEP=uSvG3rgE4qfS8vJ3e-ZoSRYdCPLyEPmqugEXxA@mail.gmail.com>
Date: Tue, 12 Apr 2022 17:35:14 -0700
From: Song Liu <song@...nel.org>
To: Luis Chamberlain <mcgrof@...nel.org>
Cc: bpf <bpf@...r.kernel.org>, Networking <netdev@...r.kernel.org>,
Linux-MM <linux-mm@...ck.org>,
open list <linux-kernel@...r.kernel.org>,
Alexei Starovoitov <ast@...nel.org>,
Daniel Borkmann <daniel@...earbox.net>,
Andrii Nakryiko <andrii@...nel.org>,
Kernel Team <kernel-team@...com>,
Andrew Morton <akpm@...ux-foundation.org>,
"Edgecombe, Rick P" <rick.p.edgecombe@...el.com>,
Christoph Hellwig <hch@...radead.org>, imbrenda@...ux.ibm.com
Subject: Re: [PATCH v2 bpf 0/3] vmalloc: bpf: introduce VM_ALLOW_HUGE_VMAP
Hi Luis,
On Tue, Apr 12, 2022 at 8:38 AM Luis Chamberlain <mcgrof@...nel.org> 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@kernel.org/
> > [2] https://lore.kernel.org/linux-mm/20220330225642.1163897-1-song@kernel.org/
> >
> > 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
Powered by blists - more mailing lists