On Fri, 2010-08-13 at 19:41 +0100, Michel Dänzer wrote: > It's news to me that PutImage is always synchronous. Do you have any > pointers to where this is enforced in the code?
By the time pGC->ops->PutImage returns, the bits argument belongs to the caller again. In the case of ProcPutImage that points into the request buffer, which will get reused. I don't know if you count that as "enforced" but it certainly appears to be what's assumed. Which means you need to have finished touching the request buffer by the time the PutImage hook returns. If you do that by memcpy'ing to a bounce buffer and handing that to DMA, that's a perfectly cromulent way of being done with the request buffer. Likewise in ProcShmPutImage we send the completion event to the client immediately after the PutImage hook returns, so if you're not done touching bits (the shm segment) when your hook returns then you're racing with event delivery. - ajax
signature.asc
Description: This is a digitally signed message part
_______________________________________________ [email protected]: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel
