radeon_cursor

Vladimir Dergachev volodya at mindspring.com
Mon Jan 10 22:46:52 PST 2005



On Tue, 11 Jan 2005, Michel [ISO-8859-1] Dänzer wrote:

> On Sun, 2005-01-02 at 15:19 -0500, Vladimir Dergachev wrote:
>>
>>   My understanding is that the cursor update runs in a separate thread (as
>> the mouse still works when the server is otherwise locked up).
>
> I've been fooled by this before as well, but no. Only mouse movement is
> handled asynchronously.
>

Do I understand it right that the code invoked by a signal writes cursor 
position registers only ?

>
>>   However, CURSOR_SWAPPING_START() does not contain anything to wait for
>> engine idle, which seems to imply that we can be writing cursor data while
>> the engine is busy.
>
> Yes.
>
>>   This is indeed what I see with R300 - when glxtest is running full speed
>> I get a lockup when mouse crosses window boundaries (this involves
>> changing cursor shape because of window manager).
>
> Have you verified that this doesn't happen with SW cursor as well?

No, I have not. Most of the lockups went away after I put a sequence to do 
some sort of cache flush (not sure what exactly as it is just a guess).

However, I do find that often when I make a mistake (like supplying wrong 
texture offset) then the engine locks up on mouse move.

Perhaps, the problem has been merely masked..

                      best

                        Vladimir Dergachev

>
>
> -- 
> Earthling Michel Dänzer      |     Debian (powerpc), X and DRI developer
> Libre software enthusiast    |   http://svcs.affero.net/rm.php?r=daenzer
>


More information about the xorg mailing list