From mboxrd@z Thu Jan 1 00:00:00 1970 From: Eric Anholt Subject: Re: [PATCH] Pack swap complete bits into an XEvent Date: Thu, 28 Apr 2011 14:33:58 -0700 Message-ID: <87y62uhxh5.fsf@pollan.anholt.net> References: <1304022442-8070-1-git-send-email-jbarnes@virtuousgeek.org> <1304022442-8070-2-git-send-email-jbarnes@virtuousgeek.org> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="===============2104363036==" Return-path: In-Reply-To: <1304022442-8070-2-git-send-email-jbarnes@virtuousgeek.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: dri-devel-bounces+sf-dri-devel=m.gmane.org@lists.freedesktop.org Errors-To: dri-devel-bounces+sf-dri-devel=m.gmane.org@lists.freedesktop.org To: Jesse Barnes , dri-devel@lists.freedesktop.org, xorg-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org --===============2104363036== Content-Type: multipart/signed; boundary="=-=-="; micalg=pgp-sha1; protocol="application/pgp-signature" --=-=-= Content-Transfer-Encoding: quoted-printable On Thu, 28 Apr 2011 13:27:19 -0700, Jesse Barnes = wrote: > The defintion of the swap complete event was wrong; XEvents are only 32 > bytes long, and with padding the swap event was longer. So use some > creative packing to get all the bits we want transmitted. Requires a > proto version bump. > --- > configure.ac | 2 +- > glxproto.h | 13 +++++++++---- > 2 files changed, 10 insertions(+), 5 deletions(-) >=20 > diff --git a/configure.ac b/configure.ac > index d88e6df..a3047e4 100644 > --- a/configure.ac > +++ b/configure.ac > @@ -1,5 +1,5 @@ > AC_PREREQ([2.60]) > -AC_INIT([GLProto], [1.4.12], [https://bugs.freedesktop.org/enter_bug.cgi= ?product=3Dxorg]) > +AC_INIT([GLProto], [1.4.13], [https://bugs.freedesktop.org/enter_bug.cgi= ?product=3Dxorg]) > AM_INIT_AUTOMAKE([foreign dist-bzip2]) > AM_MAINTAINER_MODE >=20=20 > diff --git a/glxproto.h b/glxproto.h > index 0ff44e3..4a583c1 100644 > --- a/glxproto.h > +++ b/glxproto.h > @@ -1370,18 +1370,23 @@ typedef struct { > CARD32 unused2 B32; > } xGLXPbufferClobberEvent; >=20=20 > +/* Note, this struct is too large for an Xevent, I fail -- jbarnes > + * So sbc_lo won't ever be sent. We can use a generic event though with= out > + * size restrictions, thus xGLXBufferSwapComplete2. > + */ This comment doesn't seem to match the change. > typedef struct { > BYTE type; > - BYTE pad; > + BYTE sbc_lo0; > CARD16 sequenceNumber B16; > - CARD16 event_type B16; > - CARD32 drawable; > + CARD8 event_type; > + CARD8 sbc_lo8; > + CARD16 sbc_lo16 B16; > + CARD32 drawable B32; > CARD32 ust_hi B32; > CARD32 ust_lo B32; > CARD32 msc_hi B32; > CARD32 msc_lo B32; > CARD32 sbc_hi B32; > - CARD32 sbc_lo B32; > } xGLXBufferSwapComplete; --=-=-= Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.11 (GNU/Linux) iEYEARECAAYFAk253UYACgkQHUdvYGzw6vc7JQCbBVn75kObR3oQONYmiJBCwV37 cMgAn2VTNqJF4vNTkxm3az7bk8HQBWgR =QPxp -----END PGP SIGNATURE----- --=-=-=-- --===============2104363036== Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ dri-devel mailing list dri-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/dri-devel --===============2104363036==--