summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAdam Jackson <ajax@redhat.com>2017-02-14 15:30:56 -0500
committerAdam Jackson <ajax@redhat.com>2017-02-16 11:35:03 -0500
commit5d29b493666f728eccd8dd91992ea020bd4be9f9 (patch)
tree8f284ee099e12a5b2ffc3f30c4feaa67d75c6260
parent47db92473f7da2b7d6775ff681ec747009f8cf3f (diff)
xfree86: Reorganize the reserved ScrnInfoRec slots
First, move them to the end of the struct, for marginally better cache locality for the struct members that actually have meaning; move the existing slots at the end of the struct up near some others with similar meanings. Second, only keep four slots each of integer, data pointer, and function pointer; we've rarely used this escape hatch so this is still plenty. Reviewed-by: Alex Deucher <alexander.deucher@amd.com> Reviewed-by: Aaron Plattner <aplattner@nvidia.com> Acked-by: Keith Packard <keithp@keithp.com> Signed-off-by: Adam Jackson <ajax@redhat.com>
-rw-r--r--hw/xfree86/common/xf86str.h27
1 files changed, 7 insertions, 20 deletions
diff --git a/hw/xfree86/common/xf86str.h b/hw/xfree86/common/xf86str.h
index 7f126b0d2..01d12ab69 100644
--- a/hw/xfree86/common/xf86str.h
+++ b/hw/xfree86/common/xf86str.h
@@ -410,10 +410,9 @@ typedef struct _confdrirec {
confDRIBufferRec *bufs;
} confDRIRec, *confDRIPtr;
-/* These values should be adjusted when new fields are added to ScrnInfoRec */
-#define NUM_RESERVED_INTS 16
-#define NUM_RESERVED_POINTERS 14
-#define NUM_RESERVED_FUNCS 10
+#define NUM_RESERVED_INTS 4
+#define NUM_RESERVED_POINTERS 4
+#define NUM_RESERVED_FUNCS 4
/* let clients know they can use this */
#define XF86_SCRN_HAS_PREFER_CLONE 1
@@ -665,18 +664,12 @@ typedef struct _ScrnInfoRec {
/* initial rightof support disable */
int preferClone;
- /*
- * These can be used when the minor ABI version is incremented.
- * The NUM_* parameters must be reduced appropriately to keep the
- * structure size and alignment unchanged.
- */
- int reservedInt[NUM_RESERVED_INTS];
+ Bool is_gpu;
+ uint32_t capabilities;
int *entityInstanceList;
struct pci_device *vgaDev;
- void *reservedPtr[NUM_RESERVED_POINTERS];
-
/*
* Driver entry points.
*
@@ -702,15 +695,9 @@ typedef struct _ScrnInfoRec {
xorgDriverFuncProc *DriverFunc;
xf86ModeSetProc *ModeSet;
- /*
- * This can be used when the minor ABI version is incremented.
- * The NUM_* parameter must be reduced appropriately to keep the
- * structure size and alignment unchanged.
- */
+ int reservedInt[NUM_RESERVED_INTS];
+ void *reservedPtr[NUM_RESERVED_POINTERS];
funcPointer reservedFuncs[NUM_RESERVED_FUNCS];
-
- Bool is_gpu;
- uint32_t capabilities;
} ScrnInfoRec;
typedef struct {