zink: clamp tbo creation to maxTexelBufferElements
for sparse buffers, the total buffer size will be huge, so this needs to only be the limit that the driver can support to avoid crashing or whatever cc: mesa-stable Reviewed-by: Dave Airlie <airlied@redhat.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14692>
This commit is contained in:
committed by
Marge Bot
parent
fa74a6c554
commit
27d405dc2f
@@ -656,6 +656,9 @@ create_bvci(struct zink_context *ctx, struct zink_resource *res, enum pipe_forma
|
||||
assert(bvci.format);
|
||||
bvci.offset = offset;
|
||||
bvci.range = !offset && range == res->base.b.width0 ? VK_WHOLE_SIZE : range;
|
||||
uint32_t clamp = util_format_get_blocksize(format) * screen->info.props.limits.maxTexelBufferElements;
|
||||
if (bvci.range == VK_WHOLE_SIZE && res->base.b.width0 > clamp)
|
||||
bvci.range = clamp;
|
||||
bvci.flags = 0;
|
||||
return bvci;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user