From: sashiko-bot@kernel.org
To: "Andi Kleen" <ak@kernel.org>
Cc: linux-perf-users@vger.kernel.org
Subject: Re: [RFC v1 15/19] ptwrite uprobes: Add a tutorial and overview documentation
Date: Mon, 31 Aug 2026 21:10:56 +0000 [thread overview]
Message-ID: <20260831211056.E65A51F000E9@smtp.kernel.org> (raw)
In-Reply-To: <20260831150651.1134594-16-ak@kernel.org>
Thank you for your contribution! Sashiko AI review found 3 potential issue(s) to consider:
- [Low] Missing blank line before a bullet list in reStructuredText.
- [Low] Typos in the 'Options in this case' list.
- [Low] Formatting inconsistency with double backticks in indented block.
--
commit e96dac3fdefb27a2867c9e268822b99d3e4c7aa7
Author: Andi Kleen <ak@kernel.org>
ptwrite uprobes: Add a tutorial and overview documentation
This patch adds a new documentation file explaining how to use ptwrite
uprobes for hardware tracing. It covers performance benefits, requirements,
and provides examples for configuring probes via tracefs and perf probe.
> diff --git a/Documentation/trace/ptwrite-uprobes.rst b/Documentation/trace/ptwrite-uprobes.rst
> new file mode 100644
> index 0000000000000..79ab35824b93c
> --- /dev/null
> +++ b/Documentation/trace/ptwrite-uprobes.rst
[ ... ]
> +Punning is a probabilistic method that depends on the existing
> +instruction bytes and the placement of the executable in memory.
> +It has a high chance of success on PIE/PIC binaries, but tends
> +to work poorly on non PIE main executables.
> +
> +When punning is not possible the probe is rejected at install
> +time. Options in this case:
> +- Move the probe site to a different instruction which may work.
[Severity: Low]
Does this list render correctly in Sphinx without a blank line before it?
In reStructuredText, bullet lists generally must be preceded by a blank
line, otherwise the list items may get merged into the preceding paragraph
or trigger build warnings.
> +- Rebuild with -fPIE if it's a main problem not using PIE.
> +- Enable or disable /proc/sys/kernel/randomize_va_space. If the
> + randomization is enabled it may also just work on a rerun of
> + the program.
> +- Fall back to a classic uprobes
[Severity: Low]
There are a couple of minor typos in this section. Could "main problem"
be corrected to "main program", and "a classic uprobes" be changed to
"a classic uprobe" or "classic uprobes"?
[ ... ]
> +If the program itself also executes own ``PTWRITE``, those values mix with the
> +uprobe output in the stream. The decoder uses the header magic to identify
> +uprobe records. Other values are printed as ``manual ptwrite:`` lines (with
> +their IP when ``fup_on_ptw`` is set) and counted in the summary's ``stray``
> +field.
> +
> +To also print the decoded branch stream alongside the records, add
> +``b`` to the itrace options and drop the ``q``
> +
> + # ``perf script --itrace=web -s uprobe-ptwrite-decode.py -i perf.data``
[Severity: Low]
Are the double backticks intended here? Because this line is already indented
as a literal block, the double backticks will likely be rendered verbatim in
the output instead of being parsed as inline literal formatting.
> +
> +Each decoded branch prints as a ``branch:`` line (from => to, with
> +symbols where resolvable), interleaved with the probe records and any
[ ... ]
--
Sashiko AI review · https://sashiko.dev/#/patchset/20260831150651.1134594-1-ak@kernel.org?part=15
next prev parent reply other threads:[~2026-08-31 21:10 UTC|newest]
Thread overview: 41+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-08-31 15:04 [RFC] ptwrite uprobes Andi Kleen
2026-08-31 15:04 ` [RFC v1 01/19] uprobes: guard trace cleanup against error pointers Andi Kleen
2026-08-31 18:15 ` sashiko-bot
2026-09-01 0:49 ` Masami Hiramatsu
2026-08-31 15:04 ` [RFC v1 02/19] uprobes: Correctly reject anonymous VMAs for breakpoint installation Andi Kleen
2026-08-31 18:29 ` sashiko-bot
2026-08-31 15:04 ` [RFC v1 03/19] uprobes: Print warning for missing breakpoint install Andi Kleen
2026-08-31 18:42 ` sashiko-bot
2026-08-31 15:04 ` [RFC v1 04/19] ptwrite uprobes: Add infrastructure for ptwrite uprobes Andi Kleen
2026-08-31 18:55 ` sashiko-bot
2026-08-31 15:04 ` [RFC v1 05/19] ptwrite uprobes: Add minimal low level support for x86 Andi Kleen
2026-08-31 19:11 ` sashiko-bot
2026-09-02 16:35 ` Lorenzo Stoakes (ARM)
2026-08-31 15:04 ` [RFC v1 06/19] ptwrite uprobes: Add a sample module to exercise interface Andi Kleen
2026-08-31 19:19 ` sashiko-bot
2026-08-31 15:04 ` [RFC v1 07/19] ptwrite uprobes: Add support to tracing infrastructure Andi Kleen
2026-08-31 19:31 ` sashiko-bot
2026-08-31 15:04 ` [RFC v1 08/19] ptwrite uprobes / x86: Add a user fault notifier chain Andi Kleen
2026-08-31 19:38 ` sashiko-bot
2026-08-31 15:04 ` [RFC v1 09/19] ptwrite uprobes: Factor file-backed instruction reads Andi Kleen
2026-08-31 19:45 ` sashiko-bot
2026-08-31 15:04 ` [RFC v1 10/19] ptwrite uprobes: Minimal memory references and fault handling Andi Kleen
2026-08-31 19:59 ` sashiko-bot
2026-08-31 15:04 ` [RFC v1 11/19] ptwrite uprobes: Add multinop support Andi Kleen
2026-08-31 20:09 ` sashiko-bot
2026-08-31 15:04 ` [RFC v1 12/19] ptwrite uprobes: Add pacing to the probes Andi Kleen
2026-08-31 20:19 ` sashiko-bot
2026-08-31 15:04 ` [RFC v1 13/19] ptwrite uprobes: Support instruction puning Andi Kleen
2026-08-31 20:39 ` sashiko-bot
2026-08-31 15:04 ` [RFC v1 14/19] ptwrite uprobes: Use atomic patching for multinop sites Andi Kleen
2026-08-31 21:08 ` sashiko-bot
2026-08-31 15:04 ` [RFC v1 15/19] ptwrite uprobes: Add a tutorial and overview documentation Andi Kleen
2026-08-31 21:10 ` sashiko-bot [this message]
2026-08-31 15:04 ` [RFC v1 16/19] ptwrite uprobes / perf tools pt: Improve FUP error handling for ptwrite Andi Kleen
2026-08-31 21:19 ` sashiko-bot
2026-08-31 15:04 ` [RFC v1 17/19] ptwrite uprobes / perf tools probe: Add support of ptwrite probes Andi Kleen
2026-08-31 21:32 ` sashiko-bot
2026-08-31 15:04 ` [RFC v1 18/19] ptwrite uprobes / perf tools script: Add ptwrite uprobes decoder Andi Kleen
2026-08-31 21:39 ` sashiko-bot
2026-08-31 15:04 ` [RFC v1 19/19] ptwrite uprobes: Add self tests Andi Kleen
2026-08-31 21:47 ` sashiko-bot
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=20260831211056.E65A51F000E9@smtp.kernel.org \
--to=sashiko-bot@kernel.org \
--cc=ak@kernel.org \
--cc=linux-perf-users@vger.kernel.org \
--cc=sashiko-reviews@lists.linux.dev \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox