[Mesa-dev] [PATCH 6/8] i965/drm: Make brw_bo_alloc_tiled flags parameter 32-bit.

Kenneth Graunke kenneth at whitecape.org
Tue Apr 11 16:02:49 UTC 2017


unsigned long is a terrible type for a bitfield - if you need fewer
than 32 bits, it wastes 4 bytes.  If you need more, things break on
32-bit builds.  Just use unsigned.

Even that's a bit ridiculous as we only have one flag today.
Still, it's at least somewhat better.
---
 src/mesa/drivers/dri/i965/brw_bufmgr.c   | 4 ++--
 src/mesa/drivers/dri/i965/brw_bufmgr.h   | 2 +-
 src/mesa/drivers/dri/i965/intel_screen.c | 2 +-
 3 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/mesa/drivers/dri/i965/brw_bufmgr.c b/src/mesa/drivers/dri/i965/brw_bufmgr.c
index 391de547f6b..7f2aa9d85ec 100644
--- a/src/mesa/drivers/dri/i965/brw_bufmgr.c
+++ b/src/mesa/drivers/dri/i965/brw_bufmgr.c
@@ -245,7 +245,7 @@ static struct brw_bo *
 bo_alloc_internal(struct brw_bufmgr *bufmgr,
                   const char *name,
                   uint64_t size,
-                  unsigned long flags,
+                  unsigned flags,
                   uint32_t tiling_mode,
                   uint32_t stride, uint64_t alignment)
 {
@@ -377,7 +377,7 @@ brw_bo_alloc(struct brw_bufmgr *bufmgr,
 struct brw_bo *
 brw_bo_alloc_tiled(struct brw_bufmgr *bufmgr, const char *name,
                    int x, int y, int cpp, uint32_t tiling,
-                   uint32_t *pitch, unsigned long flags)
+                   uint32_t *pitch, unsigned flags)
 {
    uint64_t size;
    uint32_t stride;
diff --git a/src/mesa/drivers/dri/i965/brw_bufmgr.h b/src/mesa/drivers/dri/i965/brw_bufmgr.h
index 46456edb121..1b1790a8cb4 100644
--- a/src/mesa/drivers/dri/i965/brw_bufmgr.h
+++ b/src/mesa/drivers/dri/i965/brw_bufmgr.h
@@ -162,7 +162,7 @@ struct brw_bo *brw_bo_alloc_tiled(struct brw_bufmgr *bufmgr,
                                   int x, int y, int cpp,
                                   uint32_t tiling_mode,
                                   uint32_t *pitch,
-                                  unsigned long flags);
+                                  unsigned flags);
 
 /** Takes a reference on a buffer object */
 void brw_bo_reference(struct brw_bo *bo);
diff --git a/src/mesa/drivers/dri/i965/intel_screen.c b/src/mesa/drivers/dri/i965/intel_screen.c
index be5b195eb31..23a4bd6d6c8 100644
--- a/src/mesa/drivers/dri/i965/intel_screen.c
+++ b/src/mesa/drivers/dri/i965/intel_screen.c
@@ -1290,7 +1290,7 @@ static bool
 intel_detect_swizzling(struct intel_screen *screen)
 {
    struct brw_bo *buffer;
-   unsigned long flags = 0;
+   unsigned flags = 0;
    uint32_t aligned_pitch;
    uint32_t tiling = I915_TILING_X;
    uint32_t swizzle_mode = 0;
-- 
2.12.1



More information about the mesa-dev mailing list