anv/cmd_buffer: fix push descriptors with set > 0
authorLionel Landwerlin <lionel.g.landwerlin@intel.com>
Wed, 27 Sep 2017 13:16:04 +0000 (14:16 +0100)
committerLionel Landwerlin <lionel.g.landwerlin@intel.com>
Fri, 6 Oct 2017 16:32:13 +0000 (17:32 +0100)
commitd296dea54e243c41c2b3fbe631f7bcb87db6ae8c
treee36cd466a0f2ba163ffdd6a5dcefdcba3562af23
parentb24b93d58431a4349eecddb07304f6eda648e997
anv/cmd_buffer: fix push descriptors with set > 0

When writing to set > 0, we were just wrongly writing to set 0. This
commit fixes this by lazily allocating each set as we write to them.

We didn't go for having them directly into the command buffer as this
would require an additional ~45Kb per command buffer.

v2: Allocate push descriptors from system memory rather than in BO
    streams. (Lionel)

Cc: "17.2 17.1" <mesa-stable@lists.freedesktop.org>
Fixes: 9f60ed98e501 ("anv: add VK_KHR_push_descriptor support")
Reported-by: Daniel Ribeiro Maciel <daniel.maciel@gmail.com>
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
src/intel/vulkan/anv_cmd_buffer.c
src/intel/vulkan/anv_private.h