summaryrefslogtreecommitdiff
path: root/lib/test_objpool.c
diff options
context:
space:
mode:
authorwuqiang.matt <wuqiang.matt@bytedance.com>2023-10-17 21:56:50 +0800
committerMasami Hiramatsu (Google) <mhiramat@kernel.org>2023-10-18 22:35:36 +0900
commitb4edb8d2d4647a71a246d91fe34ff25c2c5f3481 (patch)
tree3ceb410a8d74c411e2eeed26d9b2479e5dfea3c5 /lib/test_objpool.c
parentf843249cb6a151bfe7b955dfb93ff29663c258fb (diff)
lib: objpool added: ring-array based lockless MPMC
objpool is a scalable implementation of high performance queue for object allocation and reclamation, such as kretprobe instances. With leveraging percpu ring-array to mitigate hot spots of memory contention, it delivers near-linear scalability for high parallel scenarios. The objpool is best suited for the following cases: 1) Memory allocation or reclamation are prohibited or too expensive 2) Consumers are of different priorities, such as irqs and threads Limitations: 1) Maximum objects (capacity) is fixed after objpool creation 2) All pre-allocated objects are managed in percpu ring array, which consumes more memory than linked lists Link: https://lore.kernel.org/all/20231017135654.82270-2-wuqiang.matt@bytedance.com/ Signed-off-by: wuqiang.matt <wuqiang.matt@bytedance.com> Acked-by: Masami Hiramatsu (Google) <mhiramat@kernel.org> Signed-off-by: Masami Hiramatsu (Google) <mhiramat@kernel.org>
Diffstat (limited to 'lib/test_objpool.c')
0 files changed, 0 insertions, 0 deletions