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 |
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 > >
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,