Re: [Mesa-dev] [PATCH 1/3] pipebuffer: use new pb_usage_flags enum type
It was committed in early March: b286e74df66e25cadd1c82d9ddc4d1fc3887b646 -Brian On 04/23/2019 07:25 AM, Thomas Hellstrom wrote: Hi, Brian, Did this series get reviewed? I don't see any replies? /Thomas On Tue, 2019-03-05 at 20:48 -0700, Brian Paul wrote: Use a new enum type instead of 'unsigned' to make things a bit more understandable. --- src/gallium/auxiliary/pipebuffer/pb_buffer.h | 34 ++ .../auxiliary/pipebuffer/pb_buffer_fenced.c| 6 ++-- .../auxiliary/pipebuffer/pb_buffer_malloc.c| 4 +-- src/gallium/auxiliary/pipebuffer/pb_bufmgr_cache.c | 4 +-- src/gallium/auxiliary/pipebuffer/pb_bufmgr_debug.c | 6 ++-- src/gallium/auxiliary/pipebuffer/pb_bufmgr_mm.c| 4 +-- .../auxiliary/pipebuffer/pb_bufmgr_ondemand.c | 4 +-- src/gallium/auxiliary/pipebuffer/pb_bufmgr_pool.c | 5 ++-- src/gallium/auxiliary/pipebuffer/pb_bufmgr_slab.c | 6 ++-- src/gallium/auxiliary/pipebuffer/pb_validate.c | 2 +- src/gallium/auxiliary/pipebuffer/pb_validate.h | 2 +- 11 files changed, 45 insertions(+), 32 deletions(-) diff --git a/src/gallium/auxiliary/pipebuffer/pb_buffer.h b/src/gallium/auxiliary/pipebuffer/pb_buffer.h index 33c2306..11f70ea 100644 --- a/src/gallium/auxiliary/pipebuffer/pb_buffer.h +++ b/src/gallium/auxiliary/pipebuffer/pb_buffer.h @@ -59,13 +59,22 @@ struct pb_vtbl; struct pb_validate; struct pipe_fence_handle; +enum pb_usage_flags { + PB_USAGE_CPU_READ = (1 << 0), + PB_USAGE_CPU_WRITE = (1 << 1), + PB_USAGE_GPU_READ = (1 << 2), + PB_USAGE_GPU_WRITE = (1 << 3), + PB_USAGE_DONTBLOCK = (1 << 9), + PB_USAGE_UNSYNCHRONIZED = (1 << 10), +}; -#define PB_USAGE_CPU_READ (1 << 0) -#define PB_USAGE_CPU_WRITE (1 << 1) -#define PB_USAGE_GPU_READ (1 << 2) -#define PB_USAGE_GPU_WRITE (1 << 3) -#define PB_USAGE_UNSYNCHRONIZED (1 << 10) -#define PB_USAGE_DONTBLOCK (1 << 9) +/* For error checking elsewhere */ +#define PB_USAGE_ALL (PB_USAGE_CPU_READ | \ + PB_USAGE_CPU_WRITE | \ + PB_USAGE_GPU_READ | \ + PB_USAGE_GPU_WRITE | \ + PB_USAGE_DONTBLOCK | \ + PB_USAGE_UNSYNCHRONIZED) #define PB_USAGE_CPU_READ_WRITE \ ( PB_USAGE_CPU_READ | PB_USAGE_CPU_WRITE ) @@ -82,7 +91,7 @@ struct pipe_fence_handle; struct pb_desc { unsigned alignment; - unsigned usage; + enum pb_usage_flags usage; }; @@ -100,7 +109,7 @@ struct pb_buffer struct pipe_reference reference; unsigned alignment; pb_sizesize; - unsigned usage; + enum pb_usage_flagsusage; /** * Pointer to the virtual function table. @@ -126,13 +135,13 @@ struct pb_vtbl * flags is bitmask of PB_USAGE_CPU_READ/WRITE. */ void *(*map)( struct pb_buffer *buf, - unsigned flags, void *flush_ctx ); + enum pb_usage_flags flags, void *flush_ctx ); void (*unmap)( struct pb_buffer *buf ); enum pipe_error (*validate)( struct pb_buffer *buf, struct pb_validate *vl, -unsigned flags ); +enum pb_usage_flags flags ); void (*fence)( struct pb_buffer *buf, struct pipe_fence_handle *fence ); @@ -160,7 +169,7 @@ struct pb_vtbl */ static inline void * pb_map(struct pb_buffer *buf, - unsigned flags, void *flush_ctx) + enum pb_usage_flags flags, void *flush_ctx) { assert(buf); if (!buf) @@ -201,7 +210,8 @@ pb_get_base_buffer( struct pb_buffer *buf, static inline enum pipe_error -pb_validate(struct pb_buffer *buf, struct pb_validate *vl, unsigned flags) +pb_validate(struct pb_buffer *buf, struct pb_validate *vl, +enum pb_usage_flags flags) { assert(buf); if (!buf) diff --git a/src/gallium/auxiliary/pipebuffer/pb_buffer_fenced.c b/src/gallium/auxiliary/pipebuffer/pb_buffer_fenced.c index 7421741..53b9ce0 100644 --- a/src/gallium/auxiliary/pipebuffer/pb_buffer_fenced.c +++ b/src/gallium/auxiliary/pipebuffer/pb_buffer_fenced.c @@ -139,7 +139,7 @@ struct fenced_buffer * A bitmask of PB_USAGE_CPU/GPU_READ/WRITE describing the current * buffer usage. */ - unsigned flags; + enum pb_usage_flags flags; unsigned mapcount; @@ -662,7 +662,7 @@ fenced_buffer_destroy(struct pb_buffer *buf) static void * fenced_buffer_map(struct pb_buffer *buf, - unsigned flags, void *flush_ctx) + enum pb_usage_flags flags, void *flush_ctx) { struct fenced_buffer *fenced_buf = fenced_buffer(buf); struct fenced_manager *fenced_mgr = fenced_buf->mgr; @@ -739,7 +739,7 @@ fenced_buffer_unmap(struct pb_buffer *buf) static enum pipe_error fenced_buffer_validate(struct pb_buffer *buf, struct pb_validate *vl, - unsigned
Re: [Mesa-dev] [PATCH 1/3] pipebuffer: use new pb_usage_flags enum type
Hi, Brian, Did this series get reviewed? I don't see any replies? /Thomas On Tue, 2019-03-05 at 20:48 -0700, Brian Paul wrote: > Use a new enum type instead of 'unsigned' to make things a bit more > understandable. > --- > src/gallium/auxiliary/pipebuffer/pb_buffer.h | 34 > ++ > .../auxiliary/pipebuffer/pb_buffer_fenced.c| 6 ++-- > .../auxiliary/pipebuffer/pb_buffer_malloc.c| 4 +-- > src/gallium/auxiliary/pipebuffer/pb_bufmgr_cache.c | 4 +-- > src/gallium/auxiliary/pipebuffer/pb_bufmgr_debug.c | 6 ++-- > src/gallium/auxiliary/pipebuffer/pb_bufmgr_mm.c| 4 +-- > .../auxiliary/pipebuffer/pb_bufmgr_ondemand.c | 4 +-- > src/gallium/auxiliary/pipebuffer/pb_bufmgr_pool.c | 5 ++-- > src/gallium/auxiliary/pipebuffer/pb_bufmgr_slab.c | 6 ++-- > src/gallium/auxiliary/pipebuffer/pb_validate.c | 2 +- > src/gallium/auxiliary/pipebuffer/pb_validate.h | 2 +- > 11 files changed, 45 insertions(+), 32 deletions(-) > > diff --git a/src/gallium/auxiliary/pipebuffer/pb_buffer.h > b/src/gallium/auxiliary/pipebuffer/pb_buffer.h > index 33c2306..11f70ea 100644 > --- a/src/gallium/auxiliary/pipebuffer/pb_buffer.h > +++ b/src/gallium/auxiliary/pipebuffer/pb_buffer.h > @@ -59,13 +59,22 @@ struct pb_vtbl; > struct pb_validate; > struct pipe_fence_handle; > > +enum pb_usage_flags { > + PB_USAGE_CPU_READ = (1 << 0), > + PB_USAGE_CPU_WRITE = (1 << 1), > + PB_USAGE_GPU_READ = (1 << 2), > + PB_USAGE_GPU_WRITE = (1 << 3), > + PB_USAGE_DONTBLOCK = (1 << 9), > + PB_USAGE_UNSYNCHRONIZED = (1 << 10), > +}; > > -#define PB_USAGE_CPU_READ (1 << 0) > -#define PB_USAGE_CPU_WRITE (1 << 1) > -#define PB_USAGE_GPU_READ (1 << 2) > -#define PB_USAGE_GPU_WRITE (1 << 3) > -#define PB_USAGE_UNSYNCHRONIZED (1 << 10) > -#define PB_USAGE_DONTBLOCK (1 << 9) > +/* For error checking elsewhere */ > +#define PB_USAGE_ALL (PB_USAGE_CPU_READ | \ > + PB_USAGE_CPU_WRITE | \ > + PB_USAGE_GPU_READ | \ > + PB_USAGE_GPU_WRITE | \ > + PB_USAGE_DONTBLOCK | \ > + PB_USAGE_UNSYNCHRONIZED) > > #define PB_USAGE_CPU_READ_WRITE \ > ( PB_USAGE_CPU_READ | PB_USAGE_CPU_WRITE ) > @@ -82,7 +91,7 @@ struct pipe_fence_handle; > struct pb_desc > { > unsigned alignment; > - unsigned usage; > + enum pb_usage_flags usage; > }; > > > @@ -100,7 +109,7 @@ struct pb_buffer > struct pipe_reference reference; > unsigned alignment; > pb_sizesize; > - unsigned usage; > + enum pb_usage_flagsusage; > > /** > * Pointer to the virtual function table. > @@ -126,13 +135,13 @@ struct pb_vtbl > * flags is bitmask of PB_USAGE_CPU_READ/WRITE. > */ > void *(*map)( struct pb_buffer *buf, > - unsigned flags, void *flush_ctx ); > + enum pb_usage_flags flags, void *flush_ctx ); > > void (*unmap)( struct pb_buffer *buf ); > > enum pipe_error (*validate)( struct pb_buffer *buf, > struct pb_validate *vl, > -unsigned flags ); > +enum pb_usage_flags flags ); > > void (*fence)( struct pb_buffer *buf, >struct pipe_fence_handle *fence ); > @@ -160,7 +169,7 @@ struct pb_vtbl > */ > static inline void * > pb_map(struct pb_buffer *buf, > - unsigned flags, void *flush_ctx) > + enum pb_usage_flags flags, void *flush_ctx) > { > assert(buf); > if (!buf) > @@ -201,7 +210,8 @@ pb_get_base_buffer( struct pb_buffer *buf, > > > static inline enum pipe_error > -pb_validate(struct pb_buffer *buf, struct pb_validate *vl, unsigned > flags) > +pb_validate(struct pb_buffer *buf, struct pb_validate *vl, > +enum pb_usage_flags flags) > { > assert(buf); > if (!buf) > diff --git a/src/gallium/auxiliary/pipebuffer/pb_buffer_fenced.c > b/src/gallium/auxiliary/pipebuffer/pb_buffer_fenced.c > index 7421741..53b9ce0 100644 > --- a/src/gallium/auxiliary/pipebuffer/pb_buffer_fenced.c > +++ b/src/gallium/auxiliary/pipebuffer/pb_buffer_fenced.c > @@ -139,7 +139,7 @@ struct fenced_buffer > * A bitmask of PB_USAGE_CPU/GPU_READ/WRITE describing the > current > * buffer usage. > */ > - unsigned flags; > + enum pb_usage_flags flags; > > unsigned mapcount; > > @@ -662,7 +662,7 @@ fenced_buffer_destroy(struct pb_buffer *buf) > > static void * > fenced_buffer_map(struct pb_buffer *buf, > - unsigned flags, void *flush_ctx) > + enum pb_usage_flags flags, void *flush_ctx) > { > struct fenced_buffer *fenced_buf = fenced_buffer(buf); > struct fenced_manager *fenced_mgr = fenced_buf->mgr; > @@ -739,7 +739,7 @@ fenced_buffer_unmap(struct pb_buffer *buf) > static enum pipe_error > fenced_buffer_validate(struct pb_buffer *buf, >
[Mesa-dev] [PATCH 1/3] pipebuffer: use new pb_usage_flags enum type
Use a new enum type instead of 'unsigned' to make things a bit more understandable. --- src/gallium/auxiliary/pipebuffer/pb_buffer.h | 34 ++ .../auxiliary/pipebuffer/pb_buffer_fenced.c| 6 ++-- .../auxiliary/pipebuffer/pb_buffer_malloc.c| 4 +-- src/gallium/auxiliary/pipebuffer/pb_bufmgr_cache.c | 4 +-- src/gallium/auxiliary/pipebuffer/pb_bufmgr_debug.c | 6 ++-- src/gallium/auxiliary/pipebuffer/pb_bufmgr_mm.c| 4 +-- .../auxiliary/pipebuffer/pb_bufmgr_ondemand.c | 4 +-- src/gallium/auxiliary/pipebuffer/pb_bufmgr_pool.c | 5 ++-- src/gallium/auxiliary/pipebuffer/pb_bufmgr_slab.c | 6 ++-- src/gallium/auxiliary/pipebuffer/pb_validate.c | 2 +- src/gallium/auxiliary/pipebuffer/pb_validate.h | 2 +- 11 files changed, 45 insertions(+), 32 deletions(-) diff --git a/src/gallium/auxiliary/pipebuffer/pb_buffer.h b/src/gallium/auxiliary/pipebuffer/pb_buffer.h index 33c2306..11f70ea 100644 --- a/src/gallium/auxiliary/pipebuffer/pb_buffer.h +++ b/src/gallium/auxiliary/pipebuffer/pb_buffer.h @@ -59,13 +59,22 @@ struct pb_vtbl; struct pb_validate; struct pipe_fence_handle; +enum pb_usage_flags { + PB_USAGE_CPU_READ = (1 << 0), + PB_USAGE_CPU_WRITE = (1 << 1), + PB_USAGE_GPU_READ = (1 << 2), + PB_USAGE_GPU_WRITE = (1 << 3), + PB_USAGE_DONTBLOCK = (1 << 9), + PB_USAGE_UNSYNCHRONIZED = (1 << 10), +}; -#define PB_USAGE_CPU_READ (1 << 0) -#define PB_USAGE_CPU_WRITE (1 << 1) -#define PB_USAGE_GPU_READ (1 << 2) -#define PB_USAGE_GPU_WRITE (1 << 3) -#define PB_USAGE_UNSYNCHRONIZED (1 << 10) -#define PB_USAGE_DONTBLOCK (1 << 9) +/* For error checking elsewhere */ +#define PB_USAGE_ALL (PB_USAGE_CPU_READ | \ + PB_USAGE_CPU_WRITE | \ + PB_USAGE_GPU_READ | \ + PB_USAGE_GPU_WRITE | \ + PB_USAGE_DONTBLOCK | \ + PB_USAGE_UNSYNCHRONIZED) #define PB_USAGE_CPU_READ_WRITE \ ( PB_USAGE_CPU_READ | PB_USAGE_CPU_WRITE ) @@ -82,7 +91,7 @@ struct pipe_fence_handle; struct pb_desc { unsigned alignment; - unsigned usage; + enum pb_usage_flags usage; }; @@ -100,7 +109,7 @@ struct pb_buffer struct pipe_reference reference; unsigned alignment; pb_sizesize; - unsigned usage; + enum pb_usage_flagsusage; /** * Pointer to the virtual function table. @@ -126,13 +135,13 @@ struct pb_vtbl * flags is bitmask of PB_USAGE_CPU_READ/WRITE. */ void *(*map)( struct pb_buffer *buf, - unsigned flags, void *flush_ctx ); + enum pb_usage_flags flags, void *flush_ctx ); void (*unmap)( struct pb_buffer *buf ); enum pipe_error (*validate)( struct pb_buffer *buf, struct pb_validate *vl, -unsigned flags ); +enum pb_usage_flags flags ); void (*fence)( struct pb_buffer *buf, struct pipe_fence_handle *fence ); @@ -160,7 +169,7 @@ struct pb_vtbl */ static inline void * pb_map(struct pb_buffer *buf, - unsigned flags, void *flush_ctx) + enum pb_usage_flags flags, void *flush_ctx) { assert(buf); if (!buf) @@ -201,7 +210,8 @@ pb_get_base_buffer( struct pb_buffer *buf, static inline enum pipe_error -pb_validate(struct pb_buffer *buf, struct pb_validate *vl, unsigned flags) +pb_validate(struct pb_buffer *buf, struct pb_validate *vl, +enum pb_usage_flags flags) { assert(buf); if (!buf) diff --git a/src/gallium/auxiliary/pipebuffer/pb_buffer_fenced.c b/src/gallium/auxiliary/pipebuffer/pb_buffer_fenced.c index 7421741..53b9ce0 100644 --- a/src/gallium/auxiliary/pipebuffer/pb_buffer_fenced.c +++ b/src/gallium/auxiliary/pipebuffer/pb_buffer_fenced.c @@ -139,7 +139,7 @@ struct fenced_buffer * A bitmask of PB_USAGE_CPU/GPU_READ/WRITE describing the current * buffer usage. */ - unsigned flags; + enum pb_usage_flags flags; unsigned mapcount; @@ -662,7 +662,7 @@ fenced_buffer_destroy(struct pb_buffer *buf) static void * fenced_buffer_map(struct pb_buffer *buf, - unsigned flags, void *flush_ctx) + enum pb_usage_flags flags, void *flush_ctx) { struct fenced_buffer *fenced_buf = fenced_buffer(buf); struct fenced_manager *fenced_mgr = fenced_buf->mgr; @@ -739,7 +739,7 @@ fenced_buffer_unmap(struct pb_buffer *buf) static enum pipe_error fenced_buffer_validate(struct pb_buffer *buf, struct pb_validate *vl, - unsigned flags) + enum pb_usage_flags flags) { struct fenced_buffer *fenced_buf = fenced_buffer(buf); struct fenced_manager *fenced_mgr = fenced_buf->mgr; diff --git a/src/gallium/auxiliary/pipebuffer/pb_buffer_malloc.c b/src/gallium/auxiliary/pipebuffer/pb_buffer_malloc.c index ea2f2fa..d83e8e4 100644 ---