On 20/06/2019 14:45, Sai Prakash Ranjan wrote:
Currently the coresight etm and cpu-debug drivers
assume the affinity to CPU0 returned by coresight
platform and continue the probe in case of missing
CPU phandle. This is not true and leads to crash
in some cases, so abort the probe in case of missing
CPU phandle.
Signed-off-by: Sai Prakash Ranjan <saiprakash.ranjan@xxxxxxxxxxxxxx>
---
 drivers/hwtracing/coresight/coresight-cpu-debug.c | 3 +++
 drivers/hwtracing/coresight/coresight-etm3x.c | 3 +++
 drivers/hwtracing/coresight/coresight-etm4x.c | 3 +++
 3 files changed, 9 insertions(+)
diff --git a/drivers/hwtracing/coresight/coresight-cpu-debug.c b/drivers/hwtracing/coresight/coresight-cpu-debug.c
index 07a1367c733f..43f32fa71ff9 100644
--- a/drivers/hwtracing/coresight/coresight-cpu-debug.c
+++ b/drivers/hwtracing/coresight/coresight-cpu-debug.c
@@ -579,6 +579,9 @@ static int debug_probe(struct amba_device *adev, const struct amba_id *id)
ÂÂÂÂÂÂÂÂÂ return -ENOMEM;
ÂÂÂÂÂ drvdata->cpu = coresight_get_cpu(dev);
+ÂÂÂ if (drvdata->cpu == -ENODEV)
+ÂÂÂÂÂÂÂ return -ENODEV;
if (drvdata->cpu < 0)
ÂÂÂÂreturn drvdata->cpu;
Same everywhere below ?
Also, I would like to hear Mathieu's thoughts on this change. If he's OK
with it:
Reviewed-by: Suzuki K Poulose <suzuki.poulose@xxxxxxx> with the change above.