From: Leo Yan <leo.yan@linaro.org>
To: Mathieu Poirier <mathieu.poirier@linaro.org>,
Suzuki K Poulose <suzuki.poulose@arm.com>,
Mike Leach <mike.leach@linaro.org>,
Alexander Shishkin <alexander.shishkin@linux.intel.com>,
coresight@lists.linaro.org, linux-arm-kernel@lists.infradead.org,
linux-kernel@vger.kernel.org
Cc: Leo Yan <leo.yan@linaro.org>
Subject: [PATCH v2 0/4] coresight: etm: Correct PID tracing for non-root namespace
Date: Mon, 13 Dec 2021 20:13:19 +0800 [thread overview]
Message-ID: <20211213121323.1887180-1-leo.yan@linaro.org> (raw)
If a profiling program runs in a non-root PID namespace, if CoreSight
driver enables PID tracing (with contextID), it can lead to mismatching
issue between the context ID traced in hardware (from the root
namespace) and the PIDs gathered by profiling tool (e.g. perf) in its
non-root namespace.
CoreSight driver has tried to address this issue for the contextID
related interfaces under sysfs, but it misses to prevent user to set
VMID (virtual contextID) for kernel runs in EL2 with VHE; furthermore,
it misses to handle the case when the profiling tool runs in the
non-root PID namespace.
For this reason, this patch series is to correct contextID tracing for
non-root namespace. After applied this patchset, patch 02 doesn't
permit users to access virtual contextID via sysfs nodes in the non-root
PID namespace, patch 03 and 04 stop to trace PID packet for non-root PID
namespace.
This patch is dependent on the patchset "pid: Introduce helper
task_is_in_root_ns()" [1].
[1] https://lore.kernel.org/lkml/20211208083320.472503-1-leo.yan@linaro.org/
Leo Yan (4):
coresight: etm4x: Add lock for reading virtual context ID comparator
coresight: etm4x: Don't use virtual contextID for non-root PID
namespace
coresight: etm4x: Don't trace PID for non-root PID namespace
coresight: etm3x: Don't trace PID for non-root PID namespace
.../coresight/coresight-etm3x-core.c | 4 +++
.../coresight/coresight-etm4x-core.c | 10 +++++--
.../coresight/coresight-etm4x-sysfs.c | 30 +++++++++++++++++++
3 files changed, 42 insertions(+), 2 deletions(-)
--
2.25.1
next reply other threads:[~2021-12-13 12:13 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-12-13 12:13 Leo Yan [this message]
2021-12-13 12:13 ` [PATCH v2 1/4] coresight: etm4x: Add lock for reading virtual context ID comparator Leo Yan
2021-12-13 12:13 ` [PATCH v2 2/4] coresight: etm4x: Don't use virtual contextID for non-root PID namespace Leo Yan
2021-12-13 19:47 ` kernel test robot
2021-12-13 12:13 ` [PATCH v2 3/4] coresight: etm4x: Don't trace PID " Leo Yan
2021-12-13 21:45 ` kernel test robot
2021-12-13 12:13 ` [PATCH v2 4/4] coresight: etm3x: " Leo Yan
2021-12-13 19:16 ` kernel test robot
2021-12-14 4:46 ` Leo Yan
2021-12-16 8:54 ` Rong Chen
2021-12-14 10:59 ` [PATCH v2 0/4] coresight: etm: Correct PID tracing for non-root namespace Suzuki K Poulose
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=20211213121323.1887180-1-leo.yan@linaro.org \
--to=leo.yan@linaro.org \
--cc=alexander.shishkin@linux.intel.com \
--cc=coresight@lists.linaro.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mathieu.poirier@linaro.org \
--cc=mike.leach@linaro.org \
--cc=suzuki.poulose@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).