<div dir="ltr">For qemu, this is handled at the kernel modesetting level with QXL. See drmModeSetCursor2.<br></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Fri, Apr 4, 2014 at 3:30 AM, Michael Thayer <span dir="ltr"><<a href="mailto:michael.thayer@oracle.com" target="_blank">michael.thayer@oracle.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hello Dave,<div class=""><br>
<br>
On 04/04/14 01:21, Dave Airlie wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
load_cursor_argb() may need to be able to fail and have the server<br>
fall back to a software cursor in at least the following<br>
circumstances. 1) The hardware can only support some ARGB cursors<br>
and this does not just depend on cursor size. 2) Virtual hardware<br>
may not wish to pass through a cursor to the host at a particular<br>
time but may wish to accept the same cursor at another time. This<br>
patch adds a return value to the API and makes the server do the<br>
software fall-back on failure.<br>
<br>
Signed-off-by: Michael Thayer <<a href="mailto:michael.thayer@oracle.com" target="_blank">michael.thayer@oracle.com</a>><br>
</blockquote>
<br>
I think this is a welcome ABI break, and I probably should have done<br>
something like it ages ago when doing -modesetting,<br>
<br>
Reviewed-by: Dave Airlie <<a href="mailto:airlied@redhat.com" target="_blank">airlied@redhat.com</a>><br>
</blockquote></div>
Thanks for the review!  Does X.Org custom say that I should sent patches<br>
(which I obviously can't test) for all or some of the public drivers, or<br>
that the driver maintainers should do that?  And my question about<br>
whether a similar patch for set_cursor_position() would make sense is<br>
still open (I assume this is relevant for Qemu too):<div class=""><br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
VirtualBox can use the host cursor as a hardware cursor for a guest<br>
system, but it can't change its position, so if the guest wants the<br>
cursor anywhere except where the host put it (e.g. another device<br>
controlling it, or the cursor confined to a screen region) it needs<br>
to draw it itself.  Of course, set_cursor_position() should still<br>
be called even after it has failed once so that we could switch<br>
back if the positions matched again.<br>
</blockquote></blockquote>
<br></div>
Regards,<br>
<br>
Michael<div class="im HOEnZb"><br>
-- <br>
ORACLE Deutschland B.V. & Co. KG   Michael Thayer<br>
Werkstrasse 24                     VirtualBox engineering<br>
71384 Weinstadt, Germany           mailto:<a href="mailto:michael.thayer@oracle.com" target="_blank">michael.thayer@oracle.<u></u>com</a><br>
<br>
Hauptverwaltung: Riesstr. 25, D-80992 München<br>
Registergericht: Amtsgericht München, HRA 95603<br>
Geschäftsführer: Jürgen Kunz<br>
<br>
Komplementärin: ORACLE Deutschland Verwaltung B.V.<br>
Hertogswetering 163/167, 3543 AS Utrecht, Niederlande<br>
Handelsregister der Handelskammer Midden-Niederlande, Nr. 30143697<br>
Geschäftsführer: Alexander van der Ven, Astrid Kepper, Val Maher<br></div><div class="HOEnZb"><div class="h5">
______________________________<u></u>_________________<br>
<a href="mailto:xorg-devel@lists.x.org" target="_blank">xorg-devel@lists.x.org</a>: X.Org development<br>
Archives: <a href="http://lists.x.org/archives/xorg-devel" target="_blank">http://lists.x.org/archives/<u></u>xorg-devel</a><br>
Info: <a href="http://lists.x.org/mailman/listinfo/xorg-devel" target="_blank">http://lists.x.org/mailman/<u></u>listinfo/xorg-devel</a><br>
</div></div></blockquote></div><br><br clear="all"><br>-- <br>  Jasper<br>
</div>