Check return value for drmm_mutex_init as it can fail and return on failure. Signed-off-by: Arun R Murthy <arun.r.murthy@xxxxxxxxx> --- drivers/gpu/drm/xe/display/xe_display.c | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/drivers/gpu/drm/xe/display/xe_display.c b/drivers/gpu/drm/xe/display/xe_display.c index e4db069f0db3..ac2e58d1fa82 100644 --- a/drivers/gpu/drm/xe/display/xe_display.c +++ b/drivers/gpu/drm/xe/display/xe_display.c @@ -107,12 +107,14 @@ int xe_display_create(struct xe_device *xe) xe->display.hotplug.dp_wq = alloc_ordered_workqueue("xe-dp", 0); - drmm_mutex_init(&xe->drm, &xe->sb_lock); - drmm_mutex_init(&xe->drm, &xe->display.backlight.lock); - drmm_mutex_init(&xe->drm, &xe->display.audio.mutex); - drmm_mutex_init(&xe->drm, &xe->display.wm.wm_mutex); - drmm_mutex_init(&xe->drm, &xe->display.pps.mutex); - drmm_mutex_init(&xe->drm, &xe->display.hdcp.hdcp_mutex); + if ((drmm_mutex_init(&xe->drm, &xe->sb_lock)) || + (drmm_mutex_init(&xe->drm, &xe->display.backlight.lock)) || + (drmm_mutex_init(&xe->drm, &xe->display.audio.mutex)) || + (drmm_mutex_init(&xe->drm, &xe->display.wm.wm_mutex)) || + (drmm_mutex_init(&xe->drm, &xe->display.pps.mutex)) || + (drmm_mutex_init(&xe->drm, &xe->display.hdcp.hdcp_mutex))) + return -ENOMEM; + xe->enabled_irq_mask = ~0; err = drmm_add_action_or_reset(&xe->drm, display_destroy, NULL); -- 2.25.1