summaryrefslogtreecommitdiff
path: root/drivers/gpu
diff options
context:
space:
mode:
authorDmitry Baryshkov <dmitry.baryshkov@linaro.org>2024-12-06 11:43:11 +0200
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2025-02-17 10:04:47 +0100
commit1cd3e56a07acd34cc389d490a259ad2a1dd6f282 (patch)
tree492168370e7450e0f2b7be03bf19215bb716e1cc /drivers/gpu
parent6b57c63f5bf64ffd8d54ba24c027d59f85125306 (diff)
downloadlinux-1cd3e56a07acd34cc389d490a259ad2a1dd6f282.tar.gz
linux-1cd3e56a07acd34cc389d490a259ad2a1dd6f282.tar.bz2
linux-1cd3e56a07acd34cc389d490a259ad2a1dd6f282.zip
drm/radeon: use eld_mutex to protect access to connector->eld
[ Upstream commit b54c14f82428c8a602392d4cae1958a71a578132 ] Reading access to connector->eld can happen at the same time the drm_edid_to_eld() updates the data. Take the newly added eld_mutex in order to protect connector->eld from concurrent access. Reviewed-by: Maxime Ripard <mripard@kernel.org> Link: https://patchwork.freedesktop.org/patch/msgid/20241206-drm-connector-eld-mutex-v2-8-c9bce1ee8bea@linaro.org Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> Signed-off-by: Sasha Levin <sashal@kernel.org>
Diffstat (limited to 'drivers/gpu')
-rw-r--r--drivers/gpu/drm/radeon/radeon_audio.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/gpu/drm/radeon/radeon_audio.c b/drivers/gpu/drm/radeon/radeon_audio.c
index 5b69cc8011b4..8d64ba18572e 100644
--- a/drivers/gpu/drm/radeon/radeon_audio.c
+++ b/drivers/gpu/drm/radeon/radeon_audio.c
@@ -775,8 +775,10 @@ static int radeon_audio_component_get_eld(struct device *kdev, int port,
if (!dig->pin || dig->pin->id != port)
continue;
*enabled = true;
+ mutex_lock(&connector->eld_mutex);
ret = drm_eld_size(connector->eld);
memcpy(buf, connector->eld, min(max_bytes, ret));
+ mutex_unlock(&connector->eld_mutex);
break;
}