[PATCH] drm/vmwgfx: Fix overlay when using Screen Targets

Doug Brown doug at schmorgal.com
Sat Jul 20 01:26:56 UTC 2024


On 7/19/2024 9:36 AM, Ian Forbes wrote:
> This code was never updated to support Screen Targets.
> Fixes a bug where Xv playback displays a green screen instead of actual
> video contents when 3D acceleration is disabled in the guest.
> 
> Fixes: c8261a961ece ("vmwgfx: Major KMS refactoring / cleanup in preparation of screen targets")
> Reported-by: Doug Brown <doug at schmorgal.com>
> Closes: https://lore.kernel.org/all/bd9cb3c7-90e8-435d-bc28-0e38fee58977@schmorgal.com
> Signed-off-by: Ian Forbes <ian.forbes at broadcom.com>
> ---
>  drivers/gpu/drm/vmwgfx/vmwgfx_overlay.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_overlay.c b/drivers/gpu/drm/vmwgfx/vmwgfx_overlay.c
> index c45b4724e4141..e20f64b67b266 100644
> --- a/drivers/gpu/drm/vmwgfx/vmwgfx_overlay.c
> +++ b/drivers/gpu/drm/vmwgfx/vmwgfx_overlay.c
> @@ -92,7 +92,7 @@ static int vmw_overlay_send_put(struct vmw_private *dev_priv,
>  {
>  	struct vmw_escape_video_flush *flush;
>  	size_t fifo_size;
> -	bool have_so = (dev_priv->active_display_unit == vmw_du_screen_object);
> +	bool have_so = (dev_priv->active_display_unit != vmw_du_legacy);
>  	int i, num_items;
>  	SVGAGuestPtr ptr;
>  

Thank you Ian, this patch fixes the issue that I observed.

Tested-by: Doug Brown <doug at schmorgal.com>


More information about the dri-devel mailing list