Re: agl-compositor and mouse cursor

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Oct 12, 2022 at 01:39:42PM +0200, Maciej Szymański wrote:
> Hi Vlad,
Hi Maciej,
> 
> My name is Maciej Szymański, I am working for OpenSynergy.
> I do have a question about cursor drawn by AGL compositor. As I am
> running AGL image (12.1.0) within QEMU, I am receiving scanouts through
> virtio-gpu.
> It seems cursor is also drawn by agl-compositor rather than passing
> through cursor queue of virtio-gpu. My question is - how cursor
> generation can be delegated from AGL side to backend side ?
> I also want to ask about updating the scanouts. Of course when I do move
> mouse cursor scanout buffer is updated, but even without any (visiblew)
> action on the screen I do receive an update (buffer update and swap)
> every 2-3 seconds. What is the reason of such behaviour ?
I think what you're seeing is probably a repaint entirely, not just for
the cursor. The cursor is going through the renderer rather than using a
"dedicated" hw plane (the cursor hw plane). If you see buffer swap a
couple of seconds apart maybe something else changed on the screen, 
though you might not be aware of it.

We can expose, from the DRM-backend, additional debug information just
that I haven't coded that yet in the AGL compositor. If that's helpful
to you guys, I can do that.  It could help you out correlate the
repaint/drawing and figure if what's drawn on the screen actually makes
it to a hw plane, and what plane that is. The back-ends also informs you
why it couldn't use the hw plane, giving some insight into the matter. 
It sounds like this might be really useful to have at this point (just
open a JIRA ticket for it, and we'll follow it there).

Assuming that you can provide, with virtio-gpu, a cursor plane (it has to
be that type), the backend will attempt to use it such that scanout happens
automatically, rather than importing it in the GPU, thus using the renderer
to display it. If that doesn't happen it could from a lot of reasons:
invalid dimensions, invalid buffer type, hw plane already used by some other
surface/view.

PS: I've CC this to the dev mailing list. Please use that in the future, 
so others can chime in and be aware of the issues we're discovering.
> 
> Regards,
> 
> --
> Maciej Szymański
> Senior Staff Engineer
> 
> OpenSynergy GmbH
> Rotherstr. 20, 10245 Berlin
> 
> E-Mail:   maciej.szymanski@xxxxxxxxxxxxxxx
> 
> www.opensynergy.com
> 
> Handelsregister/Commercial Registry: Amtsgericht Charlottenburg, HRB 108616B
> Geschäftsführer/Managing Director: Regis Adjamah
> 
> 
> Please mind our privacy notice<https://www.opensynergy.com/datenschutzerklaerung/privacy-notice-for-business-partners-pursuant-to-article-13-of-the-general-data-protection-regulation-gdpr/> pursuant to Art. 13 GDPR. // Unsere Hinweise zum Datenschutz gem. Art. 13 DSGVO finden Sie hier.<https://www.opensynergy.com/de/datenschutzerklaerung/datenschutzhinweise-fuer-geschaeftspartner-gem-art-13-dsgvo/>


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#10197): https://lists.automotivelinux.org/g/agl-dev-community/message/10197
Mute This Topic: https://lists.automotivelinux.org/mt/94281719/2167316
Group Owner: agl-dev-community+owner@xxxxxxxxxxxxxxxxxxxxxxxxx
Unsubscribe: https://lists.automotivelinux.org/g/agl-dev-community/leave/4543822/2167316/883735764/xyzzy [list-automotive-discussions82@xxxxxxxxxxx]
-=-=-=-=-=-=-=-=-=-=-=-


Attachment: signature.asc
Description: PGP signature


[Index of Archives]     [LARTC]     [Bugtraq]     [Yosemite Forum]     [Photo]

  Powered by Linux