linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v7 0/5] lib,kprobes: kretprobe scalability improvement
@ 2022-12-12 12:31 wuqiang
  2022-12-12 12:31 ` [PATCH v7 1/5] lib: objpool added: ring-array based lockless MPMC queue wuqiang
                   ` (4 more replies)
  0 siblings, 5 replies; 10+ messages in thread
From: wuqiang @ 2022-12-12 12:31 UTC (permalink / raw)
  To: mhiramat, davem, anil.s.keshavamurthy, naveen.n.rao, rostedt,
	peterz, akpm, sander, ebiggers, dan.j.williams, jpoimboe
  Cc: linux-kernel, lkp, mattwu, wuqiang

This patch series introduces a scalable and lockless ring-array based
object pool and replaces the original freelist (a LIFO queue based on
singly linked list) to improve scalability of kretprobed routines.

Changes from v6 (https://lore.kernel.org/lkml/20221108071443.258794-1-wuqiang.matt@bytedance.com/):
  1) objpool: implementation simplified as Masami advised
  2) rethook_alloc: error codes returning supported (ERR_PTR)
  3) MAINTAINERS: support added for objpool files
  4) synced to latest 6.1 with x86_64/x86/aarch64 verified

wuqiang (5):
  lib: objpool added: ring-array based lockless MPMC queue
  lib: objpool test module added
  kprobes: kretprobe scalability improvement with objpool
  kprobes: freelist.h removed
  MAINTAINERS: objpool added

 MAINTAINERS              |   7 +
 include/linux/freelist.h | 129 --------
 include/linux/kprobes.h  |   9 +-
 include/linux/objpool.h  | 109 ++++++
 include/linux/rethook.h  |  14 +-
 kernel/kprobes.c         | 101 +++---
 kernel/trace/fprobe.c    |  37 +--
 kernel/trace/rethook.c   |  99 +++---
 lib/Kconfig.debug        |  11 +
 lib/Makefile             |   4 +-
 lib/objpool.c            | 320 ++++++++++++++++++
 lib/test_objpool.c       | 696 +++++++++++++++++++++++++++++++++++++++
 12 files changed, 1264 insertions(+), 272 deletions(-)
 delete mode 100644 include/linux/freelist.h
 create mode 100644 include/linux/objpool.h
 create mode 100644 lib/objpool.c
 create mode 100644 lib/test_objpool.c

-- 
2.34.1


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

end of thread, other threads:[~2022-12-27 15:59 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-12-12 12:31 [PATCH v7 0/5] lib,kprobes: kretprobe scalability improvement wuqiang
2022-12-12 12:31 ` [PATCH v7 1/5] lib: objpool added: ring-array based lockless MPMC queue wuqiang
2022-12-22 15:47   ` Masami Hiramatsu
2022-12-23  2:29     ` Masami Hiramatsu
2022-12-12 12:31 ` [PATCH v7 2/5] lib: objpool test module added wuqiang
2022-12-27 15:39   ` Masami Hiramatsu
2022-12-12 12:31 ` [PATCH v7 3/5] kprobes: kretprobe scalability improvement with objpool wuqiang
2022-12-27 15:59   ` Masami Hiramatsu
2022-12-12 12:31 ` [PATCH v7 4/5] kprobes: freelist.h removed wuqiang
2022-12-12 12:31 ` [PATCH v7 5/5] MAINTAINERS: objpool added wuqiang

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).