On Apr 29, 2011, at 11:37 PM, Jesse Barnes wrote:
On Thu, 28 Apr 2011 13:27:18 -0700
Jesse Barnes <jbarnes@xxxxxxxxxxxxxxxx> 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@xxxxxxxxxxx: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: http://lists.x.org/mailman/listinfo/xorg-devel
_______________________________________________
dri-devel mailing list
dri-devel@xxxxxxxxxxxxxxxxxxxxx
http://lists.freedesktop.org/mailman/listinfo/dri-devel