Message ID | 20220411231808.667073-1-song@kernel.org (mailing list archive) |
---|---|
Headers | show |
Series | vmalloc: bpf: introduce VM_ALLOW_HUGE_VMAP | expand |
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 Luis
Hi Luis, On Tue, Apr 12, 2022 at 8:38 AM Luis Chamberlain <mcgrof@kernel.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