[PATCH] drm/ssd130x: Synchronize access to dma-buf imported GEM BOs

Thomas Zimmermann tzimmermann at suse.de
Tue Sep 27 11:18:02 UTC 2022


Hi

Am 27.09.22 um 11:52 schrieb Javier Martinez Canillas:
> Synchronize CPU access to GEM BOs with other drivers when updating the
> screen buffer. Imported DMA buffers might otherwise contain stale data.
> 
> Suggested-by: Thomas Zimmermann <tzimmermann at suse.de>
> Signed-off-by: Javier Martinez Canillas <javierm at redhat.com>

Reviewed-by: Thomas Zimmermann <tzimmermann at suse.de>

> ---
> 
>   drivers/gpu/drm/solomon/ssd130x.c | 7 +++++++
>   1 file changed, 7 insertions(+)
> 
> diff --git a/drivers/gpu/drm/solomon/ssd130x.c b/drivers/gpu/drm/solomon/ssd130x.c
> index a537692100d1..bc41a5ae810a 100644
> --- a/drivers/gpu/drm/solomon/ssd130x.c
> +++ b/drivers/gpu/drm/solomon/ssd130x.c
> @@ -555,11 +555,18 @@ static int ssd130x_fb_blit_rect(struct drm_framebuffer *fb, const struct iosys_m
>   	if (!buf)
>   		return -ENOMEM;
>   
> +	ret = drm_gem_fb_begin_cpu_access(fb, DMA_FROM_DEVICE);
> +	if (ret)
> +		goto out_free;
> +
>   	iosys_map_set_vaddr(&dst, buf);
>   	drm_fb_xrgb8888_to_mono(&dst, &dst_pitch, vmap, fb, rect);
>   
> +	drm_gem_fb_end_cpu_access(fb, DMA_FROM_DEVICE);
> +
>   	ssd130x_update_rect(ssd130x, buf, rect);
>   
> +out_free:
>   	kfree(buf);
>   
>   	return ret;

-- 
Thomas Zimmermann
Graphics Driver Developer
SUSE Software Solutions Germany GmbH
Maxfeldstr. 5, 90409 Nürnberg, Germany
(HRB 36809, AG Nürnberg)
Geschäftsführer: Ivo Totev
-------------- next part --------------
A non-text attachment was scrubbed...
Name: OpenPGP_signature
Type: application/pgp-signature
Size: 840 bytes
Desc: OpenPGP digital signature
URL: <https://lists.freedesktop.org/archives/dri-devel/attachments/20220927/8af47021/attachment.sig>


More information about the dri-devel mailing list