From: Leo Yan <leo.yan@arm.com>
To: Suzuki K Poulose <suzuki.poulose@arm.com>
Cc: Mike Leach <mike.leach@arm.com>,
James Clark <james.clark@linaro.org>,
Yeoreum Yun <yeoreum.yun@arm.com>,
Mark Rutland <mark.rutland@arm.com>,
Will Deacon <will@kernel.org>, Yabin Cui <yabinc@google.com>,
Keita Morisaki <keyz@google.com>,
Yuanfang Zhang <quic_yuanfang@quicinc.com>,
Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
Alexander Shishkin <alexander.shishkin@linux.intel.com>,
coresight@lists.linaro.org, linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH v6 01/19] coresight: sysfs: Validate CPU online status for per-CPU sources
Date: Mon, 16 Mar 2026 14:02:42 +0000 [thread overview]
Message-ID: <20260316140242.GD8048@e132581.arm.com> (raw)
In-Reply-To: <13fbfe69-2d7f-49fa-a191-98aea3fb1f21@arm.com>
On Fri, Mar 13, 2026 at 11:03:02AM +0000, Suzuki K Poulose wrote:
> On 05/03/2026 10:17, Leo Yan wrote:
> > The current SysFS flow first enables the links and sink, then rolls back
> > to disable them if the source fails to enable. This failure can occur if
> > the associated CPU is offline, which causes the SMP call to fail.
> >
> > Populate CPU ID into the coresight_device structure, for components that
> > are not CPU bound, set this field to -1.
> >
> > Validate whether the associated CPU is online for a per-CPU tracer. If
> > the CPU is offline, return -ENODEV and bail out.
> >
> > Reviewed-by: Yeoreum Yun <yeoreum.yun@arm.com>
> > Reviewed-by: Mike Leach <mike.leach@linaro.org>
> > Tested-by: James Clark <james.clark@linaro.org>
> > Signed-off-by: Leo Yan <leo.yan@arm.com>
>
> While this works, how about we make it an explicit buy in from the driver
> for CPU bound ?
>
> e.g., add a flag in the coresight_desc.flags = CORESIGHT_DESC_CPU_BOUND
>
> and then desc.cpu describes the associated CPU. Otherwise, defaults to -1.
> That way you could restrict the changes to only those that need the
> CPU (ETMx and CTIs ?) Also makes any new driver safe.
Instead of adding a flag, I'd use a helper to check existed flags:
static inline bool coresight_is_cpu_bound(struct coresight_device *csdev)
{
if (!csdev)
return false;
if (coresight_is_percpu_source(csdev))
return true;
if (csdev->type == CORESIGHT_DEV_TYPE_HELPER &&
csdev->subtype.helper_subtype == CORESIGHT_DEV_SUBTYPE_HELPER_ECT_CTI)
return true;
return false;
}
Only CPU bound device will assign CPU ID, otherwise will set -1.
Thanks,
Leo
next prev parent reply other threads:[~2026-03-16 14:02 UTC|newest]
Thread overview: 36+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-03-05 10:17 [PATCH v6 00/19] CoreSight: Refactor power management for CoreSight path Leo Yan
2026-03-05 10:17 ` [PATCH v6 01/19] coresight: sysfs: Validate CPU online status for per-CPU sources Leo Yan
2026-03-13 11:03 ` Suzuki K Poulose
2026-03-16 14:02 ` Leo Yan [this message]
2026-03-16 14:28 ` Suzuki K Poulose
2026-03-16 14:40 ` Leo Yan
2026-03-05 10:17 ` [PATCH v6 02/19] coresight: Set per-CPU source pointer Leo Yan
2026-03-13 11:18 ` Suzuki K Poulose
2026-03-16 14:38 ` Leo Yan
2026-03-16 17:49 ` Suzuki K Poulose
2026-03-16 19:30 ` Leo Yan
2026-03-13 11:22 ` Suzuki K Poulose
2026-03-16 17:41 ` Leo Yan
2026-03-05 10:17 ` [PATCH v6 03/19] coresight: Register CPU PM notifier in core layer Leo Yan
2026-03-05 10:17 ` [PATCH v6 04/19] coresight: etm4x: Hook CPU PM callbacks Leo Yan
2026-03-05 10:17 ` [PATCH v6 05/19] coresight: Add callback to determine if PM is needed Leo Yan
2026-03-13 11:26 ` Suzuki K Poulose
2026-03-17 11:22 ` Leo Yan
2026-03-05 10:17 ` [PATCH v6 06/19] coresight: etm4x: Remove redundant condition checks in save and restore Leo Yan
2026-03-05 10:17 ` [PATCH v6 07/19] coresight: syscfg: Use spinlock to protect active variables Leo Yan
2026-03-05 10:17 ` [PATCH v6 08/19] coresight: Introduce coresight_enable_source() helper Leo Yan
2026-03-13 11:31 ` Suzuki K Poulose
2026-03-05 10:17 ` [PATCH v6 09/19] coresight: Save active path for system tracers Leo Yan
2026-03-05 10:17 ` [PATCH v6 10/19] coresight: etm4x: Set active path on target CPU Leo Yan
2026-03-05 10:17 ` [PATCH v6 11/19] coresight: etm3x: " Leo Yan
2026-03-05 10:17 ` [PATCH v6 12/19] coresight: sysfs: Use source's path pointer for path control Leo Yan
2026-03-05 10:17 ` [PATCH v6 13/19] coresight: Add 'in_idle' argument to path Leo Yan
2026-03-13 14:37 ` Suzuki K Poulose
2026-03-05 10:17 ` [PATCH v6 14/19] coresight: Control path during CPU idle Leo Yan
2026-03-05 10:17 ` [PATCH v6 15/19] coresight: Add PM callbacks for sink device Leo Yan
2026-03-05 10:17 ` [PATCH v6 16/19] coresight: trbe: Save and restore state across CPU low power state Leo Yan
2026-03-05 10:17 ` [PATCH v6 17/19] coresight: sysfs: Increment refcount only for system tracers Leo Yan
2026-03-05 10:17 ` [PATCH v6 18/19] coresight: Take hotplug lock in enable_source_store() for Sysfs mode Leo Yan
2026-03-05 10:17 ` [PATCH v6 19/19] coresight: Move CPU hotplug callbacks to core layer Leo Yan
2026-03-06 9:53 ` [PATCH v6 00/19] CoreSight: Refactor power management for CoreSight path Yeoreum Yun
2026-03-16 16:08 ` James Clark
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=20260316140242.GD8048@e132581.arm.com \
--to=leo.yan@arm.com \
--cc=alexander.shishkin@linux.intel.com \
--cc=coresight@lists.linaro.org \
--cc=gregkh@linuxfoundation.org \
--cc=james.clark@linaro.org \
--cc=keyz@google.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=mark.rutland@arm.com \
--cc=mike.leach@arm.com \
--cc=quic_yuanfang@quicinc.com \
--cc=suzuki.poulose@arm.com \
--cc=will@kernel.org \
--cc=yabinc@google.com \
--cc=yeoreum.yun@arm.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.