All of lore.kernel.org
 help / color / mirror / Atom feed
From: Arnaldo Carvalho de Melo <acme@kernel.org>
To: Tengda Wu <wutengda@huaweicloud.com>
Cc: Namhyung Kim <namhyung@kernel.org>,
	james.clark@linaro.org, xueshuai@linux.alibaba.com,
	Peter Zijlstra <peterz@infradead.org>,
	leo.yan@linux.dev, Li Huafei <lihuafei1@huawei.com>,
	Ian Rogers <irogers@google.com>,
	Kim Phillips <kim.phillips@arm.com>,
	Mark Rutland <mark.rutland@arm.com>,
	Ingo Molnar <mingo@redhat.com>, Bill Wendling <morbo@google.com>,
	Nick Desaulniers <nick.desaulniers+lkml@gmail.com>,
	Alexander Shishkin <alexander.shishkin@linux.intel.com>,
	Adrian Hunter <adrian.hunter@intel.com>,
	Zecheng Li <zli94@ncsu.edu>,
	linux-perf-users@vger.kernel.org, linux-kernel@vger.kernel.org,
	llvm@lists.linux.dev
Subject: Re: [PATCH v8 00/15] perf annotate arm64: Support instruction tracking for data type profiling
Date: Fri, 23 Oct 2026 18:10:54 -0300	[thread overview]
Message-ID: <atvNXkeWyJCGMrbF@phoenix2> (raw)
In-Reply-To: <18de9e8f-3709-4bc9-b11b-3813e1ba98b7@huaweicloud.com>

On Wed, Oct 21, 2026 at 10:25:40AM +0800, Tengda Wu wrote:
> Hi,
> 
> On 2026/10/20 21:44, Tengda Wu wrote:
> > This series adds arm64 support to perf's data type profiling by
> > implementing instruction tracking for the arm64 architecture.
> > 
> > The main changes since v7 include:
> > v7: https://lore.kernel.org/all/cover.1791629326.git.wutengda@huaweicloud.com/
> > 
> >   * Patch 02: Minor optimizations to update_insn_state_arm64 to facilitate
> >     future extension, including:
> >     - Encapsulating call instruction handling into update_call_insn_state()
> >     - Encapsulating invalidate dst regs handling into invalidate_unhandled_insn_regs()
> >     - Renaming is_readonly_branch_or_cmp() to is_readonly_insn()
> >     No functional changes.
> > 
> >   * Fix issues raised by Sashiko:
> >     - Patch 06: Complete the status register invalidation logic for
> >       exclusive stores.
> >     - Patch 13 & 15: Complete the lifetime invalidation logic for adrp
> >       and mrs instructions.
> >     Regarding the status register invalidation issue for instructions
> >     such as cas/swp as well, we plan to support this incrementally
> >     after the relevant instructions are refined; this patch temporarily
> >     ignores and does not handle it (a TODO marker has already been
> >     reserved in patch 02)
> > 
> > Patch organization
> > ==================
> > 
> >   Patches 1-3:   Shared infrastructure. Extract invalidate_reg_state() as
> >                  a common helper, add the arch_get_reg_offset() helper for
> >                  computing operand base offsets, and wire up the arm64
> >                  entry points (arch_supports_insn_tracking(),
> >                  init_type_state(), and update_insn_state_arm64()).
> > 
> >   Patches 4-6:   Core instruction tracking for arm64: function return
> >                  types after calls, load instructions (ldr/ldp and their
> >                  addressing modes), and store instructions (str/stp).
> > 
> >   Patches 7-9:   Shared data structure improvements and an x86 fix.
> >                  Expand type_state_reg.imm_value to u64 so 64-bit
> >                  addresses can be tracked, preserve imm_value for stack
> >                  variables, and delete stale stack state on store of an
> >                  untracked register on x86.
> > 
> >   Patches 10-15: Remaining arm64 patterns: stack variable tracking,
> >                  'mov' (register and immediate forms), 'add' member
> >                  address calculation, 'adrp' global variable tracking,
> >                  per-cpu variable access, and 'mrs sp_el0' to resolve the
> >                  'current' pointer.
> > 
> 
> Just a quick note that this version of the patch series has addressed or
> clarified all the Sashiko review comments. I would appreciate it if you
> could take a look when you get a chance.

Merged now, test built and pushed to perf-tools-next/perf-tools-next for
further build testing with linux-next, early next week I intend to push
it out to Linus for 7.4.

- Arnaldo

      reply	other threads:[~2026-10-23 21:10 UTC|newest]

Thread overview: 35+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-10-20 13:44 [PATCH v8 00/15] perf annotate arm64: Support instruction tracking for data type profiling Tengda Wu
2026-10-20 13:44 ` [PATCH v8 01/15] perf annotate-data: Extract invalidate_reg_state() as a common helper Tengda Wu
2026-10-20 13:57   ` sashiko-bot
2026-10-20 13:44 ` [PATCH v8 02/15] perf annotate-arm64: Enable instruction tracking support Tengda Wu
2026-10-20 14:05   ` sashiko-bot
2026-10-20 13:44 ` [PATCH v8 03/15] perf annotate-data: Add arch_get_reg_offset helper Tengda Wu
2026-10-20 14:13   ` sashiko-bot
2026-10-20 13:45 ` [PATCH v8 04/15] perf annotate-arm64: Track return type after call instructions Tengda Wu
2026-10-20 14:15   ` sashiko-bot
2026-10-20 13:45 ` [PATCH v8 05/15] perf annotate-arm64: Support load instruction tracking Tengda Wu
2026-10-20 14:36   ` sashiko-bot
2026-10-21  1:58     ` Tengda Wu
2026-10-20 13:45 ` [PATCH v8 06/15] perf annotate-arm64: Support store " Tengda Wu
2026-10-20 14:39   ` sashiko-bot
2026-10-20 13:45 ` [PATCH v8 07/15] perf annotate-data: Expand type_state_reg imm_value to u64 Tengda Wu
2026-10-20 14:43   ` sashiko-bot
2026-10-20 13:45 ` [PATCH v8 08/15] perf annotate-data: Track imm_value for stack variables Tengda Wu
2026-10-20 14:46   ` sashiko-bot
2026-10-20 13:45 ` [PATCH v8 09/15] perf annotate-x86: Delete stale stack state on store of untracked register Tengda Wu
2026-10-20 14:50   ` sashiko-bot
2026-10-20 13:45 ` [PATCH v8 10/15] perf annotate-arm64: Support stack variable tracking Tengda Wu
2026-10-20 14:59   ` sashiko-bot
2026-10-20 13:45 ` [PATCH v8 11/15] perf annotate-arm64: Support 'mov' instruction tracking Tengda Wu
2026-10-20 15:01   ` sashiko-bot
2026-10-20 13:45 ` [PATCH v8 12/15] perf annotate-arm64: Support 'add' " Tengda Wu
2026-10-20 15:05   ` sashiko-bot
2026-10-20 13:45 ` [PATCH v8 13/15] perf annotate-arm64: Support 'adrp' instruction to track global variables Tengda Wu
2026-10-20 15:15   ` sashiko-bot
2026-10-21  2:07     ` Tengda Wu
2026-10-20 13:45 ` [PATCH v8 14/15] perf annotate-arm64: Support per-cpu variable access tracking Tengda Wu
2026-10-20 15:24   ` sashiko-bot
2026-10-20 13:45 ` [PATCH v8 15/15] perf annotate-arm64: Support 'mrs' instruction to track 'current' pointer Tengda Wu
2026-10-20 15:30   ` sashiko-bot
2026-10-21  2:25 ` [PATCH v8 00/15] perf annotate arm64: Support instruction tracking for data type profiling Tengda Wu
2026-10-23 21:10   ` Arnaldo Carvalho de Melo [this message]

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=atvNXkeWyJCGMrbF@phoenix2 \
    --to=acme@kernel.org \
    --cc=adrian.hunter@intel.com \
    --cc=alexander.shishkin@linux.intel.com \
    --cc=irogers@google.com \
    --cc=james.clark@linaro.org \
    --cc=kim.phillips@arm.com \
    --cc=leo.yan@linux.dev \
    --cc=lihuafei1@huawei.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-perf-users@vger.kernel.org \
    --cc=llvm@lists.linux.dev \
    --cc=mark.rutland@arm.com \
    --cc=mingo@redhat.com \
    --cc=morbo@google.com \
    --cc=namhyung@kernel.org \
    --cc=nick.desaulniers+lkml@gmail.com \
    --cc=peterz@infradead.org \
    --cc=wutengda@huaweicloud.com \
    --cc=xueshuai@linux.alibaba.com \
    --cc=zli94@ncsu.edu \
    /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.