As for adding glFinish(), I'm not sure what to make of that, it could just be the slowdown from that command alters the timing pattern that's giving us problems. I don't see anything obvious from the trace, we should have fencing around the display posting implemented. A fence of -1 means the buffer is available for use immediately.
If we want to eliminate the fencing from the list of potential problem areas, we could look for tearing. Fencing problems generally result in tearing, so if we don't see tearing, maybe we could focus on making sure we have the right texture uploaded.
As for adding glFinish(), I'm not sure what to make of that, it could just be the slowdown from that command alters the timing pattern that's giving us problems. I don't see anything obvious from the trace, we should have fencing around the display posting implemented. A fence of -1 means the buffer is available for use immediately.
If we want to eliminate the fencing from the list of potential problem areas, we could look for tearing. Fencing problems generally result in tearing, so if we don't see tearing, maybe we could focus on making sure we have the right texture uploaded.