Re: [PATCH] coresight: trbe: Move check for kernelspace unmapped at EL0 to probe

From: Suzuki K Poulose
Date: Thu Feb 03 2022 - 07:21:17 EST


On 03/02/2022 12:04, Sudeep Holla wrote:
On Thu, Feb 03, 2022 at 11:55:58AM +0530, Anshuman Khandual wrote:


On 2/1/22 5:52 PM, Sudeep Holla wrote:
Currently with the check present in the module initialisation, it shouts
on all the systems irrespective of presence of coresight trace buffer
extensions.

IIUC a system with CONFIG_CORESIGHT_TRBE enabled but without a TRBE DT
i.e "arm,trace-buffer-extension" complains about kernel space unmapping
at EL0 (even though it does not even really have TRBE HW to initialize).


Correct. Basically, this error will be seen on all systems(DT and ACPI) when
the module is compiled. It really doesn't matter if the system supports TRBE.


Similar to Arm SPE perf driver, move the check for kernelspace unmapping
when running at EL0 to the device probe instead of module initialisation.

Makes sense.


Thanks.


Cc: Mathieu Poirier <mathieu.poirier@xxxxxxxxxx>
Cc: Suzuki K Poulose <suzuki.poulose@xxxxxxx>
Cc: Mike Leach <mike.leach@xxxxxxxxxx>
Cc: Leo Yan <leo.yan@xxxxxxxxxx>
Cc: Anshuman Khandual <anshuman.khandual@xxxxxxx>
Cc: coresight@xxxxxxxxxxxxxxxx
Signed-off-by: Sudeep Holla <sudeep.holla@xxxxxxx>
---
drivers/hwtracing/coresight/coresight-trbe.c | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/drivers/hwtracing/coresight/coresight-trbe.c b/drivers/hwtracing/coresight/coresight-trbe.c
index 276862c07e32..3fe2ce1ba5bf 100644
--- a/drivers/hwtracing/coresight/coresight-trbe.c
+++ b/drivers/hwtracing/coresight/coresight-trbe.c
@@ -1423,6 +1423,11 @@ static int arm_trbe_device_probe(struct platform_device *pdev)
struct device *dev = &pdev->dev;
int ret;

Could you please add a similar comment like SPE driver regarding how
the TRBE buffer will be inaccessible, if kernel gets unmapped at EL0
and trace capture will terminate.


Sure I can add that. But if the device probe fails, will you be able to even
start the trace capture, sorry I didn't get what you mean by "trace capture
will terminate". I assume it must be "trace capture is not possible or not
allowed" IIUC.


"Trace capture is not possible with kernel page table isolation"

is good enough.

Thanks for making these changes

Cheers
Suzuki