drm/msm/gpu: Fix potential double-free
authorRob Clark <robdclark@chromium.org>
Tue, 10 Jan 2023 21:28:59 +0000 (13:28 -0800)
committerRob Clark <robdclark@chromium.org>
Wed, 11 Jan 2023 17:00:14 +0000 (09:00 -0800)
commita66f1efcf748febea7758c4c3c8b5bc5294949ef
tree8cfa9a3f9d163b01f92cc2cc398f14e1d957e5ce
parente752e5454e6417da3f40ec1306a041ea96c56423
drm/msm/gpu: Fix potential double-free

If userspace was calling the MSM_SET_PARAM ioctl on multiple threads to
set the COMM or CMDLINE param, it could trigger a race causing the
previous value to be kfree'd multiple times.  Fix this by serializing on
the gpu lock.

Signed-off-by: Rob Clark <robdclark@chromium.org>
Fixes: d4726d770068 ("drm/msm: Add a way to override processes comm/cmdline")
Patchwork: https://patchwork.freedesktop.org/patch/517778/
Link: https://lore.kernel.org/r/20230110212903.1925878-1-robdclark@gmail.com
drivers/gpu/drm/msm/adreno/adreno_gpu.c
drivers/gpu/drm/msm/msm_gpu.c
drivers/gpu/drm/msm/msm_gpu.h