vmalloc: bpf: introduce VM_ALLOW_HUGE_VMAP
Get series with b4
b4 am [email protected]Versions newest first · linked by author and title
- v4 Latest4 patches 56 repliesIn review
- v3 posting 2/24 patches 10 repliesSuperseded
- v3 posting 1/24 patches 0 repliesSuperseded
Earlier versions · 3
| Version | Posted | Patches | Replies | Status |
|---|---|---|---|---|
| v2 posting 2/2 | 3 patches | 12 replies | Superseded | |
| v2 posting 1/2 | 3 patches | 2 replies | Superseded | |
| v1 | 2 patches | 8 replies | Superseded |
Changes in v4 from the cover letter
1. Fix __weak module_alloc_huge; remove unused vmalloc_huge; rename __vmalloc_huge => vmalloc_huge. (Christoph Hellwig)
2. Use vzalloc (as it was before vmalloc_no_huge) and clean up comments in kvm_s390_pv_alloc_vm.
Patches in v4 No applies recorded yet
| # | Subject and files | Size | Replies | Applied |
|---|---|---|---|---|
| 1/4 | vmalloc: replace VM_NO_HUGE_VMAP with VM_ALLOW_HUGE_VMAParch/ arch/ arch/ +2 more | +16 | 1 reply | |
| 2/4 | page_alloc: use vmalloc_huge for large system hashmm/ | +1 | 4 replies | |
| 3/4 | module: introduce module_alloc_hugearch/ include/ kernel/ | +34 | 2 replies | |
| 4/4 | bpf: use module_alloc_huge for bpf_prog_packkernel/ | +4 | 0 replies |
Reviews trailers per patch
3 of 4 patches have a Reviewed-by or Acked-by.
| Patch | Christoph Hellwig | Rik van Riel |
|---|---|---|
| 1/4 | R-b | R-b |
| 2/4 | R-b | R-b |
| 3/4 | R-b | |
| 4/4 |
Trailers given in replies are filled; those carried in the patches from earlier versions are outlined with dashes.
Cover letter [PATCH v4 bpf 0/4] vmalloc: bpf: introduce VM_ALLOW_HUGE_VMAP
Changes v3 => v4:
1. Fix __weak module_alloc_huge; remove unused vmalloc_huge; rename __vmalloc_huge => vmalloc_huge. (Christoph Hellwig)
2. Use vzalloc (as it was before vmalloc_no_huge) and clean up comments in kvm_s390_pv_alloc_vm.
Changes v2 => v3:
1. Use __vmalloc_huge in alloc_large_system_hash.
2. Use EXPORT_SYMBOL_GPL for new functions. (Christoph Hellwig)
3. Add more description about the issues and changes.(Christoph Hellwig, Rick Edgecombe).
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/[email protected]/
[2] https://lore.kernel.org/linux-mm/[email protected]/
Song Liu (4):
vmalloc: replace VM_NO_HUGE_VMAP with VM_ALLOW_HUGE_VMAP
page_alloc: use vmalloc_huge for large system hash
module: introduce module_alloc_huge
bpf: use module_alloc_huge for bpf_prog_pack
arch/Kconfig | 6 ++---- arch/powerpc/kernel/module.c | 2 +- arch/s390/kvm/pv.c | 7 +------ arch/x86/kernel/module.c | 21 +++++++++++++++++++++ include/linux/moduleloader.h | 5 +++++ include/linux/vmalloc.h | 4 ++-- kernel/bpf/core.c | 7 ++++--- kernel/module.c | 8 ++++++++ mm/page_alloc.c | 2 +- mm/vmalloc.c | 17 ++++++++++------- 10 files changed, 55 insertions(+), 24 deletions(-)
--
2.30.2