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