linux/drivers/gpu/drm/amd/display/amdgpu_dm
Alan Liu 7117007eda drm/amdgpu: Move the mutex_lock to protect the return status of securedisplay command buffer
[Why]
Before we call psp_securedisplay_invoke(), we call
psp_prep_securedisplay_cmd_buf() to prepare and initialize the command
buffer.

However, we didn't use the mutex_lock to protect the status of command
buffer. So when multiple threads are using the command buffer, after
thread A return from psp_securedisplay_invoke() and the command buffer
status is set to SUCCESS, another thread B may call
psp_prep_securedisplay_cmd_buf() and initialize the status to FAILURE
again, and cause Thread A to get a failure return status.

[How]
Move the mutex_lock out of psp_securedisplay_invoke() to its caller to
cover psp_prep_securedisplay_cmd_buf() and the code checking the return
status of command buffer.

Signed-off-by: Alan Liu <HaoPing.Liu@amd.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
2022-10-27 15:12:08 -04:00
..
amdgpu_dm.c drm/amd/display: Filter Invalid 420 Modes for HDMI TMDS 2022-10-27 14:46:29 -04:00
amdgpu_dm.h drm/amd/display: Don't adjust VRR unnecessarily 2022-09-13 14:33:00 -04:00
amdgpu_dm_color.c Documentation/amdgpu_dm: Add DM color correction documentation 2022-08-16 18:14:32 -04:00
amdgpu_dm_crc.c drm/amdgpu: Move the mutex_lock to protect the return status of securedisplay command buffer 2022-10-27 15:12:08 -04:00
amdgpu_dm_crc.h drm/amd/display: Drop struct crc_region and reuse struct rect 2022-10-27 14:42:40 -04:00
amdgpu_dm_crtc.c drm/amd/display: Implement secure display on DCN21 2022-10-27 14:42:32 -04:00
amdgpu_dm_crtc.h drm/amd/display: Create a file dedicated for CRTC 2022-07-25 09:31:01 -04:00
amdgpu_dm_debugfs.c drm/amd/display: Drop struct crc_region and reuse struct rect 2022-10-27 14:42:40 -04:00
amdgpu_dm_debugfs.h drm/amd/display: Move connector debugfs to drm 2022-05-23 11:27:44 +03:00
amdgpu_dm_hdcp.c drm/amd/display: Fix HDCP 1.X 1A-04 failing 2022-10-27 14:43:39 -04:00
amdgpu_dm_hdcp.h
amdgpu_dm_helpers.c drm/amd/display: Refactor edp panel power sequencer(PPS) codes 2022-09-19 15:13:08 -04:00
amdgpu_dm_irq.c drm/amd/display: do not disable an invalid irq source in hdp finish 2022-05-10 17:53:12 -04:00
amdgpu_dm_irq.h
amdgpu_dm_irq_params.h drm/amd/display: Implement secure display on DCN21 2022-10-27 14:42:32 -04:00
amdgpu_dm_mst_types.c Merge tag 'amd-drm-next-6.1-2022-09-08' of https://gitlab.freedesktop.org/agd5f/linux into drm-next 2022-09-12 19:17:41 +10:00
amdgpu_dm_mst_types.h drm/amd/display: add mst port output bw check 2022-06-21 18:17:23 -04:00
amdgpu_dm_plane.c drm/amd/display: Revert logic for plane modifiers 2022-10-24 14:38:47 -04:00
amdgpu_dm_plane.h drm/amd/display: Include missing header 2022-08-22 16:47:09 -04:00
amdgpu_dm_pp_smu.c
amdgpu_dm_psr.c drm/amd/display: explicitly disable psr_feature_enable appropriately 2022-10-10 17:09:30 -04:00
amdgpu_dm_psr.h
amdgpu_dm_services.c
amdgpu_dm_trace.h drm/amd/display: Add events log to trace OPTC lock and unlock 2022-10-24 14:36:06 -04:00
dc_fpu.c
dc_fpu.h
Makefile drm/amd/display: Create a file dedicated for CRTC 2022-07-25 09:31:01 -04:00