diff options
author | wuqiang.matt <wuqiang.matt@bytedance.com> | 2023-10-17 21:56:50 +0800 |
---|---|---|
committer | Masami Hiramatsu (Google) <mhiramat@kernel.org> | 2023-10-18 22:35:36 +0900 |
commit | b4edb8d2d4647a71a246d91fe34ff25c2c5f3481 (patch) | |
tree | 3ceb410a8d74c411e2eeed26d9b2479e5dfea3c5 /net/tls/tls_proc.c | |
parent | f843249cb6a151bfe7b955dfb93ff29663c258fb (diff) | |
download | linux-stable-b4edb8d2d4647a71a246d91fe34ff25c2c5f3481.tar.gz linux-stable-b4edb8d2d4647a71a246d91fe34ff25c2c5f3481.tar.bz2 linux-stable-b4edb8d2d4647a71a246d91fe34ff25c2c5f3481.zip |
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 'net/tls/tls_proc.c')
0 files changed, 0 insertions, 0 deletions