mbox series

[00/10] drm/connector: add eld_mutex to protect connector->eld

Message ID 20241201-drm-connector-eld-mutex-v1-0-ba56a6545c03@linaro.org (mailing list archive)
Headers show
Series drm/connector: add eld_mutex to protect connector->eld | expand

Message

Dmitry Baryshkov Nov. 30, 2024, 11:55 p.m. UTC
The connector->eld is accessed by the .get_eld() callback. This access
can collide with the drm_edid_to_eld() updating the data at the same
time. Add drm_connector.eld_mutex to protect the data from concurrenct
access.

The individual drivers were just compile tested. I propose to merge the
drm_connector and bridge drivers through drm-misc, allowing other
maintainers either to ack merging through drm-misc or merging the
drm-misc into their tree and then picking up correcponding patch.

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
---
Dmitry Baryshkov (10):
      drm/connector: add mutex to protect ELD from concurrent access
      drm/bridge: anx7625: use eld_mutex to protect access to connector->eld
      drm/bridge: ite-it66121: use eld_mutex to protect access to connector->eld
      drm/amd/display: use eld_mutex to protect access to connector->eld
      drm/exynos: hdmi: use eld_mutex to protect access to connector->eld
      drm/i915/audio: use eld_mutex to protect access to connector->eld
      drm/msm/dp: use eld_mutex to protect access to connector->eld
      drm/radeon: use eld_mutex to protect access to connector->eld
      drm/sti: hdmi: use eld_mutex to protect access to connector->eld
      drm/vc4: hdmi: use eld_mutex to protect access to connector->eld

 drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 2 ++
 drivers/gpu/drm/bridge/analogix/anx7625.c         | 2 ++
 drivers/gpu/drm/bridge/ite-it66121.c              | 2 ++
 drivers/gpu/drm/drm_connector.c                   | 1 +
 drivers/gpu/drm/drm_edid.c                        | 4 ++++
 drivers/gpu/drm/exynos/exynos_hdmi.c              | 2 ++
 drivers/gpu/drm/i915/display/intel_audio.c        | 3 +++
 drivers/gpu/drm/msm/dp/dp_audio.c                 | 2 ++
 drivers/gpu/drm/radeon/radeon_audio.c             | 2 ++
 drivers/gpu/drm/sti/sti_hdmi.c                    | 2 ++
 drivers/gpu/drm/vc4/vc4_hdmi.c                    | 4 ++--
 include/drm/drm_connector.h                       | 5 ++++-
 12 files changed, 28 insertions(+), 3 deletions(-)
---
base-commit: 44cff6c5b0b17a78bc0b30372bcd816cf6dd282a
change-id: 20241201-drm-connector-eld-mutex-8a39a35e9a38

Best regards,

Comments

Dmitry Baryshkov Dec. 1, 2024, 12:27 a.m. UTC | #1
On Sat, Nov 30, 2024 at 11:57:47PM +0000, Patchwork wrote:
> == Series Details ==
> 
> Series: drm/connector: add eld_mutex to protect connector->eld
> URL   : https://patchwork.freedesktop.org/series/141958/
> State : failure
> 
> == Summary ==
> 
> Error: patch https://patchwork.freedesktop.org/api/1.0/series/141958/revisions/1/mbox/ not applied
> Applying: drm/connector: add mutex to protect ELD from concurrent access
> Applying: drm/bridge: anx7625: use eld_mutex to protect access to connector->eld
> Applying: drm/bridge: ite-it66121: use eld_mutex to protect access to connector->eld
> Applying: drm/amd/display: use eld_mutex to protect access to connector->eld
> Applying: drm/exynos: hdmi: use eld_mutex to protect access to connector->eld
> Applying: drm/i915/audio: use eld_mutex to protect access to connector->eld
> Applying: drm/msm/dp: use eld_mutex to protect access to connector->eld
> Using index info to reconstruct a base tree...
> M	drivers/gpu/drm/msm/dp/dp_audio.c

Okay... I see. I branched off drm-misc-next, but drm/msm has changed
since the last merge point. I'll wait for drm-misc-next to be updated in
linux-next before reposting the series.

The rest of the code can still be reviewed normally.

> Falling back to patching base and 3-way merge...
> Auto-merging drivers/gpu/drm/msm/dp/dp_audio.c
> CONFLICT (content): Merge conflict in drivers/gpu/drm/msm/dp/dp_audio.c
> error: Failed to merge in the changes.
> hint: Use 'git am --show-current-patch=diff' to see the failed patch
> Patch failed at 0007 drm/msm/dp: use eld_mutex to protect access to connector->eld
> When you have resolved this problem, run "git am --continue".
> If you prefer to skip this patch, run "git am --skip" instead.
> To restore the original branch and stop patching, run "git am --abort".
> Build failed, no error log produced
> 
>