Mesa (master): anv: increase ANV_MAX_STATE_SIZE_LOG2 limit to 1 MB

Samuel Iglesias Gonsálvez samuelig at kemper.freedesktop.org
Tue Jan 17 05:43:28 UTC 2017


Module: Mesa
Branch: master
Commit: ff0dd67d2f9fc7cc240da732153ac4fac4e8d04d
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=ff0dd67d2f9fc7cc240da732153ac4fac4e8d04d

Author: Samuel Iglesias Gonsálvez <siglesias at igalia.com>
Date:   Tue Jan 10 12:44:32 2017 +0100

anv: increase ANV_MAX_STATE_SIZE_LOG2 limit to 1 MB

Fixes crash in dEQP-VK.ubo.random.all_shared_buffer.48 due to a
fragment shader code bigger than 128 kB.

This patch increases the allocation size limit to 1 MB.

v2:
- Increase it to 1 MB (Jason)
- Increase device->instruction_block_pool allocation size in
  anv_device.c (Jason)

Signed-off-by: Samuel Iglesias Gonsálvez <siglesias at igalia.com>
Reviewed-by: Jason Ekstrand <jason at jlekstrand.net>

---

 src/intel/vulkan/anv_device.c  | 2 +-
 src/intel/vulkan/anv_private.h | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/intel/vulkan/anv_device.c b/src/intel/vulkan/anv_device.c
index 6349537..f80a36a 100644
--- a/src/intel/vulkan/anv_device.c
+++ b/src/intel/vulkan/anv_device.c
@@ -948,7 +948,7 @@ VkResult anv_CreateDevice(
    anv_state_pool_init(&device->dynamic_state_pool,
                        &device->dynamic_state_block_pool);
 
-   anv_block_pool_init(&device->instruction_block_pool, device, 128 * 1024);
+   anv_block_pool_init(&device->instruction_block_pool, device, 1024 * 1024);
    anv_state_pool_init(&device->instruction_state_pool,
                        &device->instruction_block_pool);
 
diff --git a/src/intel/vulkan/anv_private.h b/src/intel/vulkan/anv_private.h
index 17b7236..75f2bde 100644
--- a/src/intel/vulkan/anv_private.h
+++ b/src/intel/vulkan/anv_private.h
@@ -388,7 +388,7 @@ struct anv_fixed_size_state_pool {
 };
 
 #define ANV_MIN_STATE_SIZE_LOG2 6
-#define ANV_MAX_STATE_SIZE_LOG2 17
+#define ANV_MAX_STATE_SIZE_LOG2 20
 
 #define ANV_STATE_BUCKETS (ANV_MAX_STATE_SIZE_LOG2 - ANV_MIN_STATE_SIZE_LOG2 + 1)
 




More information about the mesa-commit mailing list