[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20240906051205.530219-1-andrii@kernel.org>
Date: Thu, 5 Sep 2024 22:12:03 -0700
From: Andrii Nakryiko <andrii@...nel.org>
To: linux-trace-kernel@...r.kernel.org,
peterz@...radead.org,
oleg@...hat.com
Cc: rostedt@...dmis.org,
mhiramat@...nel.org,
bpf@...r.kernel.org,
linux-kernel@...r.kernel.org,
jolsa@...nel.org,
paulmck@...nel.org,
willy@...radead.org,
surenb@...gle.com,
akpm@...ux-foundation.org,
linux-mm@...ck.org,
mjguzik@...il.com,
brauner@...nel.org,
jannh@...gle.com,
Andrii Nakryiko <andrii@...nel.org>
Subject: [PATCH 0/2] uprobes,mm: speculative lockless VMA-to-uprobe lookup
Implement speculative (lockless) resolution of VMA to inode to uprobe,
bypassing the need to take mmap_lock for reads, if possible. Patch #1 by Suren
adds mm_struct helpers that help detect whether mm_struct were changed, which
is used by uprobe logic to validate that speculative results can be trusted
after all the lookup logic results in a valid uprobe instance.
I ran a few will-it-scale benchmarks to sanity check that patch #1 doesn't
introduce any noticeable regressions. Which it seems it doesn't.
Andrii Nakryiko (1):
uprobes: add speculative lockless VMA-to-inode-to-uprobe resolution
Suren Baghdasaryan (1):
mm: introduce mmap_lock_speculation_{start|end}
include/linux/mm_types.h | 3 +++
include/linux/mmap_lock.h | 53 +++++++++++++++++++++++++++++++--------
kernel/events/uprobes.c | 51 +++++++++++++++++++++++++++++++++++++
kernel/fork.c | 3 ---
4 files changed, 97 insertions(+), 13 deletions(-)
--
2.43.5
Powered by blists - more mailing lists