[PATCH 2/7] dix: Repack ClientRec

Adam Jackson ajax at redhat.com
Fri Jun 17 11:36:32 PDT 2011


sizeof(ClientRec)   ILP32   LP64
before                120    184
after                 104    136

Signed-off-by: Adam Jackson <ajax at redhat.com>
---
 include/dixstruct.h |   29 ++++++++++++++---------------
 1 files changed, 14 insertions(+), 15 deletions(-)

diff --git a/include/dixstruct.h b/include/dixstruct.h
index 443e8b0..64a250f 100644
--- a/include/dixstruct.h
+++ b/include/dixstruct.h
@@ -91,23 +91,22 @@ typedef struct _Client {
     Mask        clientAsMask;
     pointer     requestBuffer;
     pointer     osPrivate;	/* for OS layer, including scheduler */
-    Bool        swapped;
+    char        swapped;
+    char        big_requests;
+    char        closeDownMode;
+    char        clientGone;
+    char        noClientException;	/* this client died or needs to be
+					 * killed */
+    char	clientState;
     ReplySwapPtr pSwapReplyFunc;
     XID         errorValue;
     int         sequence;
-    int         closeDownMode;
-    int         clientGone;
-    int         noClientException;	/* this client died or needs to be
-					 * killed */
     int         ignoreCount;		/* count for Attend/IgnoreClient */
-    SaveSetElt	*saveSet;
     int         numSaved;
-    int         (**requestVector) (
-		ClientPtr /* pClient */);
+    SaveSetElt	*saveSet;
+    int         (**requestVector) (ClientPtr /* pClient */);
     CARD32	req_len;		/* length of current request */
-    Bool	big_requests;		/* supports large requests */
     int		priority;
-    ClientState clientState;
     PrivateRec	*devPrivates;
     unsigned short	xkbClientFlags;
     unsigned short	mapNotifyMask;
@@ -115,15 +114,15 @@ typedef struct _Client {
     unsigned short	vMajor,vMinor;
     KeyCode		minKC,maxKC;
 
-    unsigned long replyBytesRemaining;
+    unsigned int replyBytesRemaining;
     int	    smart_priority;
-    long    smart_start_tick;
-    long    smart_stop_tick;
-    long    smart_check_tick;
+    int     smart_start_tick;
+    int     smart_stop_tick;
+    int     smart_check_tick;
     
     DeviceIntPtr clientPtr;
     ClientIdPtr  clientIds;
-}           ClientRec;
+} ClientRec;
 
 /*
  * Scheduling interface
-- 
1.7.5.4



More information about the xorg-devel mailing list