[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <87ttpo5hvs.fsf@minerva.mail-host-address-is-not-set>
Date: Tue, 14 Nov 2023 19:06:47 +0100
From: Javier Martinez Canillas <javierm@...hat.com>
To: Thomas Zimmermann <tzimmermann@...e.de>,
linux-kernel@...r.kernel.org
Cc: Pekka Paalanen <pekka.paalanen@...labora.com>,
dri-devel@...ts.freedesktop.org, Jonathan Corbet <corbet@....net>,
Bilal Elmoussaoui <belmouss@...hat.com>,
linux-doc@...r.kernel.org, Maxime Ripard <mripard@...nel.org>,
Gurchetan Singh <gurchetansingh@...omium.org>,
VMware Graphics Reviewers
<linux-graphics-maintainer@...are.com>,
Gerd Hoffmann <kraxel@...hat.com>,
Sima Vetter <daniel.vetter@...ll.ch>,
David Airlie <airlied@...hat.com>,
virtualization@...ts.linux-foundation.org,
Erico Nunes <nunes.erico@...il.com>
Subject: Re: [PATCH 0/6] drm: Allow the damage helpers to handle buffer damage
Thomas Zimmermann <tzimmermann@...e.de> writes:
Hello Thomas,
> Hi
[...]
>>> And why does it flicker? Is there old data stored somewhere?
>>>
>>
>> It flickers because the framebuffer changed and so the damage tracking
>> is not used correctly to flush the damaged areas to the backing storage.
>
> I think I got it from the links in patch 5. In out other drivers,
> there's a single backing storage for each plane (for example in the
> video memory). Here, there's a backing storage for each buffer. On page
Correct, that's what I understood too.
> flips, the plane changes its backing storage. Our GEM buffer is up to
> date, but the respective backing storage is missing all the intermediate
> changes.
>
> If I'm not mistaken, an entirely different solution would be to
> implement a per-plane back storage in these drivers.
>
I believe so but I'm not sure if that's possible since the virtio-gpu spec
defines that the VM should send a VIRTIO_GPU_CMD_RESOURCE_FLUSH to the VMM
in the host to do an update and the granularity for that is a framebuffer.
For that reason the only solution (other than forcing a full plane update
like this patch-set does) is to implement tracking suppor for buffer damage.
> Best regards
> Thomas
>
--
Best regards,
Javier Martinez Canillas
Core Platforms
Red Hat
Powered by blists - more mailing lists