[Mesa-dev] [PATCH 00/18] anv: Rework the allocation data structures
Mike Lothian
mike at fireburn.co.uk
Fri May 5 12:36:28 UTC 2017
I'm seeing the following failure with GCC 7.1:
/var/tmp/portage/media-libs/mesa-9999/work/mesa-9999/src/intel/vulkan/anv_allocator.c:
In function ‘anv_state_stream_alloc’:
/var/tmp/portage/media-libs/mesa-9999/work/mesa-9999/src/intel/vulkan/anv_allocator.c:930:28:
error: ‘struct anv_state_stream_block’ has no member named ‘_vg_ptr’
VG_NOACCESS_WRITE(&sb->_vg_ptr, NULL);
^
/var/tmp/portage/media-libs/mesa-9999/work/mesa-9999/src/intel/vulkan/anv_allocator.c:53:44:
note: in definition of macro ‘VG_NOACCESS_WRITE’
#define VG_NOACCESS_WRITE(__ptr, __val) (*(__ptr) = (__val))
^~~~~
At top level:
/var/tmp/portage/media-libs/mesa-9999/work/mesa-9999/src/intel/vulkan/anv_allocator.c:1214:1:
warning: ‘anv_bo_cache_lookup’ defined but not used [-Wunused-function]
anv_bo_cache_lookup(struct anv_bo_cache *cache, uint32_t gem_handle)
^~~~~~~~~~~~~~~~~~~
On Thu, 4 May 2017 at 09:09 Juan A. Suarez Romero <jasuarez at igalia.com>
wrote:
> On Tue, 2017-05-02 at 06:44 -0700, Jason Ekstrand wrote:
> > Juan,
> >
> > Were you planning to review the rest of the series? Just wondering.
> >
>
> Sorry, it took a bit more to review the remaining patches.
>
> Now it is done.
>
>
> J.A.
>
> > --Jason
> >
> >
> > On April 26, 2017 7:35:29 AM Jason Ekstrand <jason at jlekstrand.net>
> wrote:
> >
> > > This absurdly long series does something fairly simple: It pulls the
> > > block_pool into the state_pool and makes the state pool capable of
> > > allocating states larger than the block size. Unfortunately, there
> was no
> > > good way to do it in less than 18 patches. :-(
> > >
> > > Cc: Juan A. Suarez Romero <jasuarez at igalia.com>
> > >
> > > Jason Ekstrand (18):
> > > anv/allocator: Add no-valgrind versions of state_pool_alloc/free
> > > anv/allocator: Return a null state for zero-size allocations
> > > anv/allocator: Convert the state stream to pull from a state pool
> > > anv: Get rid of a bunch of uses of size_t
> > > anv/allocator: Remove the state_size field from fixed_size_state_pool
> > > anv/allocator: Roll fixed_size_state_pool into state_pool
> > > anv/allocator: Pull the userptr part of block_pool_grow into a helper
> > > anv/allocator: Drop the block_size field from block_pool
> > > anv/allocator: Add support for "back" allocations to state_pool
> > > anv: Allocate binding table blocks through the state pool
> > > anv/allocator: Get rid of the ability to free blocks
> > > anv/allocator: Embed the block_pool in the state_pool
> > > anv/allocator: Rework a comment
> > > anv/allocator: Add the capability to allocate blocks of different
> > > sizes
> > > anv/allocator: Add helpers for dealing with bucket sizes
> > > anv/allocator: Support pushing multiple blocks onto a free list at
> > > once
> > > anv/allocator: Allow state pools to allocate large states
> > > anv: Drop the instruction pool block size
> > >
> > > src/intel/vulkan/anv_allocator.c | 589
> ++++++++++++---------
> > > src/intel/vulkan/anv_batch_chain.c | 84 ++-
> > > src/intel/vulkan/anv_blorp.c | 4 +-
> > > src/intel/vulkan/anv_cmd_buffer.c | 8 +-
> > > src/intel/vulkan/anv_descriptor_set.c | 4 +-
> > > src/intel/vulkan/anv_device.c | 26 +-
> > > src/intel/vulkan/anv_gem.c | 2 +-
> > > src/intel/vulkan/anv_gem_stubs.c | 2 +-
> > > src/intel/vulkan/anv_private.h | 74 +--
> > > src/intel/vulkan/gen8_cmd_buffer.c | 6 +-
> > > src/intel/vulkan/genX_blorp_exec.c | 2 +-
> > > src/intel/vulkan/genX_cmd_buffer.c | 15 +-
> > > src/intel/vulkan/tests/block_pool_no_free.c | 8 +-
> > > src/intel/vulkan/tests/state_pool.c | 5 +-
> > > src/intel/vulkan/tests/state_pool_free_list_only.c | 5 +-
> > > src/intel/vulkan/tests/state_pool_no_free.c | 5 +-
> > > 16 files changed, 461 insertions(+), 378 deletions(-)
> > >
> > > --
> > > 2.5.0.400.gff86faf
> > >
> >
> >
> >
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/mesa-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/mesa-dev/attachments/20170505/a61bd83c/attachment-0001.html>
More information about the mesa-dev
mailing list