summaryrefslogtreecommitdiffstats
path: root/drivers/hwtracing
diff options
context:
space:
mode:
authorLeo Yan <leo.yan@linaro.org>2022-02-04 16:24:00 +0100
committerSuzuki K Poulose <suzuki.poulose@arm.com>2022-03-11 11:07:47 +0100
commitbf0ef4f12c6303879c04e05ce43ea37ac56ebfa6 (patch)
tree43f6ef8c385ea335c7fe3fb69b69417026c34878 /drivers/hwtracing
parentcoresight: trbe: Move check for kernel page table isolation from EL0 to probe (diff)
downloadlinux-bf0ef4f12c6303879c04e05ce43ea37ac56ebfa6.tar.xz
linux-bf0ef4f12c6303879c04e05ce43ea37ac56ebfa6.zip
coresight: etm4x: Add lock for reading virtual context ID comparator
Updates to the values and the index are protected via the spinlock. Ensure we use the same lock to read the value safely. Signed-off-by: Leo Yan <leo.yan@linaro.org> Reviewed-by: Suzuki K Poulose <suzuki.poulose@arm.com> Signed-off-by: Suzuki K Poulose <suzuki.poulose@arm.com> Link: https://lore.kernel.org/r/20220204152403.71775-2-leo.yan@linaro.org
Diffstat (limited to 'drivers/hwtracing')
-rw-r--r--drivers/hwtracing/coresight/coresight-etm4x-sysfs.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/hwtracing/coresight/coresight-etm4x-sysfs.c b/drivers/hwtracing/coresight/coresight-etm4x-sysfs.c
index 57e94424a8d6..c376f9e230d3 100644
--- a/drivers/hwtracing/coresight/coresight-etm4x-sysfs.c
+++ b/drivers/hwtracing/coresight/coresight-etm4x-sysfs.c
@@ -2115,7 +2115,9 @@ static ssize_t vmid_val_show(struct device *dev,
struct etmv4_drvdata *drvdata = dev_get_drvdata(dev->parent);
struct etmv4_config *config = &drvdata->config;
+ spin_lock(&drvdata->spinlock);
val = (unsigned long)config->vmid_val[config->vmid_idx];
+ spin_unlock(&drvdata->spinlock);
return scnprintf(buf, PAGE_SIZE, "%#lx\n", val);
}