lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Sun,  6 Nov 2022 13:34:37 +0800
From:   wuqiang <wuqiang.matt@...edance.com>
To:     mhiramat@...nel.org, davem@...emloft.net,
        anil.s.keshavamurthy@...el.com, naveen.n.rao@...ux.ibm.com,
        rostedt@...dmis.org, peterz@...radead.org,
        akpm@...ux-foundation.org, sander@...nheule.net,
        ebiggers@...gle.com, dan.j.williams@...el.com, jpoimboe@...nel.org
Cc:     linux-kernel@...r.kernel.org, lkp@...el.com, mattwu@....com
Subject: [PATCH v5 0/4] lib,kprobes: kretprobe scalability improvement

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 the scalability of kretprobed routines.

Changes from v4:
  1) compiling failure with [-Werror=designated-init]
  2) compiling failure for sparc: prefetch() not defined
  3) comments & codes of objpool routines refined

v4 and more:
  https://lore.kernel.org/all/20221102023012.6362-1-wuqiang.matt@bytedance.com

---
 include/linux/freelist.h |  129 ------------
 include/linux/kprobes.h  |    9 +-
 include/linux/objpool.h  |  153 ++++++++++++++
 include/linux/rethook.h  |   15 +-
 kernel/kprobes.c         |   95 ++++-----
 kernel/trace/fprobe.c    |   17 +-
 kernel/trace/rethook.c   |   80 +++----
 lib/Kconfig.debug        |   11 +
 lib/Makefile             |    4 +-
 lib/objpool.c            |  487 +++++++++++++++++++++++++++++++++++++++++++
 lib/test_objpool.c       | 1052 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 11 files changed, 1802 insertions(+), 250 deletions(-)
 create mode 100644 include/linux/objpool.h
 create mode 100644 lib/objpool.c
 create mode 100644 lib/test_objpool.c
 delete mode 100644 include/linux/freelist.h

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ