[Mesa-dev] [PATCH] r600g/compute: Fix Warnings

Marek Olšák maraeo at gmail.com
Sat Aug 9 14:51:00 PDT 2014


Hi Bruno,

Sorry, I fixed the warnings by myself before I saw your patch.

Marek

On Thu, Aug 7, 2014 at 12:07 PM, Bruno Jiménez <brunojimen at gmail.com> wrote:
> I have followed the following convention:
> - Positions in the pool are now 'int' (start_in_dw and related)
> - Sizes are 'unsigned' (size_in_dw and related)
> - IDs are 'unsigned'
>
> The pool and item's status are left as uint32_t
> The shadow has been also left as a pointer to an uint32_t
> ---
>  src/gallium/drivers/r600/compute_memory_pool.c | 56 +++++++++++++-------------
>  src/gallium/drivers/r600/compute_memory_pool.h | 26 ++++++------
>  2 files changed, 41 insertions(+), 41 deletions(-)
>
> diff --git a/src/gallium/drivers/r600/compute_memory_pool.c b/src/gallium/drivers/r600/compute_memory_pool.c
> index 0ee8ceb..8bcab00 100644
> --- a/src/gallium/drivers/r600/compute_memory_pool.c
> +++ b/src/gallium/drivers/r600/compute_memory_pool.c
> @@ -76,7 +76,7 @@ static void compute_memory_pool_init(struct compute_memory_pool * pool,
>         unsigned initial_size_in_dw)
>  {
>
> -       COMPUTE_DBG(pool->screen, "* compute_memory_pool_init() initial_size_in_dw = %ld\n",
> +       COMPUTE_DBG(pool->screen, "* compute_memory_pool_init() initial_size_in_dw = %u\n",
>                 initial_size_in_dw);
>
>         pool->size_in_dw = initial_size_in_dw;
> @@ -104,9 +104,9 @@ void compute_memory_pool_delete(struct compute_memory_pool* pool)
>   * \param size_in_dw   The size of the space we are looking for.
>   * \return -1 on failure
>   */
> -int64_t compute_memory_prealloc_chunk(
> +int compute_memory_prealloc_chunk(
>         struct compute_memory_pool* pool,
> -       int64_t size_in_dw)
> +       unsigned size_in_dw)
>  {
>         struct compute_memory_item *item;
>
> @@ -114,7 +114,7 @@ int64_t compute_memory_prealloc_chunk(
>
>         assert(size_in_dw <= pool->size_in_dw);
>
> -       COMPUTE_DBG(pool->screen, "* compute_memory_prealloc_chunk() size_in_dw = %ld\n",
> +       COMPUTE_DBG(pool->screen, "* compute_memory_prealloc_chunk() size_in_dw = %u\n",
>                 size_in_dw);
>
>         LIST_FOR_EACH_ENTRY(item, pool->item_list, link) {
> @@ -139,13 +139,13 @@ int64_t compute_memory_prealloc_chunk(
>   */
>  struct list_head *compute_memory_postalloc_chunk(
>         struct compute_memory_pool* pool,
> -       int64_t start_in_dw)
> +       int start_in_dw)
>  {
>         struct compute_memory_item *item;
>         struct compute_memory_item *next;
>         struct list_head *next_link;
>
> -       COMPUTE_DBG(pool->screen, "* compute_memory_postalloc_chunck() start_in_dw = %ld\n",
> +       COMPUTE_DBG(pool->screen, "* compute_memory_postalloc_chunck() start_in_dw = %i\n",
>                 start_in_dw);
>
>         /* Check if we can insert it in the front of the list */
> @@ -181,12 +181,12 @@ struct list_head *compute_memory_postalloc_chunk(
>   * \see compute_memory_finalize_pending
>   */
>  int compute_memory_grow_defrag_pool(struct compute_memory_pool *pool,
> -       struct pipe_context *pipe, int new_size_in_dw)
> +       struct pipe_context *pipe, unsigned new_size_in_dw)
>  {
>         new_size_in_dw = align(new_size_in_dw, ITEM_ALIGNMENT);
>
>         COMPUTE_DBG(pool->screen, "* compute_memory_grow_defrag_pool() "
> -               "new_size_in_dw = %d (%d bytes)\n",
> +               "new_size_in_dw = %u (%u bytes)\n",
>                 new_size_in_dw, new_size_in_dw * 4);
>
>         assert(new_size_in_dw >= pool->size_in_dw);
> @@ -274,17 +274,17 @@ int compute_memory_finalize_pending(struct compute_memory_pool* pool,
>  {
>         struct compute_memory_item *item, *next;
>
> -       int64_t allocated = 0;
> -       int64_t unallocated = 0;
> -       int64_t last_pos;
> +       unsigned allocated = 0;
> +       unsigned unallocated = 0;
> +       int last_pos;
>
>         int err = 0;
>
>         COMPUTE_DBG(pool->screen, "* compute_memory_finalize_pending()\n");
>
>         LIST_FOR_EACH_ENTRY(item, pool->item_list, link) {
> -               COMPUTE_DBG(pool->screen, "  + list: offset = %i id = %i size = %i "
> -                       "(%i bytes)\n",item->start_in_dw, item->id,
> +               COMPUTE_DBG(pool->screen, "  + list: offset = %i id = %u size = %u "
> +                       "(%u bytes)\n", item->start_in_dw, item->id,
>                         item->size_in_dw, item->size_in_dw * 4);
>         }
>
> @@ -347,7 +347,7 @@ void compute_memory_defrag(struct compute_memory_pool *pool,
>         struct pipe_context *pipe)
>  {
>         struct compute_memory_item *item;
> -       int64_t last_pos;
> +       int last_pos;
>
>         COMPUTE_DBG(pool->screen, "* compute_memory_defrag()\n");
>
> @@ -374,7 +374,7 @@ void compute_memory_defrag(struct compute_memory_pool *pool,
>   */
>  int compute_memory_promote_item(struct compute_memory_pool *pool,
>                 struct compute_memory_item *item, struct pipe_context *pipe,
> -               int64_t start_in_dw)
> +               int start_in_dw)
>  {
>         struct pipe_screen *screen = (struct pipe_screen *)pool->screen;
>         struct r600_context *rctx = (struct r600_context *)pipe;
> @@ -383,8 +383,8 @@ int compute_memory_promote_item(struct compute_memory_pool *pool,
>         struct pipe_box box;
>
>         COMPUTE_DBG(pool->screen, "* compute_memory_promote_item()\n"
> -                       "  + Promoting Item: %i , starting at: %u (%u bytes) "
> -                       "size: %u (%u bytes)\n\t\t\tnew start: %u (%u bytes)\n",
> +                       "  + Promoting Item: %u , starting at: %i (%i bytes) "
> +                       "size: %u (%u bytes)\n\t\t\tnew start: %i (%i bytes)\n",
>                         item->id, item->start_in_dw, item->start_in_dw * 4,
>                         item->size_in_dw, item->size_in_dw * 4,
>                         start_in_dw, start_in_dw * 4);
> @@ -430,7 +430,7 @@ void compute_memory_demote_item(struct compute_memory_pool *pool,
>         struct pipe_box box;
>
>         COMPUTE_DBG(pool->screen, "* compute_memory_demote_item()\n"
> -                       "  + Demoting Item: %i, starting at: %u (%u bytes) "
> +                       "  + Demoting Item: %u, starting at: %i (%i bytes) "
>                         "size: %u (%u bytes)\n", item->id, item->start_in_dw,
>                         item->start_in_dw * 4, item->size_in_dw, item->size_in_dw * 4);
>
> @@ -479,7 +479,7 @@ void compute_memory_demote_item(struct compute_memory_pool *pool,
>   */
>  void compute_memory_move_item(struct compute_memory_pool *pool,
>         struct pipe_resource *src, struct pipe_resource *dst,
> -       struct compute_memory_item *item, uint64_t new_start_in_dw,
> +       struct compute_memory_item *item, int new_start_in_dw,
>         struct pipe_context *pipe)
>  {
>         struct pipe_screen *screen = (struct pipe_screen *)pool->screen;
> @@ -489,7 +489,7 @@ void compute_memory_move_item(struct compute_memory_pool *pool,
>         struct compute_memory_item *prev;
>
>         COMPUTE_DBG(pool->screen, "* compute_memory_move_item()\n"
> -                       "  + Moving item %i from %u (%u bytes) to %u (%u bytes)\n",
> +                       "  + Moving item %u from %i (%i bytes) to %i (%i bytes)\n",
>                         item->id, item->start_in_dw, item->start_in_dw * 4,
>                         new_start_in_dw, new_start_in_dw * 4);
>
> @@ -530,7 +530,7 @@ void compute_memory_move_item(struct compute_memory_pool *pool,
>                         /* The allocation of the temporary resource failed,
>                          * falling back to use mappings */
>                         uint32_t *map;
> -                       int64_t offset;
> +                       int offset;
>                         struct pipe_transfer *trans;
>
>                         offset = item->start_in_dw - new_start_in_dw;
> @@ -556,13 +556,13 @@ void compute_memory_move_item(struct compute_memory_pool *pool,
>   * Frees the memory asociated to the item with id \a id from the pool.
>   * \param id   The id of the item to be freed.
>   */
> -void compute_memory_free(struct compute_memory_pool* pool, int64_t id)
> +void compute_memory_free(struct compute_memory_pool* pool, unsigned id)
>  {
>         struct compute_memory_item *item, *next;
>         struct pipe_screen *screen = (struct pipe_screen *)pool->screen;
>         struct pipe_resource *res;
>
> -       COMPUTE_DBG(pool->screen, "* compute_memory_free() id + %ld \n", id);
> +       COMPUTE_DBG(pool->screen, "* compute_memory_free() id + %u \n", id);
>
>         LIST_FOR_EACH_ENTRY_SAFE(item, next, pool->item_list, link) {
>
> @@ -603,7 +603,7 @@ void compute_memory_free(struct compute_memory_pool* pool, int64_t id)
>                 }
>         }
>
> -       fprintf(stderr, "Internal error, invalid id %"PRIi64" "
> +       fprintf(stderr, "Internal error, invalid id %u "
>                 "for compute_memory_free\n", id);
>
>         assert(0 && "error");
> @@ -618,11 +618,11 @@ void compute_memory_free(struct compute_memory_pool* pool, int64_t id)
>   */
>  struct compute_memory_item* compute_memory_alloc(
>         struct compute_memory_pool* pool,
> -       int64_t size_in_dw)
> +       unsigned size_in_dw)
>  {
>         struct compute_memory_item *new_item = NULL;
>
> -       COMPUTE_DBG(pool->screen, "* compute_memory_alloc() size_in_dw = %ld (%ld bytes)\n",
> +       COMPUTE_DBG(pool->screen, "* compute_memory_alloc() size_in_dw = %u (%u bytes)\n",
>                         size_in_dw, 4 * size_in_dw);
>
>         new_item = (struct compute_memory_item *)
> @@ -658,9 +658,9 @@ void compute_memory_transfer(
>         int offset_in_chunk,
>         int size)
>  {
> -       int64_t aligned_size = pool->size_in_dw;
> +       unsigned aligned_size = pool->size_in_dw;
>         struct pipe_resource* gart = (struct pipe_resource*)pool->bo;
> -       int64_t internal_offset = chunk->start_in_dw*4 + offset_in_chunk;
> +       int internal_offset = chunk->start_in_dw*4 + offset_in_chunk;
>
>         struct pipe_transfer *xfer;
>         uint32_t *map;
> diff --git a/src/gallium/drivers/r600/compute_memory_pool.h b/src/gallium/drivers/r600/compute_memory_pool.h
> index 161ddd5..31b41f8 100644
> --- a/src/gallium/drivers/r600/compute_memory_pool.h
> +++ b/src/gallium/drivers/r600/compute_memory_pool.h
> @@ -38,14 +38,14 @@ struct compute_memory_pool;
>
>  struct compute_memory_item
>  {
> -       int64_t id;             /**< ID of the memory chunk */
> +       unsigned id;            /**< ID of the memory chunk */
>
>         uint32_t status;        /**< Will track the status of the item */
>
>         /** Start pointer in dwords relative in the pool bo. If an item
>          * is unallocated, then this value must be -1 to indicate this. */
> -       int64_t start_in_dw;
> -       int64_t size_in_dw;     /**< Size of the chunk in dwords */
> +       int start_in_dw;
> +       unsigned size_in_dw;    /**< Size of the chunk in dwords */
>
>         /** Intermediate buffer asociated with an item. It is used mainly for mapping
>          * items against it. They are listed in the pool's unallocated list */
> @@ -58,8 +58,8 @@ struct compute_memory_item
>
>  struct compute_memory_pool
>  {
> -       int64_t next_id;        /**< For generating unique IDs for memory chunks */
> -       int64_t size_in_dw;     /**< Size of the pool in dwords */
> +       unsigned next_id;       /**< For generating unique IDs for memory chunks */
> +       unsigned size_in_dw;    /**< Size of the pool in dwords */
>
>         struct r600_resource *bo;       /**< The pool buffer object resource */
>         struct r600_screen *screen;
> @@ -86,14 +86,14 @@ struct compute_memory_pool* compute_memory_pool_new(struct r600_screen *rscreen)
>
>  void compute_memory_pool_delete(struct compute_memory_pool* pool);
>
> -int64_t compute_memory_prealloc_chunk(struct compute_memory_pool* pool,
> -       int64_t size_in_dw);
> +int compute_memory_prealloc_chunk(struct compute_memory_pool* pool,
> +       unsigned size_in_dw);
>
>  struct list_head *compute_memory_postalloc_chunk(struct compute_memory_pool* pool,
> -       int64_t start_in_dw);
> +       int start_in_dw);
>
>  int compute_memory_grow_defrag_pool(struct compute_memory_pool* pool,
> -       struct pipe_context *pipe, int new_size_in_dw);
> +       struct pipe_context *pipe, unsigned new_size_in_dw);
>
>  void compute_memory_shadow(struct compute_memory_pool* pool,
>         struct pipe_context *pipe, int device_to_host);
> @@ -107,20 +107,20 @@ void compute_memory_defrag(struct compute_memory_pool *pool,
>
>  int compute_memory_promote_item(struct compute_memory_pool *pool,
>         struct compute_memory_item *item, struct pipe_context *pipe,
> -       int64_t allocated);
> +       int start_in_dw);
>
>  void compute_memory_demote_item(struct compute_memory_pool *pool,
>         struct compute_memory_item *item, struct pipe_context *pipe);
>
>  void compute_memory_move_item(struct compute_memory_pool *pool,
>         struct pipe_resource *src, struct pipe_resource *dst,
> -       struct compute_memory_item *item, uint64_t new_start_in_dw,
> +       struct compute_memory_item *item, int new_start_in_dw,
>         struct pipe_context *pipe);
>
> -void compute_memory_free(struct compute_memory_pool* pool, int64_t id);
> +void compute_memory_free(struct compute_memory_pool* pool, unsigned id);
>
>  struct compute_memory_item* compute_memory_alloc(struct compute_memory_pool* pool,
> -       int64_t size_in_dw);
> +       unsigned size_in_dw);
>
>  void compute_memory_transfer(struct compute_memory_pool* pool,
>         struct pipe_context * pipe, int device_to_host,
> --
> 2.0.3
>
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/mesa-dev


More information about the mesa-dev mailing list