summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* docs: Add release notes for 19.0.2mesa-19.0.2Dylan Baker2019-04-101-0/+121
|
* VERSION: bump version for 19.0.2Dylan Baker2019-04-101-1/+1
|
* st/va: reverse qt matrix back to its original orderBoyuan Zhang2019-04-091-6/+32
| | | | | | | | | | | | | The quantiser matrix that VAAPI provides has been applied with inverse z-scan. However, what we expect in MPEG2 picture description is the original order. Therefore, we need to reverse it back to its original order. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=110257 Cc: [email protected] Signed-off-by: Boyuan Zhang <[email protected]> Acked-by: Alex Deucher <[email protected]> (cherry picked from commit d507bcdcf26b417dea201090165af651253b6b11)
* intel: add dependency on genxml generated filesLionel Landwerlin2019-04-096-5/+7
| | | | | | | | | | | | | | | Drivers using genxml will start compilation before generated files are created, so add a dependency to it. Signed-off-by: Lionel Landwerlin <[email protected]> Reviewed-by: Eric Engestrom <[email protected]> Reviewed-by: Dylan Baker <[email protected]> Cc: [email protected] (cherry picked from commit 48e48b8560ae6ad1728ced54f8f8f5245b3e99cf) Conflicts resolved by Dylan Conflicts: src/gallium/drivers/iris/meson.build
* nir: Take if_uses into account when repairing SSACaio Marcelo de Oliveira Filho2019-04-081-0/+18
| | | | | | | | | | | | | | | | If a def is used as an condition before its definition, we should also consider this a case to repair. When repairing, make sure we rewrite any if conditions too. Found in while inspecting a SPIR-V conversion from a 'continue block' that contains a conditional branch. We pull the continue block up to the beggining of the loop, and the condition in the branch ends up defined afterwards. Reviewed-by: Kenneth Graunke <[email protected]> Reviewed-by: Jason Ekstrand <[email protected]> Fixes: 364212f1ede4b "nir: Add a pass to repair SSA form" (cherry picked from commit c037dbb0efad573aab1467befd35d2c4f4cdbbce)
* v3d: Don't try to use the TFU blit path if a scissor is enabled.Eric Anholt2019-04-051-1/+2
| | | | | | | | | | We'll need to do a render-based blit for scissors, since the TFU (as seen in this conditional) can only update a whole surface. Fixes: 976ea90bdca2 ("v3d: Add support for using the TFU to do some blits.") Fixes piglit fbo-scissor-blit. (cherry picked from commit 4c70f276bc043f5d1a7647b8fbbb41100e051e69)
* v3d: Bump the maximum texture size to 4k for V3D 4.x.Eric Anholt2019-04-055-5/+33
| | | | | | | | 4.1 and 4.2 both have the same 16k limit, but it I'm seeing GPU hangs in the CTS at 8k and 16k. 4k at least lets us get one 4k display working. Cc: [email protected] (cherry picked from commit 62360e92ec97d59389330a5aeb070416523da774)
* dri3: Return the current swap interval from glXGetSwapIntervalMESA().Eric Anholt2019-04-022-3/+1
| | | | | | | | | | We were caching only the value set with glXSwapIntervalSGI(), missing out on the default setting of the swap interval by the loader. This fixes glxgears's warning about being vblank synchronized by default. Fixes: 9777c4234b0e ("loader: drop the [gs]et_swap_interval callbacks") Reviewed-by: Ian Romanick <[email protected]> (cherry picked from commit edc7deec42bc5f97d0eae9f910d79c6bc31e05ce)
* radeonsi: fix assertion failure by using the correct typeMarek Olšák2019-04-011-1/+1
| | | | | | | | | | | src/gallium/drivers/radeonsi/si_state_viewport.c:196: si_emit_guardband: Assertion `vp_as_scissor.maxx <= max_viewport_size[vp_as_scissor.quant_mode] && vp_as_scissor.maxy <= max_viewport_size[vp_as_scissor.quant_mode]' failed. The comparison was unsigned, so negative maxx or maxy would fail. Fixes: 3c540e0a7488 "radeonsi: Fix guardband computation for large render targets" (cherry picked from commit 3ad2a9b3faa19e29fe1c2a28c712f265ee29423b)
* radeon/vcn/vp9: search the render target from the whole listLeo Liu2019-04-011-1/+1
| | | | | | | | | | | | | | The number of render targets could be more than max of references, so we search the full list of the render pictures for the current render target index https://bugs.freedesktop.org/show_bug.cgi?id=109648 Signed-off-by: Leo Liu <[email protected]> Tested-by: James Zhu <[email protected]> Acked-by: James Zhu<[email protected]> Cc: <[email protected]> (cherry picked from commit d4e0fbc92fd08be504f328144c874da47b78e5dc)
* meson: strip rpath from megadriversEric Engestrom2019-04-016-1/+13
| | | | | | | | | | | More specifically, use the library file that has been post-processed by Meson when creating the hardlinks. Bugs: https://bugs.freedesktop.org/show_bug.cgi?id=108766 Fixes: 3218056e0eb375eeda47 "meson: Build i965 and dri stack" Signed-off-by: Eric Engestrom <[email protected]> Reviewed-by: Dylan Baker <[email protected]> (cherry picked from commit aa7afe324c2092fb31f9498cb3eda47dda96e6f2)
* nir/print: fix printing the image_array intrinsic indexKarol Herbst2019-03-291-2/+2
| | | | | | | | Fixes: 0de003be0363 ("nir: Add handle/index-based image intrinsics") Signed-off-by: Karol Herbst <[email protected]> Reviewed-by: Jason Ekstrand <[email protected]> (cherry picked from commit 6ffc72472cc15368f95b18c1362298dd651bc7f1)
* radv: do not always initialize HTILE in compressed stateSamuel Pitoiset2019-03-291-2/+8
| | | | | | | | | | | | | Especially when performing a transtion from UNDEFINED->GENERAL, the driver shouldn't initialize HTILE metadata in compressed state because it doesn't decompress when the src layout is GENERAL. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=110259 Fixes: 3a2e93147f7 ("radv: always initialize HTILE when the src layout is UNDEFINED") Signed-off-by: Samuel Pitoiset <[email protected]> Reviewed-by: Bas Nieuwenhuizen <[email protected]> (cherry picked from commit 62a9d757e6074215c145c9637014d9acb16d865d)
* radv: skip updating depth/color metadata for conditional renderingSamuel Pitoiset2019-03-281-3/+3
| | | | | | | | | | | | | I don't think we should update metadata when conditional rendering is enabled. For some reasons, some CTS breaks only on SI. This fixes the following CTS on SI: dEQP-VK.conditional_rendering.draw_clear.clear.depth.* Cc: 19.0 <[email protected]> Signed-off-by: Samuel Pitoiset <[email protected]> Reviewed-by: Bas Nieuwenhuizen <[email protected]> (cherry picked from commit 6596eb2b3080e8858bee3d89041df068333c250a)
* radeon/vcn: add H.264 constrained baseline supportLeo Liu2019-03-281-0/+1
| | | | | | | | | VCN supports this profile as well as UVD, so add it Signed-off-by: Leo Liu <[email protected]> Reviewed-by: Alex Deucher <[email protected]> CC: <[email protected]> (cherry picked from commit f8ef8b56a6d2f40772678eabd5d20f14081ad23b)
* Revert "anv/radv: release memory allocated by glsl types during spirv_to_nir"Jason Ekstrand2019-03-272-4/+0
| | | | | | | | | | This reverts commit 4e1bbb000cdfe4ba01bee5a6868c54fed7285dae. It turns out that some DXVK apps due to some implementation detail of DXVK or other create and destroy instances in an interleaved way. Freeing the glsl_type memory without being a bit more careful causes use-after-free issues. Looks like we need to try again. (cherry picked from commit ce47999ceed7efe010a1b6cc592780514803670a)
* docs: Add SHA256 sums for mesa 19.0.1Dylan Baker2019-03-271-1/+2
|
* Add release notes for 19.0.1mesa-19.0.1Dylan Baker2019-03-271-0/+158
|
* bump version for 19.0.1Dylan Baker2019-03-271-1/+1
|
* ac/nir: Return frag_coord as integer.Bas Nieuwenhuizen2019-03-261-1/+2
| | | | | | | | | | To preserve the invariant that nir ssa defs are integers or pointers in LLVM. CC: <[email protected]> Reviewed-by: Timothy Arceri <[email protected]> Reviewed-by: Dave Airlie <[email protected]> (cherry picked from commit 82075e3c421b1de7661e61879f2dcbc66011e466)
* bin/install_megadrivers.py: Fix regression for set DESTDIRDylan Baker2019-03-251-1/+5
| | | | | | | | | | | | | The previous patch tried to address a bug when DESTDIR is '', however, it introduces a bug when DESTDIR is not '', and fakeroot is used. This patch does fix that, and has been tested with the arch pkg-build to ensure it isn't regressed. Fixes: 093a1ade4e24b7dd701a093d30a71efd669fe9c8 ("bin/install_megadrivers.py: Correctly handle DESTDIR=''") Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=110221 Reviewed-by: Eric Engestrom <[email protected]> (cherry picked from commit ed96038e55b37501dae0be09287a6209a966eb85)
* bin/install_megadrivers.py: Correctly handle DESTDIR=''Dylan Baker2019-03-251-1/+1
| | | | | | | | | | | | | | | Currently if destdir is set to '' then the resulting libdir will have it's first character replaced by / instead of / being prepended to the string. This was the result of ensuring that that DESTDIR wouldn't be ignored if libdir was absolute, since the only cases that meson allows the libdir to be absolute is if the prefix is /, this won't be a problem. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=110211 Fixes: ae3f45c11e3f934939b90445471da8f18b057bc5 ("bin/install_megadrivers: fix DESTDIR and -D*-path") Reviewed-by: Eric Engestrom <[email protected]> (cherry picked from commit 4188dd7879a374b698d5f50c84cd26b2606f1ee3)
* mesa: Fix GL_NUM_DEVICE_UUIDS_EXTJózef Kucia2019-03-221-0/+3
| | | | | | Cc: [email protected] Reviewed-by: Tapani Pälli <[email protected]> (cherry picked from commit 1d996ef7144f97ce948fb8e8ec5792898bea56f6)
* anv/radv: release memory allocated by glsl types during spirv_to_nirTapani Pälli2019-03-222-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | Fixes leaks for each glsl_type generated: ==32470== 384 bytes in 3 blocks are possibly lost in loss record 18 of 18 ==32470== at 0x483880B: malloc (vg_replace_malloc.c:309) ==32470== by 0x4C43F4A: ralloc_size (ralloc.c:119) ==32470== by 0x4C44014: rzalloc_size (ralloc.c:151) ==32470== by 0x4C44258: rzalloc_array_size (ralloc.c:215) ==32470== by 0x4D38957: glsl_type::glsl_type(glsl_struct_field const*, unsigned int, char const*) (glsl_types.cpp:114) ==32470== by 0x4D3BEED: glsl_type::get_struct_instance(glsl_struct_field const*, unsigned int, char const*) (glsl_types.cpp:1146) ==32470== by 0x4D42ECC: glsl_struct_type (nir_types.cpp:501) ==32470== by 0x4CDB5A1: vtn_handle_type (spirv_to_nir.c:1269) ==32470== by 0x4CE53DD: vtn_handle_variable_or_type_instruction (spirv_to_nir.c:4018) ==32470== by 0x4CD8CFF: vtn_foreach_instruction (spirv_to_nir.c:365) ==32470== by 0x4CE5E6B: spirv_to_nir (spirv_to_nir.c:4490) ==32470== by 0x497AF10: anv_shader_compile_to_nir (anv_pipeline.c:173) v2: move release call to vkDestroyInstance v3: apply fix also to radv driver Signed-off-by: Tapani Pälli <[email protected]> Cc: [email protected] Reviewed-by: Jason Ekstrand <[email protected]> (cherry picked from commit 4e1bbb000cdfe4ba01bee5a6868c54fed7285dae)
* radv: Fix driverUUIDJózef Kucia2019-03-221-1/+1
| | | | | | | Fixes: 14cad8786a8 ("radv: generate the same driver UUID as radeonsi") Reviewed-by: Emil Velikov <[email protected]> Reviewed-by: Samuel Pitoiset <[email protected]> (cherry picked from commit c077d5d7de7628fe2fdfa67cee92efaab65a578e)
* glsl: Cross validate variable's invariance by explicit invariance onlyDanylo Piliaiev2019-03-227-9/+30
| | | | | | | | | | | | | | | | | | | 'invariant' qualifier is propagated on variables which are used to calculate other invariant variables, however when we are matching variable's declarations we should take into account only explicitly declared invariance because invariance propagation is an implementation specific detail. Thus new flag is added to ir_variable_data which indicates 'invariant' qualifier being explicitly set in the shader. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=100316 Fixes: 89b60492 ('glsl: Add a pass to propagate the "invariant" and "precise" qualifiers') Signed-off-by: Danylo Piliaiev <[email protected]> Reviewed-by: Jordan Justen <[email protected]> (cherry picked from commit ea9bde151f1394ff82b73d028c2a3a747723e525)
* softpipe: fix texture view crashesDave Airlie2019-03-221-5/+6
| | | | | | | | | | | | | | | | I noticed we crashed piglit arb_texture_view-rendering-formats when run on softpipe. This fixes the clear tiles to use the surface format not the underlying storage format. This fixes a bunch of srgb piglits as well. Fixes: 396ac41fc28 (softpipe: add integer support) Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Roland Scheidegger <[email protected]> (cherry picked from commit 04189565a01afbecc179fb4945a80754ee6fcfb4)
* intel/nir: Lower array-deref-of-vector UBO and SSBO loadsJason Ekstrand2019-03-201-0/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This fixes a serious performance issue with DXVK: https://github.com/doitsujin/dxvk/issues/937 This was caused by a recent change that to improve performance on RADV which back-fired on ANV and killed performance for some apps: https://github.com/doitsujin/dxvk/commit/e5a06d3f4a103a54cd4eb51970fedee405d1d698 Throwing in this bit of lowering lets us come along and CSE those UBO loads (or copy-prop for SSBO load) and get one load where we previously would have gotten several. VkPipeline-db results on Kaby Lake: total instructions in shared programs: 5115361 -> 5073185 (-0.82%) instructions in affected programs: 1754333 -> 1712157 (-2.40%) helped: 5331 HURT: 63 total cycles in shared programs: 2544501169 -> 2481144545 (-2.49%) cycles in affected programs: 2531058653 -> 2467702029 (-2.50%) helped: 9202 HURT: 4323 total loops in shared programs: 3340 -> 3331 (-0.27%) loops in affected programs: 9 -> 0 helped: 9 HURT: 0 total spills in shared programs: 3246 -> 3053 (-5.95%) spills in affected programs: 384 -> 191 (-50.26%) helped: 10 HURT: 5 total fills in shared programs: 4626 -> 4452 (-3.76%) fills in affected programs: 439 -> 265 (-39.64%) helped: 10 HURT: 5 All of the shaders with hurt spilling were in Rise of the Tomb Raider which also had shaders solidly helped in the spilling department. Not shown in those results (because I've not had success dumping the shaders) is Witcher 3 where this reduces spilling and improves over-all perf by around 20-25%. There were no shader-db changes. Apparently, this just isn't a pattern that happens in OpenGL. Reviewed-by: Caio Marcelo de Oliveira Filho <[email protected]> Cc: "19.0" [email protected] (cherry picked from commit d3386e73c5976ecec84821d17f05c2fd4b823880) Conflicts resolved by Dylan
* radv: fix binding transform feedback buffersSamuel Pitoiset2019-03-201-1/+1
| | | | | | | | | | | | | The mask should be accumulated if two calls are used for binding two buffers at different indexes. Otherwise, the driver only accounts for the last one. Noticed while glancing at this code. Cc: 18.3 19.0 <[email protected]> Signed-off-by: Samuel Pitoiset <[email protected]> Reviewed-by: Bas Nieuwenhuizen <[email protected]> (cherry picked from commit 4fa61273a8c8809a9ca0a1473b5e361aa5715ae0)
* Revert "glsl: relax input->output validation for SSO programs"Andres Gomez2019-03-191-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 1aa5738e666a9534c7e5b46f077327e6d647c64f. This patch incorrectly asumed that for SSOs no inner interface matching check was needed. From the ARB_separate_shader_objects spec v.25: " With separable program objects, interfaces between shader stages may involve the outputs from one program object and the inputs from a second program object. For such interfaces, it is not possible to detect mismatches at link time, because the programs are linked separately. When each such program is linked, all inputs or outputs interfacing with another program stage are treated as active. The linker will generate an executable that assumes the presence of a compatible program on the other side of the interface. If a mismatch between programs occurs, no GL error will be generated, but some or all of the inputs on the interface will be undefined." This completes the fix from commit: 3be05dd2679 ("glsl/linker: don't fail non static used inputs without matching outputs") Fixes: 1aa5738e666 ("glsl: relax input->output validation for SSO programs") Cc: Tapani Pälli <[email protected]> Cc: Timothy Arceri <[email protected]> Cc: Ilia Mirkin <[email protected]> Cc: Samuel Iglesias Gonsálvez <[email protected]> Cc: Ian Romanick <[email protected]> Signed-off-by: Andres Gomez <[email protected]> Reviewed-by: Timothy Arceri <[email protected]> (cherry picked from commit ab28dca0334746d1d6cb3f1b18550e3cbfb41d77)
* glsl/linker: simplify xfb_offset vs xfb_stride overflow checkAndres Gomez2019-03-191-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Current implementation uses a complicated calculation which relies in an implicit conversion to check the integral part of 2 division results. However, the calculation actually checks that the xfb_offset is smaller or a multiplier of the xfb_stride. For example, while this is expected to fail, it actually succeeds: " ... layout(xfb_buffer = 2, xfb_stride = 12) out block3 { layout(xfb_offset = 0) vec3 c; layout(xfb_offset = 12) vec3 d; // ERROR, requires stride of 24 }; ... " Fixes: 2fab85aaea5 ("glsl: add xfb_stride link time validation") Cc: Timothy Arceri <[email protected]> Signed-off-by: Andres Gomez <[email protected]> Reviewed-by: Timothy Arceri <[email protected]> (cherry picked from commit 422882e78f2cf0ab69ff4a58f3c9465fcb5fef0d)
* glsl/linker: don't fail non static used inputs without matching outputsAndres Gomez2019-03-191-2/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If there is no Static Use of an input variable, the linker shouldn't fail whenever there is no defined matching output variable in the previous stage. From page 47 (page 51 of the PDF) of the GLSL 4.60 v.5 spec: " Only the input variables that are statically read need to be written by the previous stage; it is allowed to have superfluous declarations of input variables." Now, we complete this exception whenever the input variable has an explicit location. Previously, 18004c338f6 ("glsl: fail when a shader's input var has not an equivalent out var in previous") took care of the cases in which the input variable didn't have an explicit location. v2: do the location based interface matching check regardless on whether it is a separable program or not (Ilia). Fixes: 1aa5738e666 ("glsl: relax input->output validation for SSO programs") Cc: Timothy Arceri <[email protected]> Cc: Iago Toral Quiroga <[email protected]> Cc: Samuel Iglesias Gonsálvez <[email protected]> Cc: Tapani Pälli <[email protected]> Cc: Ian Romanick <[email protected]> Cc: Ilia Mirkin <[email protected]> Signed-off-by: Andres Gomez <[email protected]> Reviewed-by: Timothy Arceri <[email protected]> (cherry picked from commit 3be05dd2679b2525ff80bac715d6ea097295c9ea)
* glsl: correctly validate component layout qualifier for dvec{3,4}Andres Gomez2019-03-191-0/+4
| | | | | | | | | | | | | | | | | | | From page 62 (page 68 of the PDF) of the GLSL 4.50 v.7 spec: " A dvec3 or dvec4 can only be declared without specifying a component." Therefore, using the "component" qualifier with a dvec3 or dvec4 should result in a compiling error. v2: enhance the error message (Timothy). Fixes: 94438578d21 ("glsl: validate and store component layout qualifier in GLSL IR") Cc: Timothy Arceri <[email protected]> Cc: Kenneth Graunke <[email protected]> Signed-off-by: Andres Gomez <[email protected]> Reviewed-by: Timothy Arceri <[email protected]> (cherry picked from commit a96093136bddfe17661f1de54228fe4b5618ba8a)
* radv: Use correct image view comparison for fast clears.Bas Nieuwenhuizen2019-03-191-1/+1
| | | | | | | | | The if is actually returning true on success, enabling fast clears, so we need to have the test succeed when the iview dimensions are right. Fixes: d5400a5ec2a "radv: provide a helper for comparing an image extents." Reviewed-by: Dave Airlie <[email protected]> (cherry picked from commit a777c3d7cb0a89f6c63a637e6db32cc1bf33b54c)
* nir: Add a new pass to lower array dereferences on vectorsJason Ekstrand2019-03-184-0/+202
| | | | | | | | | This pass was originally written for lowering TCS output reads and writes but it is also applicable just about anything including UBOs, SSBOs, and shared variables. Reviewed-by: Caio Marcelo de Oliveira Filho <[email protected]> (cherry picked from commit 35b8f6f40bb45dbffb04dd883ac6644300832981)
* nir/builder: Add a vector extract helperJason Ekstrand2019-03-182-6/+30
| | | | | | | | | | This one's a tiny bit better than what we had in spirv_to_nir because it emits a binary tree rather than a linear walk. It also doesn't leave around unneeded bcsel instructions for a constant index and returns an undef for constant OOB access. Reviewed-by: Caio Marcelo de Oliveira Filho <[email protected]> (cherry picked from commit fe9a6c0f14aa3ca6dfb1c7480871c95838b5cf14)
* cherry-ignore: Add commit that doesn't applyDylan Baker2019-03-181-1/+4
|
* anv: Treat zero size XFB buffer as disabledDanylo Piliaiev2019-03-181-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | Vulkan spec doesn't explicitly forbid zero size transform feedback buffers. Having zero size xfb caused SurfaceSize overflow and triggered assert in debug build. The only way to have zero size SO_BUFFER is to disable SO_BUFFER as stated in hardware spec. From SKL PRM, Vol 2a, "3DSTATE_SO_BUFFER": "If set, stream output to SO Buffer is enabled, if 3DSTATE_STREAMOUT::SO Function ENABLE is also enabled. If clear, the SO Buffer is considered "not bound" and effectively treated as a zero- length buffer for the purposes of SO output and overflow detection. If an enabled stream's Stream to Buffer Selects includes this buffer it is by definition an overflow condition. That stream will cause no writes to occur, and only SO_PRIM_STORAGE_NEEDED[<stream>] will increment." Fixes: 36ee2fd61c8 "anv: Implement the basic form of VK_EXT_transform_feedback" Signed-off-by: Danylo Piliaiev <[email protected]> Reviewed-by: Lionel Landwerlin <[email protected]> Reviewed-by: Jason Ekstrand <[email protected]> (cherry picked from commit ecb98c68988570806c239c7cc705c69a98aafc23)
* isl: fix automake build when sse41 is not supportedTapani Pälli2019-03-181-4/+7
| | | | | | | | | Fixes: 864cc419eb0a41882762 "intel/isl: move tiled_memcpy static libs from i965 to isl" Cc: [email protected] Reported-by: Milav Soni <[email protected]> Signed-off-by: Tapani Pälli <[email protected]> Reviewed-by: Eric Engestrom <[email protected]> (cherry picked from commit a1cd0040b6d1ae3dbf9d792c5ab1aadbbf917bac)
* mesa: properly report the length of truncated log messagesMark Janes2019-03-151-0/+3
| | | | | | | | | | | | | | _mesa_log_msg must provide the length of the string passed into the KHR_debug api. When the string formatted by _mesa_gl_vdebugf exceeds MAX_DEBUG_MESSAGE_LENGTH, the length is incorrectly set to the number of characters that would have been written if enough space had been available. Fixes: 30256805784450b8bb9d4dabfb56226271ca9d24 ("mesa: Add support for GL_ARB_debug_output with dynamic ID allocation.") Reviewed-by: Erik Faye-Lund <[email protected]> (cherry picked from commit eb1a869a5d19bfd8a0d4099afd58f180997e4663)
* d3d: meson: do not prefix user provided d3d-drivers-pathSergii Romantsov2019-03-142-2/+2
| | | | | | | | | | | | | | | | | | The user can select the location where there d3d drivers are installed by the d3d-drivers-path meson option. By default path will be $prefix/$libdir/d3d. Currently we add $prefix to the user provided path. Resulting in an incorrect or even missing path. Based on logic of Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=109698 CC: Kenneth Graunke <[email protected]> CC: Emil Velikov <[email protected]> Signed-off-by: Sergii Romantsov <[email protected]> Reviewed-by: Emil Velikov <[email protected]> (cherry picked from commit dcc48664197c7e44684ccfb970a4ae083974d145)
* radv: always initialize HTILE when the src layout is UNDEFINEDSamuel Pitoiset2019-03-141-2/+1
| | | | | | | | | | | | | | HTILE should always be initialized when transitioning from VK_IMAGE_LAYOUT_UNDEFINED to other image layouts. Otherwise, if an app does a transition from UNDEFINED to GENERAL, the driver doesn't initialize HTILE and it tries to decompress the depth surface. For some reasons, this results in VM faults. Cc: [email protected] Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=107563 Signed-off-by: Samuel Pitoiset <[email protected]> Reviewed-by: Bas Nieuwenhuizen <[email protected]> (cherry picked from commit 3a2e93147f7fa4a6fd17313353113a33291c5ce0)
* i965: Disable ARB_fragment_shader_interlock for platforms prior to GEN9Plamena Manolova2019-03-142-1/+25
| | | | | | | | | | | | ARB_fragment_shader_interlock depends on memory fences to ensure fragment ordering and this ordering guarantee is only supported from GEN9 onwards. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=109980 Fixes: 939312702e35 "i965: Add ARB_fragment_shader_interlock support." Signed-off-by: Plamena Manolova <[email protected]> Reviewed-by: Jason Ekstrand <[email protected]> (cherry picked from commit 19ab08200179e71af42ce6e1b91f502e50f915b3)
* anv/pass: Flag the need for a RT flush for resolve attachmentsJason Ekstrand2019-03-141-1/+17
| | | | | | Reviewed-by: Nanley Chery <[email protected]> Cc: [email protected] (cherry picked from commit 489bf2de237a190b966a412efda89d12d1daacde)
* egl/dri: Avoid out of bounds array accessKevin Strasser2019-03-131-2/+4
| | | | | | | | | | | | indexConfigAttrib iterates over every index in the dri driver, possibly exceeding __DRI_ATTRIB_MAX. In other words, if the dri driver has newer attributes libEGL will end up reading from uninitialized memory through dri2_to_egl_attribute_map[]. Signed-off-by: Kevin Strasser <[email protected]> Cc: [email protected] Reviewed-by: Emil Velikov <[email protected]> (cherry picked from commit 70b36c0ef939048acb9c4727b2e4280fc090eb74)
* glsl/list: Add a list variant of insert_afterJason Ekstrand2019-03-131-0/+26
| | | | | | | Reviewed-by: Ian Romanick <[email protected]> Caio Marcelo de Oliveira Filho <[email protected]> (cherry picked from commit 20c4578c5539de909e94a6acc3ad680ab2ddeca6)
* glsl/lower_vector_derefs: Don't use a temporary for TCS outputsJason Ekstrand2019-03-131-10/+64
| | | | | | | | | | | | | Tessellation control shader outputs act as if they have memory backing them and you can have multiple writes to different components of the same vector in-flight at the same time. When this happens, the load vec store pattern that gets used by ir_triop_vector_insert doesn't yield the correct results. Instead, just emit a sequence of conditional assignments. Reviewed-by: Ian Romanick <[email protected]> Cc: [email protected] (cherry picked from commit bd17bdc56b34a08c421172df27fe07294c7a7024)
* intel/fs: Fix opt_peephole_csel to not throw away saturates.Kenneth Graunke2019-03-131-0/+1
| | | | | | | | | | | | | | | | | We were not copying the saturate bit from the original instruction to the new replacement instruction. This caused major misrendering in DiRT Rally on iris, where comparisons leading to discards failed due to the missing saturate, causing lots of extra garbage pixels to be drawn in text rendering, trees, and so on. This did not show up on i965 because st/nir performs a more aggressive version of nir_opt_peephole_select, yielding more b32csel operations. Fixes: 52c7df1643e i965/fs: Merge CMP and SEL into CSEL on Gen8+ Reviewed-by: Lionel Landwerlin <[email protected]> Reviewed-by: Ian Romanick <[email protected]> (cherry picked from commit 3570d15b6d88bdcd353b31ffe5460d04a88b7b6f)
* v3d: Fix leak of the renderonly struct on screen destruction.Eric Anholt2019-03-131-0/+1
| | | | | | | This makes v3d match vc4's destroy path. Fixes: e113b21cb779 ("v3d: Add renderonly support.") (cherry picked from commit 486b181fd758c246c2d1eaa1975a858e84d64c32)
* radv: set the maximum number of IBs per submit to 192Samuel Pitoiset2019-03-132-1/+8
| | | | | | | | | | This fixes random SteamVR corruption, see https://github.com/ValveSoftware/SteamVR-for-Linux/issues/181 Fixes: 4d30f2c6f42 ("radv/winsys: remove the max IBs per submit limit for the fallback path") Signed-off-by: Samuel Pitoiset <[email protected]> Reviewed-by: Bas Nieuwenhuizen <[email protected]> (cherry picked from commit ae77f1236862e73c1ac250898924c648d481bda4)