coresight: cpu-debug: Replace mutex with mutex_trylock on panic notifier
authorGuilherme G. Piccoli <gpiccoli@igalia.com>
Wed, 27 Apr 2022 22:49:03 +0000 (19:49 -0300)
committerSuzuki K Poulose <suzuki.poulose@arm.com>
Mon, 9 May 2022 15:03:24 +0000 (16:03 +0100)
commit1adff542d67a2ed1120955cb219bfff8a9c53f59
tree1adc6c1f0abc0f156915f42b108c9cb6d84a5a5d
parent8c1d3f79d9ca48e406b78e90e94cf09a8c076bf2
coresight: cpu-debug: Replace mutex with mutex_trylock on panic notifier

The panic notifier infrastructure executes registered callbacks when
a panic event happens - such callbacks are executed in atomic context,
with interrupts and preemption disabled in the running CPU and all other
CPUs disabled. That said, mutexes in such context are not a good idea.

This patch replaces a regular mutex with a mutex_trylock safer approach;
given the nature of the mutex used in the driver, it should be pretty
uncommon being unable to acquire such mutex in the panic path, hence
no functional change should be observed (and if it is, that would be
likely a deadlock with the regular mutex).

Fixes: 2227b7c74634 ("coresight: add support for CPU debug module")
Cc: Leo Yan <leo.yan@linaro.org>
Cc: Mathieu Poirier <mathieu.poirier@linaro.org>
Cc: Mike Leach <mike.leach@linaro.org>
Cc: Suzuki K Poulose <suzuki.poulose@arm.com>
Signed-off-by: Guilherme G. Piccoli <gpiccoli@igalia.com>
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/20220427224924.592546-10-gpiccoli@igalia.com
drivers/hwtracing/coresight/coresight-cpu-debug.c