From: Ihor Solodrai <ihor.solodrai@linux.dev>
To: Andrii Nakryiko <andrii.nakryiko@gmail.com>,
Jiri Olsa <jolsa@kernel.org>
Cc: Oleg Nesterov <oleg@redhat.com>,
Masami Hiramatsu <mhiramat@kernel.org>,
Peter Zijlstra <peterz@infradead.org>,
Andrii Nakryiko <andrii@kernel.org>,
bpf@vger.kernel.org, linux-kernel@vger.kernel.org,
linux-trace-kernel@vger.kernel.org, x86@kernel.org,
Song Liu <songliubraving@fb.com>, Yonghong Song <yhs@fb.com>,
John Fastabend <john.fastabend@gmail.com>,
Hao Luo <haoluo@google.com>, Steven Rostedt <rostedt@goodmis.org>,
Ingo Molnar <mingo@kernel.org>
Subject: Re: [PATCHv3 perf/core 0/6] uprobe,bpf: Allow to change app registers from uprobe registers
Date: Fri, 12 Sep 2025 13:28:55 -0700 [thread overview]
Message-ID: <7f591ac9-d3e0-4404-987c-40eceaf51fbb@linux.dev> (raw)
In-Reply-To: <CAEf4Bzb4ErWn=2SajBcyJxqGEYy0DXmtWuXKLskPGLG-Y9POFA@mail.gmail.com>
On 9/9/25 9:41 AM, Andrii Nakryiko wrote:
> On Tue, Sep 9, 2025 at 8:39 AM Jiri Olsa <jolsa@kernel.org> wrote:
>>
>> hi,
>> we recently had several requests for tetragon to be able to change
>> user application function return value or divert its execution through
>> instruction pointer change.
>>
>> This patchset adds support for uprobe program to change app's registers
>> including instruction pointer.
>>
>> v3 changes:
>> - deny attach of kprobe,multi with kprobe_write_ctx set [Alexei]
>> - added more tests for denied kprobe attachment
>>
>> thanks,
>> jirka
>>
>>
>> ---
>> Jiri Olsa (6):
>> bpf: Allow uprobe program to change context registers
>> uprobe: Do not emulate/sstep original instruction when ip is changed
>> selftests/bpf: Add uprobe context registers changes test
>> selftests/bpf: Add uprobe context ip register change test
>> selftests/bpf: Add kprobe write ctx attach test
>> selftests/bpf: Add kprobe multi write ctx attach test
>>
>
> For the series:
>
> Acked-by: Andrii Nakryiko <andrii@kernel.org>
>
> Question is which tree will this go through? Most changes are in BPF,
> so probably bpf-next, right?
Hi Jiri.
This series does not apply to current bpf-next, see below.
Could you please respin it with bpf-next tag?
E.g. "[PATCH v4 bpf-next 0/6] ..."
Thanks!
$ git log -1 --oneline
a578b54a8ad2 (HEAD -> master, origin/master, origin/HEAD,
kernel-patches/bpf-next) Merge branch
'bpf-report-arena-faults-to-bpf-streams'
$ b4 am 20250909123857.315599-1-jolsa@kernel.org
[...]
$ git am
./v3_20250909_jolsa_uprobe_bpf_allow_to_change_app_registers_from_uprobe_registers.mbx
Applying: bpf: Allow uprobe program to change context registers
Applying: uprobe: Do not emulate/sstep original instruction when ip is
changed
error: patch failed: kernel/events/uprobes.c:2768
error: kernel/events/uprobes.c: patch does not apply
Patch failed at 0002 uprobe: Do not emulate/sstep original instruction
when ip is changed
[...]
>
>> include/linux/bpf.h | 1 +
>> kernel/events/core.c | 4 +++
>> kernel/events/uprobes.c | 7 +++++
>> kernel/trace/bpf_trace.c | 7 +++--
>> tools/testing/selftests/bpf/prog_tests/attach_probe.c | 28 +++++++++++++++++
>> tools/testing/selftests/bpf/prog_tests/kprobe_multi_test.c | 27 ++++++++++++++++
>> tools/testing/selftests/bpf/prog_tests/uprobe.c | 156 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-
>> tools/testing/selftests/bpf/progs/kprobe_write_ctx.c | 22 +++++++++++++
>> tools/testing/selftests/bpf/progs/test_uprobe.c | 38 +++++++++++++++++++++++
>> 9 files changed, 287 insertions(+), 3 deletions(-)
>> create mode 100644 tools/testing/selftests/bpf/progs/kprobe_write_ctx.c
next prev parent reply other threads:[~2025-09-12 20:29 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-09-09 12:38 [PATCHv3 perf/core 0/6] uprobe,bpf: Allow to change app registers from uprobe registers Jiri Olsa
2025-09-09 12:38 ` [PATCHv3 perf/core 1/6] bpf: Allow uprobe program to change context registers Jiri Olsa
2025-09-09 16:41 ` Andrii Nakryiko
2025-09-16 21:52 ` Jiri Olsa
2025-09-09 12:38 ` [PATCHv3 perf/core 2/6] uprobe: Do not emulate/sstep original instruction when ip is changed Jiri Olsa
2025-09-09 12:38 ` [PATCHv3 perf/core 3/6] selftests/bpf: Add uprobe context registers changes test Jiri Olsa
2025-09-09 12:38 ` [PATCHv3 perf/core 4/6] selftests/bpf: Add uprobe context ip register change test Jiri Olsa
2025-09-09 12:38 ` [PATCHv3 perf/core 5/6] selftests/bpf: Add kprobe write ctx attach test Jiri Olsa
2025-09-09 12:38 ` [PATCHv3 perf/core 6/6] selftests/bpf: Add kprobe multi " Jiri Olsa
2025-09-09 16:41 ` [PATCHv3 perf/core 0/6] uprobe,bpf: Allow to change app registers from uprobe registers Andrii Nakryiko
2025-09-12 20:28 ` Ihor Solodrai [this message]
2025-09-12 20:55 ` Jiri Olsa
2025-09-12 21:09 ` Ihor Solodrai
2025-09-15 20:10 ` Andrii Nakryiko
2025-09-15 21:29 ` Jiri Olsa
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=7f591ac9-d3e0-4404-987c-40eceaf51fbb@linux.dev \
--to=ihor.solodrai@linux.dev \
--cc=andrii.nakryiko@gmail.com \
--cc=andrii@kernel.org \
--cc=bpf@vger.kernel.org \
--cc=haoluo@google.com \
--cc=john.fastabend@gmail.com \
--cc=jolsa@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-trace-kernel@vger.kernel.org \
--cc=mhiramat@kernel.org \
--cc=mingo@kernel.org \
--cc=oleg@redhat.com \
--cc=peterz@infradead.org \
--cc=rostedt@goodmis.org \
--cc=songliubraving@fb.com \
--cc=x86@kernel.org \
--cc=yhs@fb.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.