On Apr 29, 2011, at 11:37 PM, Jesse Barnes wrote: > On Thu, 28 Apr 2011 13:27:18 -0700 > Jesse Barnes <jbarnes at virtuousgeek.org> wrote: > >> I obviously failed to count the swap event structure size after >> adding >> and removing fields a few times, and didn't even account for >> padding. The >> end result is that clients today won't receive the sbc_lo field at >> all, >> and so will likely stuff junk into that field on the client side (or >> zero at best). >> >> This patchset fixes up the structure definitions, bumps the proto >> levels, and adds server and client handling code for it all. It >> should >> be forward and backward compatible, but as always review and testing >> appreciated. >> >> I think the event_type checking on the client side still needs work; >> the field is split now so I need to check the right one on old >> servers. >> I'll also add swap support for the new requests in case people >> ever want >> to run this stuff between big and little endian machines. > > Btw, I've been trying to test these fixes but I can't make the > existing > code break; I'm getting a nicely incrementing sbc count using the > piglit event test (after adding some code to dump the swap event > fields), so somehow the bits are getting through. I just don't know > how yet... >
One thing you could try as another quick test is to use xtrace on a opengl app. I remember seeing weird results for the msc or ust fields (i believe) of decoded and printed DRI2SwapComplete events. I always thought part of my toolchain was just out of sync, but maybe it was just the result of the wrong size/padding. -mario > -- > Jesse Barnes, Intel Open Source Technology Center > _______________________________________________ > xorg-devel at lists.x.org: X.Org development > Archives: http://lists.x.org/archives/xorg-devel > Info: http://lists.x.org/mailman/listinfo/xorg-devel