linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
* [PATCH bpf-next 0/6] bpf: Fixes for per-cpu kptr
@ 2023-10-07 13:51 Hou Tao
  2023-10-07 13:51 ` [PATCH bpf-next 1/6] mm/percpu.c: introduce alloc_size_percpu() Hou Tao
                   ` (5 more replies)
  0 siblings, 6 replies; 16+ messages in thread
From: Hou Tao @ 2023-10-07 13:51 UTC (permalink / raw)
  To: bpf, linux-mm
  Cc: Martin KaFai Lau, Alexei Starovoitov, Andrii Nakryiko, Song Liu,
	Hao Luo, Yonghong Song, Daniel Borkmann, KP Singh,
	Stanislav Fomichev, Jiri Olsa, John Fastabend, houtao1,
	Dennis Zhou, Tejun Heo, Christoph Lameter, Andrew Morton

From: Hou Tao <houtao1@huawei.com>

Hi,

The patchset aims to fix the problems found in the review of per-cpu
kptr patch-set [0]. Patch #1 introduces alloc_size_percpu() for dynamic
per-cpu area. Patch #2 and #3 use alloc_size_percpu() to check
whether or not unit_size matches with the size of underlying per-cpu
area and to select a matching bpf_mem_cache. Patch #4 fixes the freeing
of per-cpu kptr when these kptr is freed by map destruction. The last
patch adds test cases for these problems.

Please see individual patches for details. And comments are always
welcome.

[0]: https://lore.kernel.org/bpf/20230827152729.1995219-1-yonghong.song@linux.dev

Hou Tao (6):
  mm/percpu.c: introduce alloc_size_percpu()
  bpf: Re-enable unit_size checking for global per-cpu allocator
  bpf: Use alloc_size_percpu() in bpf_mem_free{_rcu}()
  bpf: Move the declaration of __bpf_obj_drop_impl() to internal.h
  bpf: Use bpf_global_percpu_ma for per-cpu kptr in
    __bpf_obj_drop_impl()
  selftests/bpf: Add more test cases for bpf memory allocator

 include/linux/bpf_mem_alloc.h                 |   1 +
 include/linux/percpu.h                        |   1 +
 kernel/bpf/helpers.c                          |  25 ++-
 kernel/bpf/internal.h                         |  11 ++
 kernel/bpf/memalloc.c                         |  41 ++--
 kernel/bpf/syscall.c                          |   8 +-
 mm/percpu.c                                   |  29 +++
 .../selftests/bpf/prog_tests/test_bpf_ma.c    |  20 +-
 .../testing/selftests/bpf/progs/test_bpf_ma.c | 180 +++++++++++++++++-
 9 files changed, 282 insertions(+), 34 deletions(-)
 create mode 100644 kernel/bpf/internal.h

-- 
2.29.2



^ permalink raw reply	[flat|nested] 16+ messages in thread

end of thread, other threads:[~2023-10-11  7:57 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-10-07 13:51 [PATCH bpf-next 0/6] bpf: Fixes for per-cpu kptr Hou Tao
2023-10-07 13:51 ` [PATCH bpf-next 1/6] mm/percpu.c: introduce alloc_size_percpu() Hou Tao
2023-10-07 14:04   ` Andrew Morton
2023-10-08  2:47     ` Hou Tao
2023-10-08 22:32   ` Dennis Zhou
2023-10-11  6:30     ` Hou Tao
2023-10-07 13:51 ` [PATCH bpf-next 2/6] bpf: Re-enable unit_size checking for global per-cpu allocator Hou Tao
2023-10-09 16:51   ` Alexei Starovoitov
2023-10-07 13:51 ` [PATCH bpf-next 3/6] bpf: Use alloc_size_percpu() in bpf_mem_free{_rcu}() Hou Tao
2023-10-07 13:51 ` [PATCH bpf-next 4/6] bpf: Move the declaration of __bpf_obj_drop_impl() to internal.h Hou Tao
2023-10-09 16:28   ` Stanislav Fomichev
2023-10-11  6:31     ` Hou Tao
2023-10-09 16:56   ` Alexei Starovoitov
2023-10-11  6:40     ` Hou Tao
2023-10-07 13:51 ` [PATCH bpf-next 5/6] bpf: Use bpf_global_percpu_ma for per-cpu kptr in __bpf_obj_drop_impl() Hou Tao
2023-10-07 13:51 ` [PATCH bpf-next 6/6] selftests/bpf: Add more test cases for bpf memory allocator Hou Tao

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox