mesa/src
Danylo Piliaiev 3f9a6011a6 iris: Fix value of out-of-bounds accesses for vertex attributes
Having VERTEX_BUFFER_STATE.BufferSize greater than the size of
a bound vertex buffer allows shader to read uninitialized vertex
attributes from BO, instead of allowing hardware to return zeroes
on out-of-bounds access.

OpenGL spec "6.4 Effects of Accessing Outside Buffer Bounds" says:

"Robust buffer access can be enabled by creating a context with robust access
 enabled through the window system binding APIs. When enabled, any command
 unable to generate a GL error as described above, such as buffer object accesses
 from the active program, will not read or modify memory outside of the data
 store of the buffer object and will not result in GL interruption or termination.
 Out-of-bounds reads may return values from within the buffer object or zero
 values."

Fixes three webgl tests:
 conformance/rendering/out-of-bounds-array-buffers.html
 conformance2/rendering/out-of-bounds-index-buffers-after-copying.html
 conformance2/rendering/element-index-uint.html

See #1996

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: Danylo Piliaiev <danylo.piliaiev@globallogic.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3427>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3427>
2020-01-21 09:52:40 +00:00
..
amd ac: add helper ac_build_triangle_strip_indices_to_triangle 2020-01-20 16:16:11 -05:00
broadcom nir/lower_atomics_to_ssbo: Also lower barriers 2020-01-13 17:23:47 +00:00
compiler nir: Fix printing of ~0 .locations. 2020-01-16 23:29:10 +00:00
drm-shim drm-shim: fix EOF case 2019-11-13 12:39:14 +00:00
egl egl/android: Restrict minimum triple buffering for android color_buffers 2020-01-15 09:42:08 +00:00
etnaviv etnaviv: add drm-shim 2019-11-21 22:56:04 +00:00
freedreno turnip: fix invalid VK_ERROR_OUT_OF_POOL_MEMORY 2020-01-21 10:29:16 +01:00
gallium iris: Fix value of out-of-bounds accesses for vertex attributes 2020-01-21 09:52:40 +00:00
gbm meson: move the generic symbols check arguments to a common variable 2019-11-05 20:30:47 +00:00
getopt meson: build getopt when using msvc 2019-09-10 20:36:47 +00:00
glx dri: Avoid swapbuffer throttling in glXCopySubBufferMESA 2019-10-05 13:19:37 +00:00
gtest meson: gtest needs pthreads 2019-11-07 06:11:19 -08:00
hgl haiku: fix Mesa build 2019-10-01 10:31:02 +00:00
imgui meson: drop intel_ prefix on imgui_core 2019-12-10 15:16:02 +00:00
intel anv: Allow enumerating multiple physical devices 2020-01-20 22:08:52 +00:00
loader intel: Use similar brand strings to the Windows drivers 2020-01-13 19:42:35 -08:00
mapi glapi / teximage: implement EGLImageTargetTexStorageEXT 2020-01-13 14:57:18 -08:00
mesa Revert "gallium: add st_context_iface::flush_resource to call FLUSH_VERTICES" 2020-01-20 12:33:29 +00:00
panfrost pan/midgard: Fix recursive csel scheduling 2020-01-18 14:40:05 +00:00
util util/vector: Fix u_vector_foreach when head rolls over 2020-01-17 22:21:00 +00:00
vulkan vulkan/wsi: Implement VK_KHR_swapchain_mutable_format 2020-01-17 18:27:29 +00:00
meson.build meson: only build imgui when needed 2019-11-25 07:51:56 +00:00
SConscript