[PATCH RESEND] drm/xe/display: Add check for alloc_ordered_workqueue()

Haoxiang Li posted 1 patch 7 months, 4 weeks ago
drivers/gpu/drm/xe/display/xe_display.c | 2 ++
1 file changed, 2 insertions(+)
[PATCH RESEND] drm/xe/display: Add check for alloc_ordered_workqueue()
Posted by Haoxiang Li 7 months, 4 weeks ago
Add check for the return value of alloc_ordered_workqueue()
in xe_display_create() to catch potential exception.

Fixes: 44e694958b95 ("drm/xe/display: Implement display support")
Cc: stable@vger.kernel.org
Signed-off-by: Haoxiang Li <haoxiang_li2024@163.com>
---
 drivers/gpu/drm/xe/display/xe_display.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/drivers/gpu/drm/xe/display/xe_display.c b/drivers/gpu/drm/xe/display/xe_display.c
index 0b0aca7a25af..18062cfb265f 100644
--- a/drivers/gpu/drm/xe/display/xe_display.c
+++ b/drivers/gpu/drm/xe/display/xe_display.c
@@ -104,6 +104,8 @@ int xe_display_create(struct xe_device *xe)
 	spin_lock_init(&xe->display.fb_tracking.lock);
 
 	xe->display.hotplug.dp_wq = alloc_ordered_workqueue("xe-dp", 0);
+	if (!xe->display.hotplug.dp_wq)
+		return -ENOMEM;
 
 	return drmm_add_action_or_reset(&xe->drm, display_destroy, NULL);
 }
-- 
2.25.1
Re: [PATCH RESEND] drm/xe/display: Add check for alloc_ordered_workqueue()
Posted by Jani Nikula 7 months ago
On Thu, 24 Apr 2025, Haoxiang Li <haoxiang_li2024@163.com> wrote:
> Add check for the return value of alloc_ordered_workqueue()
> in xe_display_create() to catch potential exception.
>
> Fixes: 44e694958b95 ("drm/xe/display: Implement display support")
> Cc: stable@vger.kernel.org
> Signed-off-by: Haoxiang Li <haoxiang_li2024@163.com>

This patch seems to have been neglected, apologies.

I've rebased it and included it as part of a bigger series [1].

Thanks for the patch.

BR,
Jani.


[1] https://lore.kernel.org/r/cover.1747397638.git.jani.nikula@intel.com

> ---
>  drivers/gpu/drm/xe/display/xe_display.c | 2 ++
>  1 file changed, 2 insertions(+)
>
> diff --git a/drivers/gpu/drm/xe/display/xe_display.c b/drivers/gpu/drm/xe/display/xe_display.c
> index 0b0aca7a25af..18062cfb265f 100644
> --- a/drivers/gpu/drm/xe/display/xe_display.c
> +++ b/drivers/gpu/drm/xe/display/xe_display.c
> @@ -104,6 +104,8 @@ int xe_display_create(struct xe_device *xe)
>  	spin_lock_init(&xe->display.fb_tracking.lock);
>  
>  	xe->display.hotplug.dp_wq = alloc_ordered_workqueue("xe-dp", 0);
> +	if (!xe->display.hotplug.dp_wq)
> +		return -ENOMEM;
>  
>  	return drmm_add_action_or_reset(&xe->drm, display_destroy, NULL);
>  }

-- 
Jani Nikula, Intel