All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Liang, Kan" <kan.liang@linux.intel.com>
To: Peter Zijlstra <peterz@infradead.org>
Cc: mingo@redhat.com, acme@kernel.org, namhyung@kernel.org,
	irogers@google.com, linux-kernel@vger.kernel.org,
	Luo Gengkun <luogengkun@huaweicloud.com>
Subject: Re: [PATCH 1/2] perf/x86/intel: Only check the group flag for X86 leader
Date: Thu, 24 Apr 2025 09:50:09 -0400	[thread overview]
Message-ID: <27d1c070-9644-4088-a0ee-e005d1542874@linux.intel.com> (raw)
In-Reply-To: <20250424094050.GE19534@noisy.programming.kicks-ass.net>



On 2025-04-24 5:40 a.m., Peter Zijlstra wrote:
> On Wed, Apr 23, 2025 at 03:10:14PM -0700, kan.liang@linux.intel.com wrote:
>> From: Kan Liang <kan.liang@linux.intel.com>
>>
>> A warning in intel_pmu_lbr_counters_reorder() may be triggered by below
>> perf command.
>>
>> perf record -e "{cpu-clock,cycles/call-graph="lbr"/}" -- sleep 1
>>
>> It's because the group is mistakenly treated as a branch counter group.
>>
>> The hw.flags of the leader are used to determine whether a group is a
>> branch counters group. However, the hw.flags is only available for a
>> hardware event. The field to store the flags is a union type. For a
>> software event, it's a hrtimer. The corresponding bit may be set if the
>> leader is a software event.
>>
>> For a branch counter group and other groups that have a group flag
>> (e.g., topdown, PEBS counters snapshotting, and ACR), the leader must
>> be a X86 event. Check the X86 event before checking the flag.
>>
>> There may be an alternative way to fix the issue by moving the hw.flags
>> out of the union type. It should work for now. But it's still possible
>> that the flags will be used by other types of events later. As long as
>> that type of event is used as a leader, a similar issue will be
>> triggered. So the alternative way is dropped.
>>
>> Reported-by: Luo Gengkun <luogengkun@huaweicloud.com>
>> Closes: https://lore.kernel.org/lkml/20250412091423.1839809-1-luogengkun@huaweicloud.com/
>> Signed-off-by: Kan Liang <kan.liang@linux.intel.com>
> 
> Can I get a Fixes tag for this such that I can stick it in urgent?
>

I have split the patch series and sent a V2.
https://lore.kernel.org/lkml/20250424134718.311934-1-kan.liang@linux.intel.com/

There is a fix for the non-precise events counters-snapshotting, which
is buried in the LKML.
https://lore.kernel.org/lkml/20250204210514.4089680-1-kan.liang@linux.intel.com/
I've also added it into the above V2 with a fixes tag.
Please take a look. If it looks good for you, please stick it in urgent
as well.

Thanks,
Kan

  reply	other threads:[~2025-04-24 13:50 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-04-23 22:10 [PATCH 1/2] perf/x86/intel: Only check the group flag for X86 leader kan.liang
2025-04-23 22:10 ` [PATCH 2/2] perf/x86: Optimize the is_x86_event kan.liang
2025-04-24  9:40 ` [PATCH 1/2] perf/x86/intel: Only check the group flag for X86 leader Peter Zijlstra
2025-04-24 13:50   ` Liang, Kan [this message]
2025-04-24 13:57     ` Peter Zijlstra

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=27d1c070-9644-4088-a0ee-e005d1542874@linux.intel.com \
    --to=kan.liang@linux.intel.com \
    --cc=acme@kernel.org \
    --cc=irogers@google.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=luogengkun@huaweicloud.com \
    --cc=mingo@redhat.com \
    --cc=namhyung@kernel.org \
    --cc=peterz@infradead.org \
    /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.