summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* docs: add release notes for 18.2.3mesa-18.2.3Juan A. Suarez Romero2018-10-191-0/+166
| | | | Signed-off-by: Juan A. Suarez Romero <jasuarez@igalia.com>
* Update version to 18.2.3Juan A. Suarez Romero2018-10-191-1/+1
| | | | Signed-off-by: Juan A. Suarez Romero <jasuarez@igalia.com>
* util: add drirc workarounds for RAGETimothy Arceri2018-10-151-0/+8
| | | | | | | This allows the game to run on wine (tested on radeonsi where we have compat profile support). (cherry picked from commit 0da93de9c85d27cf7df000a950894aa8605dd951)
* util: better handle program names from wineTimothy Arceri2018-10-151-5/+12
| | | | | | | | | | | | | For some reason wine will sometimes give us a windows style path for an application. For example when running the 64bit version of Rage wine gives a Unix style path, but when running the 32bit version is gives a windows style path. If we detect no '/' in the path at all it should be safe to assume we have a wine application and instead look for a '\'. Reviewed-by: Eric Engestrom <eric.engestrom@intel.com> (cherry picked from commit 3f9d8e9c88eb9d95b4637d0b65008cf62527b08b)
* r600/sb: Fix constant-logical-operand warning.Vinson Lee2018-10-151-1/+1
| | | | | | | | | | | | | | | | | | sb/sb_bc_parser.cpp:620:27: warning: use of logical '&&' with constant operand [-Wconstant-logical-operand] if (cf->bc.op_ptr->flags && FF_GDS) ^ ~~~~~~ sb/sb_bc_parser.cpp:620:27: note: use '&' for a bitwise operation if (cf->bc.op_ptr->flags && FF_GDS) ^~ & sb/sb_bc_parser.cpp:620:27: note: remove constant to silence this warning if (cf->bc.op_ptr->flags && FF_GDS) ~^~~~~~~~~ Fixes: da977ad90747 ("r600/sb: start adding GDS support") Signed-off-by: Vinson Lee <vlee@freedesktop.org> Reviewed-by: Dave Airlie <airlied@redhat.com> (cherry picked from commit cc33621e3b83e9bb0d89f8c6fd4e79700fe89c27)
* st/va: use provided sizes and coords for vlVaGetImageBoyuan Zhang2018-10-151-3/+28
| | | | | | | | | | | | | | | | | vlVaGetImage should respect the width, height, and coordinates x and y that passed in. Therefore, pipe_box should be created with the passed in values instead of surface width/height. v2: add input size check, return error when size out of bounds v3: fix the size check for vaimage v4: add size adjustment for x and y coordinates Signed-off-by: Boyuan Zhang <boyuan.zhang@amd.com> Cc: "18.2" <mesa-stable@lists.freedesktop.org> Reviewed-by: Leo Liu <leo.liu@amd.com> Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu> Acked-by: Christian König <christian.koenig@amd.com> (cherry picked from commit d76c2774219bf47e3cabe1b9cb49e30aea110c3e)
* radv: add a workaround for a VGT hang with prim restart and stripsSamuel Pitoiset2018-10-151-0/+11
| | | | | | | | | | | | Otherwise, Yakuza and The Evil Within hang the GPU with DXVK. This apparently only works on Polaris. Suggested by Marek. Cc: mesa-stable@lists.freedesktop.org Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com> Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> (cherry picked from commit d179312b53d94a4f0ffe1e88569525300afb4985)
* util: use force_compat_profile for Wolfenstein The Old BloodTimothy Arceri2018-10-111-0/+4
| | | | | | | | | | | | This game is looking for some odd extension after creating a core context such as ARB_vertex_program and EXT_framebuffer_object. Rather then enabling these in core this forces the game to use compat. This allows the game to run and seems to work without issues. All other id tech games/engines use a compat profile. Reviewed-by: Marek Olšák <marek.olsak@amd.com> (cherry picked from commit 024abd3534a171ae4ee1532a078f3af68eb6fdea)
* mesa/st: add force_compat_profile option to driconfigTimothy Arceri2018-10-113-2/+14
|
* r600: use build-id when available for disk cacheTimothy Arceri2018-10-111-7/+7
| | | | | Reviewed-by: Marek Olšák <marek.olsak@amd.com> (cherry picked from commit 2b5f42068d18a222e70f396c6ffc2564c4c36666)
* nouveau: use build-id when available for disk cacheTimothy Arceri2018-10-111-7/+7
| | | | | Reviewed-by: Marek Olšák <marek.olsak@amd.com> (cherry picked from commit 397f2603ebd9f29a49d5fb722c03fefd84e837d1)
* radeonsi: use build-id when available for disk cacheTimothy Arceri2018-10-111-12/+9
| | | | | | | | | | Reviewed-by: Marek Olšák <marek.olsak@amd.com> (cherry picked from commit 2169acbf34e99842b6234ee8181e1908aafcf120) [Juan A. Suarez: resolve trivial conflicts] Signed-off-by: Juan A. Suarez Romero <jasuarez@igalia.com> Conflicts: src/gallium/drivers/radeonsi/si_pipe.c
* util: add disk_cache_get_function_identifier()Timothy Arceri2018-10-111-0/+16
| | | | | | | | | | | | | This can be used as a drop in replacement for disk_cache_get_function_timestamp(). Here we use build-id to generate a driver-id rather than build timestamp if available. This should resolve issues such as distros using reproducable builds and flatpak not having real build timestamps. Reviewed-by: Marek Olšák <marek.olsak@amd.com> (cherry picked from commit 83ea8dd99bb16e5d9bb880e64cd2047abc536b70)
* util: rename timestamp param in disk_cache_create()Timothy Arceri2018-10-111-4/+4
| | | | | | | | | Only some drivers use a timestamp here. Others use things such as build-id, or even a combination of build-ids from Mesa and LLVM. Reviewed-by: Marek Olšák <marek.olsak@amd.com> (cherry picked from commit 6a884014e46ab0ccca5c900f692898ffb02469e6)
* util: disable cache if we have no build-id and timestamp is zeroTimothy Arceri2018-10-112-4/+9
| | | | | | | | | | | Timestamp can be zero for example when Flatpak is used. In this case just disable the cache rather then segfaulting when incompatible cache items are loaded. V2: actually return false when mtime is 0. Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> (cherry picked from commit ea66bfda8801a0f5139c8e4655373117cdd7a1c0)
* glsl: ignore trailing whitespace when define redefinedTimothy Arceri2018-10-113-3/+25
| | | | | | | | | | The Nvidia/AMD binary drivers allow this, as does GCC. This fixes shader compilation issues in the latest update of No Mans Sky. Reviewed-by: Ian Romanick <ian.d.romanick@intel.com> (cherry picked from commit 0346ad37741b11d640c1c4970b275c1f0c7f9e75)
* anv: add missing unlock in error path.Dave Airlie2018-10-111-0/+1
| | | | | | | | | | | Not going to matter, but be consistent. Found by coverity Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Reviewed-by: Jason Ekstrand <jason@jlekstrand.net> Fixes: caf41c78c (anv/allocator: Support softpin in the BO cache) (cherry picked from commit 29a7631986b10c99d5daad1a571716086a325bd5)
* intel: Don't propagate conditional modifiers if a UD source is negatedJason Ekstrand2018-10-115-0/+50
| | | | | | | | | | This fixes a bug uncovered by my NIR integer division by constant optimization series. Fixes: 19f9cb72c8b "i965/fs: Add pass to propagate conditional..." Fixes: 627f94b72e0 "i965/vec4: adding vec4_cmod_propagation..." Reviewed-by: Ian Romanick <ian.d.romanick@intel.com> (cherry picked from commit 4ba445e0117b29c31b030feb6e0f421a5ceb03e5)
* meson: Don't allow building EGL on Windows or MacOSDylan Baker2018-10-111-1/+6
| | | | | | | | | | | | | | | Currently mesa only supports EGL on Unix like systems, cygwin, and haiku. Meson should actually enforce this. This fixes the default build on MacOS. v2: - invert the condition, mark darwin and windows as not supported instead of trying to mark what is supported. v3: - add missing ) v3: - Update comment to reflect condition change in v2 CC: 18.2 <mesa-stable@lists.freedesktop.org> Reviewed-by: Eric Engestrom <eric.engestrom@intel.com> (cherry picked from commit b8521704ed2f5e84f0599a040c015ef02890468d)
* radv: add missing meson c++ visibility argumentsEric Engestrom2018-10-101-0/+1
| | | | | | | | | Fixes: 6f3aee40f90d725653b6 "radv: using tls to store llvm related info and speed up compiles (v10)" Cc: Dave Airlie <airlied@redhat.com> Signed-off-by: Eric Engestrom <eric.engestrom@intel.com> Reviewed-by: Dylan Baker <dylan@pnwbakers.com> (cherry picked from commit 976188737d69cbfd688fecab05d3b2c38d8cc876)
* virgl, vtest: Correct the transfer size calculationGert Wollny2018-10-101-1/+3
| | | | | | | | | | | | The transfer size used in virglrenderer refers to uint32_t, so one must add 3 and then divide by 4 instead of adding 3/4 which is a no-op with integers. Fixes: b3b82fe8ea virgl/vtest: add vtest driver Signed-off-by: Gert Wollny <gert.wollny@collabora.com> Reviewed-by: Gurchetan Singh <gurchetansingh@chromium.org> (cherry picked from commit 5d7858f1517eb0961811e4106ba11c011d7002e3)
* nir/alu_to_scalar: Use ssa_for_alu_src in hand-rolled expansionsJason Ekstrand2018-10-101-15/+18
| | | | | | | | | | | | | | | | | | The ssa_for_alu_src helper will correctly handle swizzles and other source modifiers for you. The expansions for unpack_half_2x16, pack_uvec2_to_uint, and pack_uvec4_to_uint were all broken with regards to swizzles. The brokenness of unpack_half_2x16 was causing rendering errors in Rise of the Tomb Raider on Intel ever since c11833ab24dcba26 which added an extra copy propagation to the optimization pipeline and caused us to start seeing swizzles where we hadn't seen any before. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=107926 Fixes: 9ce901058f3d "nir: Add lowering of nir_op_unpack_half_2x16." Fixes: 9b8786eba955 "nir: Add lowering support for packing opcodes." Tested-by: Alex Smith <asmith@feralinteractive.com> Tested-by: Józef Kucia <joseph.kucia@gmail.com> Reviewed-by: Matt Turner <mattst88@gmail.com> (cherry picked from commit dd553bc67f8ab1513fd196b6ffb7c4a76723adfd)
* anv/batch_chain: Don't start a new BO just for BATCH_BUFFER_STARTJason Ekstrand2018-10-101-0/+9
| | | | | | | | | | | | | | | Previously, we just went ahead and emitted MI_BATCH_BUFFER_START as normal. If we are near enough to the end, this can cause us to start a new BO just for the MI_BATCH_BUFFER_START which messes up chaining. We always reserve enough space at the end for an MI_BATCH_BUFFER_START so we can just increment cmd_buffer->batch.end prior to emitting the command. Fixes: a0b133286a3 "anv/batch_chain: Simplify secondary batch return..." Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=107926 Tested-by: Alex Smith <asmith@feralinteractive.com> Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> (cherry picked from commit f5bab06428fc7ca6116cf0daf1c237eb86202e7a)
* Revert "mesa: remove unnecessary 'sort by year' for the GL extensions"Emil Velikov2018-10-101-2/+44
| | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 3d81e11b49366b5636b8524ba0f8c7076e3fdf34. As reported by Federico, some games require the 'sort by year' since they truncate the extensions which do not fit the fixed size string array. Seemingly I did not consider that, as the documentation (both Mesa and Nvidia) mentions about program crashes ... which are worked around by setting the env. variable. This commit reinstates the workaround and enhances the documentation. Cc: Marek Olšák <maraeo@gmail.com> Cc: Ian Romanick <idr@freedesktop.org> Reported-by: Federico Dossena <info@fdossena.com> Fixes: 3d81e11b493 ("mesa: remove unnecessary 'sort by year' for the GL extensions") Reviewed-by: Timothy Arceri <tarceri@itsqueeze.com> Reviewed-by: Roland Scheidegger <sroland@vmware.com> Tested-by: Federico Dossena <info@fdossena.com> (cherry picked from commit fe8be81b4a525fec355e2f80c254711981ce0dbd)
* vl/dri3: do full teardown on screen_destroyEmil Velikov2018-10-101-1/+0
| | | | | | | | | | | | Earlier commit added support for 'front_buffers', erroneously adding a return in vl_dri3_screen_destroy. Effectively leaking a lot of state. Fixes: 8d7ac0a4e4d ("vl/dri3: implement DRI3 BufferFromPixmap") Cc: Leo Liu <leo.liu@amd.com> Cc: Christian König <christian.koenig@amd.com> Signed-off-by: Emil Velikov <emil.velikov@collabora.com> Reviewed-by: Leo Liu <leo.liu@amd.com> (cherry picked from commit d081ad2aa25c5673ec1927fca81e6ac65de4b1b1)
* i965: Replace checks for rb->Name with FlipY (v2)Fritz Koenig2018-10-102-13/+11
| | | | | | | | | | | | | | In the GL_MESA_framebuffer_flip_y implementation _mesa_is_winsys_fbo checks were replaced with FlipY checks. rb->Name is also used to determine if a buffer is winsys. v2: Fixes annotation [for emil] Fixes: ab05dd183cc ("i965: implement GL_MESA_framebuffer_flip_y [v3]") Reviewed-by: Jason Ekstrand <jason@jlekstrand.net> Reviewed-by: Chad Versace <chadversary@chromium.org> (cherry picked from commit 08f97407fb14f53bf9f43dc4165a185418437a6b)
* nir/from_ssa: Don't rewrite derefs destinations to registersJason Ekstrand2018-10-101-0/+6
| | | | | | | | | | | | | We already call nir_rematerialize_derefs_in_use_blocks_impl prior to calling nir_lower_ssa_defs_to_regs_block so the assertion that all deref uses in the block should hold. This fixes the following CTS test when SPIR-V optimization recipe 1: dEQP-VK.glsl.struct.local.loop_nested_struct_array_vertex Fixes: 606eb56ab9449b "intel/nir: Only lower load/store derefs" Reviewed-by: Iago Toral Quiroga <itoral@igalia.com> (cherry picked from commit 00f385e6d457d9b57f683ea52157e1620b96fa8c)
* intel/fs: Fix a typo in need_matching_subreg_offsetJason Ekstrand2018-10-101-1/+1
| | | | | | | | | | This fixes a bunch of Vulkan subgroup tests on little core platforms. Fixes: 4150920b95 "intel/fs: Add a helper for emitting scan operations" Reviewed-by: Caio Marcelo de Oliveira Filho <caio.oliveira@intel.com> Tested-by: Mark Janes <mark.a.janes@intel.com> Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> (cherry picked from commit 7e7959fcb76da59e1cec8b704069210a1092e1dd)
* nvc0: fix blitting red to srgb8_alphaIlia Mirkin2018-10-101-0/+4
| | | | | | | | | | | | | | For some reason the 2d engine can't handle this. Red formats get special treatment there, so perhaps related. Fixes dEQP-GLES3 tests of the form: dEQP-GLES3.functional.fbo.blit.conversion.r{8,16f,32f}_to_srgb8_alpha8 Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu> Reviewed-by: Karol Herbst <kherbst@redhat.com> Cc: mesa-stable@lists.freedesktop.org (cherry picked from commit 92f56fbd8969801fc88de606e1051dc397331e7d)
* nv50,nvc0: guard against zero-size blitsIlia Mirkin2018-10-102-0/+14
| | | | | | | | | | | The current state tracker can generate these sometimes. Fixing this is more involved, and due to some integer math we can generate divisions-by-zero. Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu> Reviewed-by: Karol Herbst <kherbst@redhat.com> Cc: mesa-stable@lists.freedesktop.org (cherry picked from commit 9bf0614116cdfdbfca9952c6547331731a462dcc)
* nv50,nvc0: mark RGBX_UINT formats as renderableIlia Mirkin2018-10-101-4/+4
| | | | | | | | | | | | | | | | | This helps st/mesa avoid some (apparently) buggy fallbacks. Specifically the CopyTexSubImage fallback tries to read texture A as RGBA_FLOAT and write back that data into the target format, which fails for integer formats which have no appropriate logic to do the conversion. Since integer formats don't blend, there's no harm in the fact that the "A" component gets written anyways. Fixes, among others: https://www.khronos.org/registry/webgl/sdk/tests/conformance2/textures/canvas/tex-2d-rgb8ui-rgb_integer-unsigned_byte.html Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu> Cc: mesa-stable@lists.freedesktop.org (cherry picked from commit 78d3640e49918cbd7a9fd4d0220e47c81902f455)
* glsl: fix array assignments of a swizzled vectorIlia Mirkin2018-10-101-3/+10
| | | | | | | | | | | | | | | | | | | | | | | | | This happens in situations where we might do vec.wzyx[i] = ... The swizzle would get effectively ignored because of the interaction between how ir_assignment->set_lhs works and overwriting the write_mask. There are two cases, one where i is a constant, and another where i is variable. We have to be extra-careful in both cases. Fixes the following WebGL test: https://www.khronos.org/registry/webgl/sdk/tests/conformance2/glsl3/vector-dynamic-indexing-swizzled-lvalue.html And the new piglit tests: swizzled-writemask-indexing-nonconst.shader_test swizzled-writemask-indexing.shader_test Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com> Cc: mesa-stable@lists.freedesktop.org (cherry picked from commit 1bb1c03d618a9636563cf4dcf067876e50ba0d81)
* glsl: do not attempt assignment if operand type not parsed correctlyTapani Pälli2018-10-101-0/+6
| | | | | | | | | | v2: check types of both operands (Ian) Cc: mesa-stable@lists.freedesktop.org Signed-off-by: Tapani Pälli <tapani.palli@intel.com> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=108012 (cherry picked from commit d1fa69ed61d5aebeb69ce8a415c098035a953d48)
* drirc: add a workaround for ARMA 3Marek Olšák2018-10-101-0/+4
| | | | | Cc: 18.2 <mesa-stable@lists.freedesktop.org> (cherry picked from commit 8e0b4cb8a1fcb1572be8eca16a806520aac08a61)
* anv: Use separate MOCS settings for external BOsJason Ekstrand2018-10-1012-38/+80
| | | | | | | | | | | | | | | | | | | | | | | | | | On Broadwell and above, we have to use different MOCS settings to allow the kernel to take over and disable caching when needed for external buffers. On Broadwell, this is especially important because the kernel can't disable eLLC so we have to do it in userspace. We very badly don't want to do that on everything so we need separate MOCS for external and internal BOs. In order to do this, we add an anv-specific BO flag for "external" and use that to distinguish between buffers which may be shared with other processes and/or display and those which are entirely internal. That, together with an anv_mocs_for_bo helper lets us choose the right MOCS settings for each BO use. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=99507 Cc: mesa-stable@lists.freedesktop.org Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> (cherry picked from commit 7a89a0d9edae638e68e4b4ee8e0cbb34baa9c080) [Juan A. Suarez: resolve trivial conflicts] Signed-off-by: Juan A. Suarez Romero <jasuarez@igalia.com> Conflicts: src/intel/vulkan/anv_image.c src/intel/vulkan/genX_gpu_memcpy.c
* egl: make eglSwapBuffers* a no-op for !window surfacesEmil Velikov2018-10-081-0/+6
| | | | | | | | | | | | | Analogous to the previous commit - the spec says the function is a no-op when a pbuffer or pixmap surface is used. Cc: samiuddi <sami.uddin.mohammad@intel.com> Cc: Erik Faye-Lund <kusmabite@gmail.com> Cc: Tomasz Figa <tfiga@chromium.org> Cc: <mesa-stable@lists.freedesktop.org> Signed-off-by: Emil Velikov <emil.velikov@collabora.com> Reviewed-by: Eric Engestrom <eric.engestrom@intel.com> (cherry picked from commit 8f66743ca2cd781e912a3998196bf2ef1b9f8f4c)
* egl: make eglSwapInterval a no-op for !window surfacesEmil Velikov2018-10-081-0/+3
| | | | | | | | | | | | | | | | | | | | | As the spec says, the function is a no-op when the surface is not a window one. That spec implies that EGL_TRUE should be returned in that case, yet the ARM driver seems to return EGL_FALSE + EGL_BAD_SURFACE. The Nvidia driver returns EGL_TRUE. We follow that behaviour until a decision is made. https://gitlab.khronos.org/egl/API/merge_requests/17 Cc: samiuddi <sami.uddin.mohammad@intel.com> Cc: Erik Faye-Lund <kusmabite@gmail.com> Cc: Tomasz Figa <tfiga@chromium.org> Cc: <mesa-stable@lists.freedesktop.org> Signed-off-by: Emil Velikov <emil.velikov@collabora.com> Reviewed-by: Eric Engestrom <eric.engestrom@intel.com> (cherry picked from commit 64b4ccde0cab4bbabba8abbf206ec5aa53399821)
* st/nine: do not double-close the fd on teardownEmil Velikov2018-10-081-1/+1
| | | | | | | | | | | | | | As the newly introduced comment says: The pipe loader takes ownership of the fd Thus, there's no need to close it again. Cc: Patrick Rudolph <siro@das-labor.org> Cc: Axel Davy <davyaxel0@gmail.com> Cc: mesa-stable@lists.freedesktop.org> Signed-off-by: Emil Velikov <emil.velikov@collabora.com> Reviewed-by: Axel Davy <davyaxel0@gmail.com> (cherry picked from commit 7b8d1b313cd01bb916898d8bb92a566534e37677)
* radeonsi: avoid sending GS_EMIT in shaders without outputsJózef Kucia2018-10-081-3/+6
| | | | | | | | | | Fixes GPU hangs. Cc: 18.1 18.2 <mesa-stable@lists.freedesktop.org> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=107857 Signed-off-by: Józef Kucia <joseph.kucia@gmail.com> Signed-off-by: Marek Olšák <marek.olsak@amd.com> (cherry picked from commit e24a4e05c7a7b9f3a06fa55284d6258ceff44fdd)
* nir/cf: Remove phi sources if needed in nir_handle_add_jumpJason Ekstrand2018-10-081-17/+21
| | | | | | | | | | | | | If the block in which the jump is inserted is the predecessor of a phi then we need to remove phi sources otherwise the phi may end up with things improperly connected. This fixes the following CTS test when dEQP is run with SPIR-V optimization recipe 1: dEQP-VK.glsl.functions.control_flow.return_in_nested_loop_vertex Cc: mesa-stable@lists.freedesktop.org Reviewed-by: Iago Toral Quiroga <itoral@igalia.com> (cherry picked from commit bfc89c668e288747f51e447729914c91d27207e8)
* docs: add sha256 checksums for 18.2.2Juan A. Suarez Romero2018-10-051-1/+2
| | | | Signed-off-by: Juan A. Suarez Romero <jasuarez@igalia.com>
* docs: add release notes for 18.2.2mesa-18.2.2Juan A. Suarez Romero2018-10-051-0/+154
| | | | Signed-off-by: Juan A. Suarez Romero <jasuarez@igalia.com>
* Update version to 18.2.2Juan A. Suarez Romero2018-10-051-1/+1
| | | | Signed-off-by: Juan A. Suarez Romero <jasuarez@igalia.com>
* radeonsi: NaN should pass kill_ifMarek Olšák2018-10-022-1/+4
| | | | Signed-off-by: Juan A. Suarez Romero <jasuarez@igalia.com>
* vulkan: Disable randr lease for libxcb < 1.13Maxime2018-10-011-0/+2
| | | | | | | | | | | | Since the Randr lease code was added, compiling against libxcb 1.12 no longer works. CC: mesa-stable@lists.freedesktop.org Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=108024 Fixes: 7ab1fffcd2a504024b16e408de329f7a94553ecc Tested-By: Maxime <berillions@gmail.com> Fixes: 7ab1fffcd2a504024b16 "vulkan: Add EXT_acquire_xlib_display [v5]" (cherry picked from commit dd333c66bdcb11c0d7c522642761490aced2b7ab)
* st/nine: Increase maximum number of temp registersAxel Davy2018-10-011-1/+1
| | | | | | | | | | With some test app I hit the limit. As we allocate on demand (up to the maximum), it is free to increase the limit. Signed-off-by: Axel Davy <davyaxel0@gmail.com> CC: <mesa-stable@lists.freedesktop.org> (cherry picked from commit 7ae2509ce06d9d3da44de3f25afc7370e2330030)
* st/nine: Avoid redundant SetCursorPos callsAxel Davy2018-10-011-0/+4
| | | | | | | | | | | | | | | | | | | | | For some applications SetCursorPosition is called when a cursor event is received. Our SetCursorPosition was always calling wine SetCursorPos which would trigger a cursor event. The infinite loop is avoided by not calling SetCursorPos when the position hasn't changed. Found thanks to wine tests. Fixes irresponsive GUI for some applications. Fixes: https://github.com/iXit/Mesa-3D/issues/173 Signed-off-by: Axel Davy <davyaxel0@gmail.com> CC: <mesa-stable@lists.freedesktop.org> (cherry picked from commit dcfde02bb0f0b9fdd8d45a22540683fe0aaab9ec)
* st/nine: Clamp RCP when 0*inf!=0Axel Davy2018-10-011-1/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Tests done on several devices of all 3 vendors and of different generations showed that there are several ways of handling infs and NaN for d3d9. Tests showed Intel on windows does always clamp RCP, RSQ and LOG (thus preventing inf/nan generation), for all shader versions (some vendor behaviours vary with shader versions). Doing this in nine avoids 0*inf issues for drivers that can't generate 0*inf=0 (which is controled by TGSI's MUL_ZERO_WINS). For now clamp for all drivers. An ulterior optimization would be to avoid clamping for drivers with MUL_ZERO_WINS for the specific shader versions where NV or AMD don't clamp. LOG and RSQ being already clamped, this patch only clamps RCP. Fixes: https://github.com/iXit/Mesa-3D/issues/316 Signed-off-by: Axel Davy <davyaxel0@gmail.com> CC: <mesa-stable@lists.freedesktop.org> (cherry picked from commit 7ee5e5e239a5528c6eed2d1bb47b48434de74a6e)
* radeonsi: add a workaround for bitfield_extract when count is 0Timothy Arceri2018-09-251-11/+30
| | | | | | | | | | | | | | | This ports the fix from 3d41757788ac. Both LLVM 7 & 8 continue to have this problem. It fixes rendering issues in some menu and loading screens of Civ VI which can be seen in the trace from bug 104602. Note: This does not fix the black triangles on Vega for bug 104602. Cc: mesa-stable@lists.freedesktop.org Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=104602 Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=107276
* vulkan/wsi/display: check if wsi_swapchain_init() succeededEric Engestrom2018-09-251-0/+4
| | | | | | | | Fixes: da997ebec929421939553 "vulkan: Add KHR_display extension using DRM [v10]" Cc: Keith Packard <keithp@keithp.com> Signed-off-by: Eric Engestrom <eric.engestrom@intel.com> Reviewed-by: Jason Ekstrand <jason@jlekstrand.net> (cherry picked from commit bde3102c0dc3e33d2605d013205e381ff6d93ace)