URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=eab4a503a0b04dfe1fdcfc2dcde62eb09c038aca Author: Juan A. Suarez Romero <jasua...@igalia.com> Date: Thu Jun 1 01:52:49 2017 +0000
cherry-ignore: anv: Refactor memory type setup URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=c31e814a85a27249e2a57cb7350240c01a1cad58 Author: Juan A. Suarez Romero <jasua...@igalia.com> Date: Thu Jun 1 03:42:27 2017 +0200 cherry-ignore: anv: Add valid_bufer_usage to the memory type metadata URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=7a636d8ff13999b94168efd38d694bc2355cb1cb Author: Juan A. Suarez Romero <jasua...@igalia.com> Date: Wed May 31 22:03:14 2017 +0200 cherry-ignore: radv: fix regression in descriptor set freeing URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=b3e48a07c0bb0c58e73ec6d82f3a3104ec26aacb Author: Juan A. Suarez Romero <jasua...@igalia.com> Date: Wed May 31 21:42:53 2017 +0200 cherry-ignore: anv: Require vertex buffers to come from a 32-bit heap URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=e391144853640ee39fca8dfe0e9387bbf1d90a76 Author: Juan A. Suarez Romero <jasua...@igalia.com> Date: Wed May 31 21:38:30 2017 +0200 cherry-ignore: anv: Advertise both 32-bit and 48-bit heaps when we have enough memory URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=dbadd066321786ea9b8f0259413740a10f753f36 Author: Juan A. Suarez Romero <jasua...@igalia.com> Date: Wed May 31 21:37:31 2017 +0200 cherry-ignore: anv: Make supports_48bit_addresses a heap property URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=07867f72cf53209d230b3fb13f24f9371ab9d4b4 Author: Juan A. Suarez Romero <jasua...@igalia.com> Date: Wed May 31 21:31:40 2017 +0200 cherry-ignore: anv: Stop setting BO flags in bo_init_new URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=9299466b83ce88c911b30b35d9f4f6addb25c92a Author: Juan A. Suarez Romero <jasua...@igalia.com> Date: Wed May 31 19:14:02 2017 +0000 cherry-ignore: anv: Determine the type of mapping based on type metadata URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=103ec6e23173301994a5165cfaac5c9c84bfbe85 Author: Juan A. Suarez Romero <jasua...@igalia.com> Date: Wed May 31 16:17:39 2017 +0200 cherry-ignore: radeonsi: load patch_id for TES-as-ES when exporting for PS URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=f1d487f4f048603b37c07ba3e943aafda62a51af Author: Ian Romanick <ian.d.roman...@intel.com> Date: Thu May 25 21:26:09 2017 -0700 r100: Use _mesa_get_format_base_format in radeon_update_wrapper The wrapper is for a renderbuffer around a texture. Textures can have formats (e.g., 3) that aren't valide for API generated renderbuffers. _mesa_base_fbo_format will return 0, but _mesa_get_format_base_format will return the base format of RGB. Fixes a crashes in piglit tests fbo-alphatest-formats (all subtests pass) and fbo-colormask-formats (some subtests pass, some fail). Signed-off-by: Ian Romanick <ian.d.roman...@intel.com> Cc: mesa-sta...@lists.freedesktop.org Reviewed-by: Kenneth Graunke <kenn...@whitecape.org> (cherry picked from commit 303b47f253f595ca0f708bef1059cbb4996f83a0) Signed-off-by: Juan A. Suarez Romero <jasua...@igalia.com> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=57b38cc0774f1ca5fd8afe16728dd5d248b61b65 Author: Ian Romanick <ian.d.roman...@intel.com> Date: Wed May 24 22:14:44 2017 -0700 r100,r200: Don't assume glVisual is non-NULL during context creation Thanks to EGL_MESA_configless_context, the visual pointer can be NULL. Fixes a segfault (or assertion failure) in piglit's egl-configless-context test. Signed-off-by: Ian Romanick <ian.d.roman...@intel.com> Cc: mesa-sta...@lists.freedesktop.org Reviewed-by: Kenneth Graunke <kenn...@whitecape.org> (cherry picked from commit c24881d39c139c451c1c096d6b0a98c8945c902b) Signed-off-by: Juan A. Suarez Romero <jasua...@igalia.com> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=ca8481c41cec6eaf9936b9adc9cf089a8d3bee21 Author: Ian Romanick <ian.d.roman...@intel.com> Date: Wed May 24 16:36:28 2017 -0700 r100: Don't assume that the base mipmap of a texture exists Fixes crashes in piglit's gl-1.2-texture-base-level. Signed-off-by: Ian Romanick <ian.d.roman...@intel.com> Cc: mesa-sta...@lists.freedesktop.org Reviewed-by: Kenneth Graunke <kenn...@whitecape.org> (cherry picked from commit 2dcec62075d8da8b7d8741df75b09907e1eea460) Signed-off-by: Juan A. Suarez Romero <jasua...@igalia.com> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=5b81c0524b41c22829b1a3e0f212c1e72a7ad0aa Author: Tapani Pälli <tapani.pa...@intel.com> Date: Thu May 18 10:21:59 2017 +0300 egl/android: fix segfault within swap_buffers Function droid_swap_buffers may get called without dri2_surf->buffer set, in these cases we don't have a back buffer set either. Patch fixes segfault seen with 3DMark that uses android.opengl.GLSurfaceView for rendering it's UI. backtrace: #00 pc 00013f88 /system/lib/egl/libGLES_mesa.so (droid_swap_buffers+104) #01 pc 000117b2 /system/lib/egl/libGLES_mesa.so (dri2_swap_buffers+50) #02 pc 000058b2 /system/lib/egl/libGLES_mesa.so (eglSwapBuffers+386) #03 pc 00011329 /system/lib/libEGL.so (eglSwapBuffersWithDamageKHR+553) #04 pc 000118e7 /system/lib/libEGL.so (eglSwapBuffers+55) #05 pc 000754dc /system/lib/libandroid_runtime.so Note, this is v1 as v2 caused dEQP regressions. Fixes: 2acc69d ("EGL/Android: Add EGL_EXT_buffer_age extension") Signed-off-by: Tapani Pälli <tapani.pa...@intel.com> Reviewed-by: Eric Engestrom <eric.engest...@imgtec.com> Acked-by: Emil Velikov <emil.veli...@collabora.com> Cc: "17.1" <mesa-sta...@lists.freedesktop.org> (cherry picked from commit f347bac30f4045a9583f95a5776484b1a2947183) Signed-off-by: Juan A. Suarez Romero <jasua...@igalia.com> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=ed38bcedfb942a6175a384d40bd437594d8eb86c Author: Juan A. Suarez Romero <jasua...@igalia.com> Date: Thu Jun 1 09:48:54 2017 +0200 Revert "android: fix segfault within swap_buffers" This reverts commit 4d4558411db166d2d66f8cec9cb581149dbe1597. See https://lists.freedesktop.org/archives/mesa-stable/2017-June/006408.html Signed-off-by: Juan A. Suarez Romero <jasua...@igalia.com> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=012c198bb73e14323c12a95e22d73de56e258ca2 Author: Nicolas Boichat <drink...@chromium.org> Date: Fri May 5 10:26:00 2017 +0800 configure.ac: Also match -androideabi tuple On ARM Android platforms, the host_os tuple should be linux-androideabi, so let's match both -android and -androideabi (or any other -android* tuple) to determine if we should do an Android build. Reviewed-by: Chad Versace <chadvers...@chromium.org> (cherry picked from commit f6ac3d0db67dd81f0aff754b977ed1277b33af63) Signed-off-by: Juan A. Suarez Romero <jasua...@igalia.com> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=1534330eba3f0ff16cbe7faa8ac8449a357650fe Author: Nicolai Hähnle <nicolai.haeh...@amd.com> Date: Fri Apr 21 15:11:34 2017 +0200 st/mesa: remove redundant stfb->iface checks stfb->iface is always non-NULL for an st_framebuffer. These checks were incorrect, relying on out-of-bounds memory access in the surface-less case of EGL_KHR_surfaceless_context. v2: remove redundant stread check (Marek) Reviewed-by: Marek Olšák <marek@ol...@amd.com> (v2) (cherry picked from commit 9d346af322e3f9d6d52e00759e8c3cd37c192004) Signed-off-by: Juan A. Suarez Romero <jasua...@igalia.com> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=580a2e6c15ca7f6e89d262224eb518100a2b4f8f Author: Bartosz Tomczyk <bartosz.tomczy...@gmail.com> Date: Sat Apr 29 16:37:45 2017 +0200 mesa: Avoid leaking surface in st_renderbuffer_delete v2: add comment in code Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=100741 Fixes: a5e733c6b52 mesa: drop current draw/read buffer when ctx is released Reviewed-by: Rob Clark <robdcl...@gmail.com> (v1) Reviewed-by: Emil Velikov <emil.veli...@collabora.com> (cherry picked from commit fd6c2a3f3eb7f5f3077fb95b1441ddaa43b806fe) Signed-off-by: Juan A. Suarez Romero <jasua...@igalia.com> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=ce2b96dd8b5a6c4ea0c80c6c0f46652a0b591515 Author: Bas Nieuwenhuizen <b...@basnieuwenhuizen.nl> Date: Mon May 29 00:18:56 2017 +0200 radv: Reserve space for descriptor and push constant user SGPR setting. flush_compute_state doesn't reserve a large chunk, so these need their own reservation. Signed-off-by: Bas Nieuwenhuizen <ba...@google.com> Reviewed-by: Dave Airlie <airl...@redhat.com> Fixes: f4e499ec791 "radv: add initial non-conformant radv vulkan driver" (cherry picked from commit 18efb404cfb38f722a16df7539390cf9a4a71929) [Juan A. Suarez: resolve trivial conflicts] Signed-off-by: Juan A. Suarez Romero <jasua...@igalia.com> Conflicts: src/amd/vulkan/radv_cmd_buffer.c URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=e4c4b86f70644e670673dd1ee3461a1654e2382c Author: Emil Velikov <emil.veli...@collabora.com> Date: Fri May 12 14:19:59 2017 +0100 egl/wayland: select the format based on the interface used Rather than misleadingly depending on DRI2 for the WL_DRM vs WL_SHM formats, use the wl_drm and wl_shm interface respectively. Fixes: a1727aa75ed ("egl/wayland: Don't use DRM format codes for SHM") Signed-off-by: Emil Velikov <emil.veli...@collabora.com> (cherry picked from commit 6ef0fc400c690362b66add9c3533fae5f21d2cae) Signed-off-by: Juan A. Suarez Romero <jasua...@igalia.com> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=da7bde9d9a6d4b93cae002eb74100ab2a5bbebec Author: Rob Clark <robdcl...@gmail.com> Date: Fri May 26 10:18:31 2017 -0400 freedreno: fix fence creation fail if no rendering Android tries to create a FENCE_FD fence without any rendering. And then falls over when that fails. So just always create an initial batch. Fixes: e4ad8695 ("freedreno: fix crash when flush() but no rendering") Signed-off-by: Rob Clark <robdcl...@gmail.com> (cherry picked from commit 8fc9702a1b7027d266121713771eafd2aa1a93b6) Signed-off-by: Juan A. Suarez Romero <jasua...@igalia.com> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=7e9129f487c7cd5441ad6da1731813dcea569dfe Author: Timothy Arceri <tarc...@itsqueeze.com> Date: Thu May 18 15:10:08 2017 +1000 st/mesa: don't mark the program as in cache_fallback when there is cache miss When we fallback currently the gl_program objects are re-allocated. This is likely to change when the i965 cache lands, but for now this fixes a crash when using MESA_GLSL=cache_fb. This env var simulates the fallback path taken when a tgsi cache item doesn't exist due to being evicted previously or some kind of error. Unlike i965 we are always falling back at link time so it's safe to just re-allocate everything. We will be unnecessarily freeing and re-allocate a bunch of things here but it's probably not a huge deal, and can be changed when the i965 code lands. Fixes: 0e9991f957e2 ("glsl: don't reference shader prog data during cache fallback") Reviewed-by: Nicolai Hähnle <nicolai.haeh...@amd.com> (cherry picked from commit 80e643345ed0d8d3263b4ee23dd2998f0da170a8) Signed-off-by: Juan A. Suarez Romero <jasua...@igalia.com> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=d6d334c5fb0cb53bdb4158b134b31a90cef1d1aa Author: Daniel Stone <dani...@collabora.com> Date: Mon May 15 22:22:32 2017 +0100 egl/wayland: Ensure we get a back buffer Commit 9ca6711faa03 changed the Wayland winsys to only block for the frame callback inside SwapBuffers, rather than get_back_bo. get_back_bo would perform a single non-blocking Wayland event dispatch, to try to find any release events which we had pulled off the wire but not actually processed. The blocking dispatch was moved to SwapBuffers. This removed a guarantee that we would've processed all events inside get_back_bo(), and introduced a failure whereby the server could've sent a buffer release event, but we wouldn't have read it. In clients unconstrained by SwapInterval (rendering ~as fast as possible), which were being displayed directly without composition (buffer release delayed), this could lead to get_back_bo() failing because there were no free buffers available to it. The drawing rightly failed, but this was papered over because of the path in eglSwapBuffers() which attempts to guarantee a BO, in order to support calling SwapBuffers twice in a row with no rendering actually having been performed. Since eglSwapBuffers will perform a blocking dispatch of Wayland events, a buffer release would have arrived by that point, and we could then choose a buffer to post to the server. The effect was that frames were displayed out-of-order, since we grabbed a frame with random past content to display to the compositor. Ideally get_back_bo() failing should store a failure flag inside the surface and cause the next SwapBuffers to fail, but for the meantime, restore the correct behaviour such that get_back_bo() no longer fails. Signed-off-by: Daniel Stone <dani...@collabora.com> Reported-by: Eero Tamminen <eero.t.tammi...@intel.com> Acked-by: Pekka Paalanen <pekka.paala...@collabora.co.uk> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=98833 Fixes: 9ca6711faa03 ("Revert "wayland: Block for the frame callback in get_back_bo not dri2_swap_buffers"") (cherry picked from commit 1f2d0093bf5084f65a923582881dc74153c804a4) Signed-off-by: Juan A. Suarez Romero <jasua...@igalia.com> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=4af9c150524920fcedbda9731c8e4064842c5736 Author: Emil Velikov <emil.veli...@collabora.com> Date: Fri May 19 18:43:15 2017 +0100 radv: automake: list shared libraries after the static ones Analogous to previous commit - the compiler can discard xcb + wayland libs, since there is no user (the static libraries) before it on the command line. Cc: mesa-sta...@lists.freedesktop.org Signed-off-by: Emil Velikov <emil.veli...@collabora.com> Reviewed-by: Eduardo Lima Mitev <el...@igalia.com> (cherry picked from commit 2b6ad89d8695c6b87c113eda198a65389bae9f3a) Signed-off-by: Juan A. Suarez Romero <jasua...@igalia.com> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=007611b3c07e27a32f74349cb19d01a3d1e69779 Author: Emil Velikov <emil.veli...@collabora.com> Date: Fri May 19 18:43:14 2017 +0100 anv: automake: list shared libraries after the static ones The compiler can discard the shared ones from the link chain, since there is no user (the static libraries) before it on the command line. Cc: mesa-sta...@lists.freedesktop.org Reported-by: Laurent Carlier <lordhea...@gmail.com> Signed-off-by: Emil Velikov <emil.veli...@collabora.com> Reviewed-by: Eduardo Lima Mitev <el...@igalia.com> (cherry picked from commit 3e8790bff096a1a56bd1a3046c556a7f93b68ca8) Signed-off-by: Juan A. Suarez Romero <jasua...@igalia.com> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=39c70f902c451e414cc34577cac7a1ac9f4f68c3 Author: Jason Ekstrand <jason.ekstr...@intel.com> Date: Sat May 13 11:02:22 2017 -0700 i965: Round copy size to the nearest block in intel_miptree_copy The width and height of the copy don't have to be aligned to the block size if they specify the right or bottom edges of the image. (See also the comment and asserts right above). We need to round them up when we do the division in order to get it 100% right. Reviewed-by: Ben Widawsky <b...@bwidawsk.net> Reviewed-by: Kenneth Graunke <kenn...@whitecape.org> Cc: "17.0 17.1" <mesa-sta...@lists.freedesktop.org> (cherry picked from commit 0901d0bc4c78313eaaf29dff74c6a7bf5514f75b) Signed-off-by: Juan A. Suarez Romero <jasua...@igalia.com> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=af08c1672ee071df754f62bba550676714601763 Author: Jason Ekstrand <jason.ekstr...@intel.com> Date: Sat May 13 10:30:19 2017 -0700 i965/blorp: Do and end-of-pipe sync on both sides of fast-clear ops We've discovered in the Vulkan driver that simply doing the end-of-pipe sync afterwards is insufficient. The specific requirement stated in the PRM is that you have to do one every time you transition between the tree modes of "clear", "render", and "resolve". This is GL, so we could track it but any attempt to do so would most likely get it wrong. For now, it's easier to just assume that every fast-clear op is an island and do the sync both before and after. This also removes the unneeded flush and stall after slow-clear operations. Reviewed-by: Topi Pohjolainen <topi.pohjolai...@intel.com> Cc: "17.0 17.1" <mesa-sta...@lists.freedesktop.org> (cherry picked from commit 441cd7a81d6fb90dacf8ae441b438d9fe7db19eb) Signed-off-by: Juan A. Suarez Romero <jasua...@igalia.com> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=2f8ede04d9019a1c62f4f5f0c6f72b7b340188ef Author: Jason Ekstrand <jason.ekstr...@intel.com> Date: Wed May 17 11:16:57 2017 -0700 anv: Set image memory types based on the type count Reviewed-by: Nanley Chery <nanley.g.ch...@intel.com> Cc: "17.1" <mesa-sta...@lists.freedesktop.org> (cherry picked from commit 10fad58b31ee2354330152ca4072327d228fc2e7) Signed-off-by: Juan A. Suarez Romero <jasua...@igalia.com> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=e064f7d826812598749ce27868d9ff865c137ef4 Author: Jason Ekstrand <jason.ekstr...@intel.com> Date: Wed May 17 10:55:41 2017 -0700 anv: Set up memory types and heaps during physical device init Reviewed-by: Nanley Chery <nanley.g.ch...@intel.com> Cc: "17.1" <mesa-sta...@lists.freedesktop.org> (cherry picked from commit c1f4343807d1040bd7b5440aa2f5fccf5f12842d) [Juan A. Suarez: resolve trivial conflicts] Signed-off-by: Juan A. Suarez Romero <jasua...@igalia.com> Conflicts: src/intel/vulkan/anv_device.c src/intel/vulkan/anv_private.h URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=deecf2a49a2babcde6ebb7a6c4f83848836145ab Author: Jason Ekstrand <jason.ekstr...@intel.com> Date: Thu May 18 10:57:42 2017 -0700 anv: Predicate 48bit support on gen >= 8 This doesn't matter right now since it only affects whether or not we set the kernel bit but, if we ever do anything else based on it, we'll want it to be correct per-gen. Reviewed-by: Nanley Chery <nanley.g.ch...@intel.com> Cc: "17.1" <mesa-sta...@lists.freedesktop.org> (cherry picked from commit eceaf7e2340fca0079300692733206b2af555bd9) Signed-off-by: Juan A. Suarez Romero <jasua...@igalia.com> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=fafa17bd19a66777099529448914e09d50d33462 Author: Jason Ekstrand <jason.ekstr...@intel.com> Date: Thu May 18 11:31:48 2017 -0700 anv/image: Get rid of the memset(aux, 0, sizeof(aux)) hack Up until now, we've been memsetting the auxiliary surface to 0 at BindImageMemory time to ensure that it is properly initialized. However, this isn't correct because apps are allowed to freely alias memory between different images and buffers so long as they properly track whether or not a particular image is valid and, if it isn't, transition from UNINITIALIZED to something else before using it. We now implement those transitions so we can drop the hack. Reviewed-by: Nanley Chery <nanley.g.ch...@intel.com> Cc: "17.1" <mesa-sta...@lists.freedesktop.org> (cherry picked from commit 4eecd534f0544b62ae831a97708ade007541bd32) Signed-off-by: Juan A. Suarez Romero <jasua...@igalia.com> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=667ec77634cf407f39f4713f82ce68a37b4b22b8 Author: Jason Ekstrand <jason.ekstr...@intel.com> Date: Thu May 18 11:30:47 2017 -0700 anv: Handle transitioning depth from UNDEFINED to other layouts Reviewed-by: Nanley Chery <nanley.g.ch...@intel.com> Cc: "17.1" <mesa-sta...@lists.freedesktop.org> (cherry picked from commit cc45c4bb8072b6593812f9b68a7b3d2d00bfb9f0) Signed-off-by: Juan A. Suarez Romero <jasua...@igalia.com> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=207dd2e9e6c4dc79df0d59b42949d8e3edf27177 Author: Jason Ekstrand <jason.ekstr...@intel.com> Date: Wed May 17 19:02:42 2017 -0700 anv: Handle color layout transitions from the UNINITIALIZED layout This causes dEQP-VK.api.copy_and_blit.resolve_image.partial.* to start failing due to test bugs. See CL 1031 for a test fix. Reviewed-by: Nanley Chery <nanley.g.ch...@intel.com> Cc: "17.1" <mesa-sta...@lists.freedesktop.org> (cherry picked from commit 75edecf5020a9b833ff7e2929f64ceb11c9df679) Signed-off-by: Juan A. Suarez Romero <jasua...@igalia.com> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=c5b1b05e1c28c24ef23dc393b601a5fc3f423994 Author: Marek Olšák <marek.ol...@amd.com> Date: Fri Apr 7 18:30:28 2017 +0200 radeonsi/gfx9: compile shaders with +xnack so that LLVM doesn't allocate SGPRs where XNACK is. Cc: 17.1 <mesa-sta...@lists.freedesktop.org> Reviewed-by: Nicolai Hähnle <nicolai.haeh...@amd.com> (cherry picked from commit 2beb31bd7c186641a2bb9abf6d2e13d42e43d944) Signed-off-by: Juan A. Suarez Romero <jasua...@igalia.com> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=cfa6a8bb50ac8de86f9123e3a57a277107119dd6 Author: Emil Velikov <emil.veli...@collabora.com> Date: Thu May 4 11:05:27 2017 +0100 travis: remove workarounds for the Vulkan target Previously we required --enable-egl for the platform selection to work. Additionally due to the broken DRI3 dependency tracking we needed --enable-glx. Since both of these are now sorted now we no longer need the workarounds. While we're here, explicitly enable dri3. Cc: <mesa-sta...@lists.freedesktop.org> Signed-off-by: Emil Velikov <emil.veli...@collabora.com> Reviewed-by: Eric Engestrom <eric.engest...@imgtec.com> (cherry picked from commit 552cd5cce5ff75527d4755e1e2fb13ecf268575f) Signed-off-by: Juan A. Suarez Romero <jasua...@igalia.com> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=22ba39352dd0d0660ae641ff0a8a2adcf2cc8235 Author: Emil Velikov <emil.veli...@collabora.com> Date: Wed Dec 7 14:42:00 2016 +0000 configure: error out if building XVMC w/o supported platform Cc: <mesa-sta...@lists.freedesktop.org> Signed-off-by: Emil Velikov <emil.veli...@collabora.com> Reviewed-by: Eric Engestrom <eric.engest...@imgtec.com> (cherry picked from commit b496fc29327a9dfb10a33ed0d6db72f1310fb88a) Signed-off-by: Juan A. Suarez Romero <jasua...@igalia.com> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=f7b6b34aaec412ce8b23b7bf6f053d33291d421c Author: Emil Velikov <emil.veli...@collabora.com> Date: Wed Dec 7 14:40:39 2016 +0000 configure: error out if building VDPAU w/o supported platform Cc: <mesa-sta...@lists.freedesktop.org> Signed-off-by: Emil Velikov <emil.veli...@collabora.com> Reviewed-by: Eric Engestrom <eric.engest...@imgtec.com> (cherry picked from commit 037e9d37b4985e432a48b52f413ac4ba36ab7053) Signed-off-by: Juan A. Suarez Romero <jasua...@igalia.com> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=112e732867735e551e02f651d216641e96d704f9 Author: Emil Velikov <emil.veli...@collabora.com> Date: Wed Dec 7 14:38:10 2016 +0000 configure: error out if building OMX w/o supported platform Cc: <mesa-sta...@lists.freedesktop.org> Signed-off-by: Emil Velikov <emil.veli...@collabora.com> Reviewed-by: Eric Engestrom <eric.engest...@imgtec.com> (cherry picked from commit 1914c814a6c4aaaf03c26f6c20a9871ebc98895f) Signed-off-by: Juan A. Suarez Romero <jasua...@igalia.com> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=637a5d58b04d5ec7c20f789e7734310d874042c0 Author: Emil Velikov <emil.veli...@collabora.com> Date: Wed Dec 7 14:32:45 2016 +0000 configure: error out if building VA w/o supported platform A bit pedantic patch to fool proof should someone start thinkering without knowing what they do. Cc: <mesa-sta...@lists.freedesktop.org> Signed-off-by: Emil Velikov <emil.veli...@collabora.com> Reviewed-by: Eric Engestrom <eric.engest...@imgtec.com> (cherry picked from commit 63e11ac2b5c99fa351be5f61a035f72384609a1c) Signed-off-by: Juan A. Suarez Romero <jasua...@igalia.com> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=1f88c3c0cbfa2f2811737c7cd5e4660f60779398 Author: Emil Velikov <emil.veli...@collabora.com> Date: Wed May 3 22:04:20 2017 +0100 gallium/targets: link against XCB only as needed OMX and VA can optionally use the X11 DRI2/DRI3, thus we should link only as required. Cc: <mesa-sta...@lists.freedesktop.org> Signed-off-by: Emil Velikov <emil.veli...@collabora.com> (cherry picked from commit fcbedce31012ee319d9e083a10bc44120f830e4d) Signed-off-by: Juan A. Suarez Romero <jasua...@igalia.com> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=3bcbf4d1d56e66f958944d921271bc5820bef9ae Author: Emil Velikov <emil.veli...@collabora.com> Date: Mon Dec 5 22:22:44 2016 +0000 st/omx: fix building against X11-less setups The vl_*_screen_create API properly falls back to a NOP when we're building without specific platforms. So the only thing we need is to handle the lack of X11/Xlib.h and provide a dummy Display define. Cc: <mesa-sta...@lists.freedesktop.org> Cc: Christian König <christian.koe...@amd.com> Signed-off-by: Emil Velikov <emil.veli...@collabora.com> (cherry picked from commit 115cb729d8feedf2d33187a5789ebc7582cc3042) Signed-off-by: Juan A. Suarez Romero <jasua...@igalia.com> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=114a4a99bd88c39b46e68125532e4f93f5db1fc5 Author: Emil Velikov <emil.veli...@collabora.com> Date: Mon Dec 5 22:27:21 2016 +0000 st/omx: remove unneeded X11 include En route to a X11-less builds Cc: <mesa-sta...@lists.freedesktop.org> Signed-off-by: Emil Velikov <emil.veli...@collabora.com> Reviewed-by: Nayan Deshmukh <nayan26deshm...@gmail.com> Reviewed-by: Christian König <christian.koe...@amd.com> (cherry picked from commit d71ce62e84c588a804f457ad159c8ab94cf335b2) Signed-off-by: Juan A. Suarez Romero <jasua...@igalia.com> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=9b44f3fa95250634371fa7b0cf402ef19df2d0db Author: Emil Velikov <emil.veli...@collabora.com> Date: Fri Nov 25 17:55:52 2016 +0000 st/va: fix misplaced closing bracket It's been like this since the code was introduced. Fixes: 86eb4131a90 (st/va: add headless support, i.e. VA_DISPLAY_DRM) Cc: <mesa-sta...@lists.freedesktop.org> Cc: Julien Isorce <julien.iso...@gmail.com> Signed-off-by: Emil Velikov <emil.veli...@collabora.com> Reviewed-by: Nayan Deshmukh <nayan26deshm...@gmail.com> Reviewed-by: Christian König <christian.koe...@amd.com> (cherry picked from commit aaea53c2c02e4d5352ce3d08dfd43b2676d32000) Signed-off-by: Juan A. Suarez Romero <jasua...@igalia.com> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=1e8e12e09c228ce7471a99c85f1df6bbb0976fac Author: Emil Velikov <emil.veli...@collabora.com> Date: Tue May 2 17:53:17 2017 +0100 auxiliary/vl: use vl_*_screen_create stubs when building w/o platform Provide a dummy stub when the user has opted w/o said platform, thus we can build the binaries without unnecessarily requiring X11/other headers. In order to avoid build and link-time issues, we remove the HAVE_DRI3 guards in the VA and VDPAU state-trackers. With this change st/va will return VA_STATUS_ERROR_ALLOCATION_FAILED instead of VA_STATUS_ERROR_UNIMPLEMENTED. That is fine since upstream users of libva such as vlc and mpv do little error checking, let alone distinguish between the two. Cc: Leo Liu <leo....@amd.com> Cc: Guttula, Suresh <suresh.gutt...@amd.com> Cc: mesa-sta...@lists.freedesktop.org Cc: Christian König <christian.koe...@amd.com> Signed-off-by: Emil Velikov <emil.veli...@collabora.com> (cherry picked from commit 369e5dd939b4af6c653d6cbbe9be257a9c2c950e) Signed-off-by: Juan A. Suarez Romero <jasua...@igalia.com> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=023b1da8c0ce8b399e94edf57734f1ce5b2623fc Author: Emil Velikov <emil.veli...@collabora.com> Date: Mon Dec 5 20:14:24 2016 +0000 configure: error out when building X11 Vulkan without DRI3 Vulkan supports only DRI3 enabled X11 platforms. Make it obvious, should one consider building without it. Cc: Jason Ekstrand <ja...@jlekstrand.net> Cc: Ville Syrjälä <ville.syrj...@linux.intel.com> Cc: mesa-sta...@lists.freedesktop.org Signed-off-by: Emil Velikov <emil.veli...@collabora.com> Reviewed-by: Eric Engestrom <e...@engestrom.ch> (cherry picked from commit 05043e0e8e0bd5e3019f480557d452b4c165f8f2) Signed-off-by: Juan A. Suarez Romero <jasua...@igalia.com> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=15fc135cdaae98e954e9cbb0006f56bf3bfe24bc Author: Emil Velikov <emil.veli...@collabora.com> Date: Wed May 3 16:20:49 2017 +0100 loader: build libloader_dri3_helper.la only with HAVE_PLATFORM_X11 Pretty much every other place does the same. Cc: mesa-sta...@lists.freedesktop.org Signed-off-by: Emil Velikov <emil.veli...@collabora.com> Reviewed-by: Eric Engestrom <e...@engestrom.ch> (cherry picked from commit d80d6d662e4199e9a4ec9d924007f8fb0b91b444) Signed-off-by: Juan A. Suarez Romero <jasua...@igalia.com> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=60297c97cd297edaab9563dcd521c7a39b0e753b Author: Emil Velikov <emil.l.veli...@gmail.com> Date: Sun Nov 27 00:25:28 2016 +0000 configure: check once for DRI3 dependencies Currently we are having the XCB_DRI3 dependencies duplicated, partially. Just do a once-off check and add all of the respective CFLAGS/LIBS where needed. As a nice side effect this helps us solve a couple of FIXMEs. DRI3 is not a thing w/o X11 so disable it in such cases. Cc: mesa-sta...@lists.freedesktop.org Signed-off-by: Emil Velikov <emil.veli...@collabora.com> Reviewed-by: Eric Engestrom <e...@engestrom.ch> (cherry picked from commit acf3d2afab0571b74c0c0d1aee0f631b33fdc7da) Signed-off-by: Juan A. Suarez Romero <jasua...@igalia.com> squashed with: configure.ac: add xcb-fixes to the XCB DRI3 list The XCB module is used by the VL targets. Thus omitting it can lead to link-time errors due to unresolved symbols. Other DRI3 users such as the Vulkan WSI and the dri3 loader helper do not use an update region in their xcb_present_pixmap() call. We will look into that at a later stage. Fixes: acf3d2afab0 ("configure: check once for DRI3 dependencies") Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=101110 Signed-off-by: Emil Velikov <emil.veli...@collabora.com> (cherry picked from commit 9a90d6a9d4ee1632aa357a2ac9be150e058e2c10) Signed-off-by: Juan A. Suarez Romero <jasua...@igalia.com> squashed with: configure.ac: s/xcb-fixes/xcb-xfixes/ Former is not a thing, even if I have a hacked xcb-fixes.pc on my system. Thanks for spotting it Mark! Fixes: 9a90d6a9d4e ("configure.ac: add xcb-fixes to the XCB DRI3 list") Signed-off-by: Emil Velikov <emil.veli...@collabora.com> (cherry picked from commit 48cd1919ff1584c211ec7958864cac2e1cb347cf) Signed-off-by: Juan A. Suarez Romero <jasua...@igalia.com> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=4c0010e93cf24aa1a0ae87c912dfa469076a2cae Author: Emil Velikov <emil.veli...@collabora.com> Date: Wed May 3 15:57:31 2017 +0100 configure: error out when building GLX w/o the X11 platform Building EGL/Vulkan/other without X11, while GLX is enabled is confusing and misleading. In practise anyone aiming at the former will also disable GLX. The inverse (some examples below) should still work: ./configure --disable-glx --with-platforms=x11 --with-vulkan-drivers=intel ./configure --disable-glx --with-platforms=x11 --enable-egl Keep in mind that the X11 platform is enabled, by default. Cc: <mesa-sta...@lists.freedesktop.org> Signed-off-by: Emil Velikov <emil.veli...@collabora.com> Reviewed-by: Eric Engestrom <e...@engestrom.ch> (cherry picked from commit 8212fc95b59d0dd3cae1fe11359e0fa96d75e1bc) Signed-off-by: Juan A. Suarez Romero <jasua...@igalia.com> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=5e2a985a54813159d34913fdb8c9da6d5d245fa4 Author: Emil Velikov <emil.veli...@collabora.com> Date: Mon Dec 5 21:32:30 2016 +0000 configure: set HAVE_foo_PLATFORM as applicable Rather than having multiple places that define the macros, do it just once in configure. Makes existing code a bit shorter and easier to manage as we fix the VL targets with follow-up commits. Cc: mesa-sta...@lists.freedesktop.org Signed-off-by: Emil Velikov <emil.veli...@collabora.com> Reviewed-by: Eric Engestrom <e...@engestrom.ch> (cherry picked from commit f353f844a08c78f2aa225165c05dae31f5700845) Signed-off-by: Juan A. Suarez Romero <jasua...@igalia.com> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=a0f311a58866f53585634daf580d871cf2544769 Author: Emil Velikov <emil.veli...@collabora.com> Date: Tue Apr 25 16:39:52 2017 +0100 configure: enable the surfaceless platform by default A simple platform that you want to use in a many usecases. See the spec file details. It has no special requirements plus it takes less than a second to build. Cc: mesa-sta...@lists.freedesktop.org Signed-off-by: Emil Velikov <emil.veli...@collabora.com> Acked-by: Tapani Pälli <tapani.pa...@intel.com> Reviewed-by: Eric Engestrom <e...@engestrom.ch> (cherry picked from commit 2d35773221d63658bb764f90bd7be95f910f6309) Signed-off-by: Juan A. Suarez Romero <jasua...@igalia.com> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=1d89787a1971e0e3cd68a2401b047da080d1a1c9 Author: Emil Velikov <emil.veli...@collabora.com> Date: Wed May 3 21:24:26 2017 +0100 configure: loosen --with-platforms heuristics Remove the enable-egl pre-requirement. Platform selection does not depend on EGL. Cc: <mesa-sta...@lists.freedesktop.org> Signed-off-by: Emil Velikov <emil.veli...@collabora.com> Reviewed-by: Eric Engestrom <e...@engestrom.ch> (cherry picked from commit edb5a65f93189472814afa97b1e3a54b2478b543) Signed-off-by: Juan A. Suarez Romero <jasua...@igalia.com> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=29dc0b2d8c89ae0f49ad13440e9d217cbf06c477 Author: Emil Velikov <emil.veli...@collabora.com> Date: Fri Nov 25 18:34:03 2016 +0000 configure: update remaining --with-egl-platforms references Rename the remaining references to omit the egl part. Cc: mesa-sta...@lists.freedesktop.org Signed-off-by: Emil Velikov <emil.veli...@collabora.com> Reviewed-by: Eric Engestrom <e...@engestrom.ch> (cherry picked from commit 73682f82bc8ab2b96b76ec12da9d2d130ec5e352) Signed-off-by: Juan A. Suarez Romero <jasua...@igalia.com> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=76362188cc1bf7f37e462d8bd7ea8e7e1d3d60cf Author: Emil Velikov <emil.veli...@collabora.com> Date: Fri Nov 25 17:11:51 2016 +0000 configure: rename remaining HAVE_EGL_PLATFORM_* guards Analogous to others earlier, these will be used to control the platform for more than the EGL driver. Cc: <mesa-sta...@lists.freedesktop.org> Signed-off-by: Emil Velikov <emil.veli...@collabora.com> Reviewed-by: Eric Engestrom <e...@engestrom.ch> (cherry picked from commit 27737e7e84ea1fc9afb44d9294bcf9896f876cfc) Signed-off-by: Juan A. Suarez Romero <jasua...@igalia.com> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=817f9982d511241a1a043f98815a5d1b002732ea Author: Emil Velikov <emil.veli...@collabora.com> Date: Wed May 3 17:02:35 2017 +0100 configure: move platform handling further up We'll need it for the Vulkan drivers and the VL targets. Cc: <mesa-sta...@lists.freedesktop.org> Signed-off-by: Emil Velikov <emil.veli...@collabora.com> Reviewed-by: Eric Engestrom <e...@engestrom.ch> (cherry picked from commit 3208fd2e46bc627633177ebe60636c59a5684add) Signed-off-by: Juan A. Suarez Romero <jasua...@igalia.com> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=2ebf5e5aa52f7948c147f87d5942d45319c0c1ff Author: Daniel Stone <dani...@collabora.com> Date: Fri May 5 14:49:09 2017 +0100 egl/wayland: Use per-surface event queues During display initialisation, we need a separate event queue to handle the registry events, which is correctly handled. But we also need separate per-surface event queues to handle swapchain-related events, such as surface frame events and buffer release events. This avoids two surfaces from the same EGLDisplay, both current on separate threads, dispatching each other's events. Create separate per-surface event queues, create wl_surface and wl_drm proxy wrapper objects per surface, so we eliminate the race around sending events to the wrong queue. swrast buffers do not need a dedicated proxy wrapper, as the wl_shm_pool used to create the wl_buffers, being transient, can itself be assigned to a queue. Signed-off-by: Daniel Stone <dani...@collabora.com> Reviewed-by: Lionel Landwerlin <lionel.g.landwer...@intel.com> Fixes: 36b9976e1f99 ("egl/wayland: Avoid race conditions when on non-main thread") Cc: mesa-sta...@lists.freedesktop.org (cherry picked from commit 03dd9a88b0be17ff0ce91e92f6902a9a85ba584a) Signed-off-by: Juan A. Suarez Romero <jasua...@igalia.com> Squashed with: egl/wayland: verify event queue was allocated We're already verified that 'window' wasn't NULL, I'm guessing this allocation error is about the newly created queue. CID: 1409754 Fixes: 03dd9a88b0b ("egl/wayland: Use per-surface event queues") Signed-off-by: Lionel Landwerlin <lionel.g.landwer...@intel.com> Reviewed-by: Daniel Stone <dani...@collabora.com> (cherry picked from commit 30dc56bb5b313ae67c6e8648e23bb38c8e737488) Signed-off-by: Juan A. Suarez Romero <jasua...@igalia.com> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=013433b3d9399a1fa0966e4e13d3c3f3ed36264c Author: Daniel Stone <dani...@collabora.com> Date: Fri May 5 14:44:20 2017 +0100 egl/wayland: Don't open-code roundtrip wl_display_roundtrip_queue() exists and can replace roundtrip(). The API was introduced with wayland 1.6, while we currently require 1.11. Signed-off-by: Daniel Stone <dani...@collabora.com> Reviewed-by: Emil Velikov <emil.veli...@collabora.com> Reviewed-by: Lionel Landwerlin <lionel.g.landwer...@intel.com> Cc: mesa-sta...@lists.freedesktop.org (cherry picked from commit 8118bc269f39ea0b965752ea89b886b28094db42) Signed-off-by: Juan A. Suarez Romero <jasua...@igalia.com> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=0dbab1e0f716f846c266931b55715c5fbba21228 Author: Daniel Stone <dani...@collabora.com> Date: Tue May 2 10:06:32 2017 +0100 vulkan/wsi/wayland: Use proxy wrappers for swapchain Though most swapchain operations used a queue, they were racy in that the object was created with the queue only set later, meaning that its event could potentially be dispatched from the default queue in between these two steps. Use proxy wrappers to avoid this race, also assigning wl_buffers created for the swapchain to the event queue. Signed-off-by: Daniel Stone <dani...@collabora.com> Reviewed-by: Lionel Landwerlin <lionel.g.landwer...@intel.com> Cc: mesa-sta...@lists.freedesktop.org (cherry picked from commit 5034c615582add2be9309dc1d7383fb0daba6dd3) Signed-off-by: Juan A. Suarez Romero <jasua...@igalia.com> Squashed with: vulkan/wsi/wayland: Fix proxy wrappers for swapchain recreation Before the swapchain event queue is destroyed, all proxy objects that reference it must be dropped. Otherwise we risk a use-after-free if a frame callback event or buffer release events are received afterwards. This happens when an application destroys and recreates a swapchain in FIFO mode between two frames without using the VkSwapchainCreateInfoKHR::oldSwapchain mechanism to keep the old swapchain until after the next redraw. Fixes: 5034c615582a ("vulkan/wsi/wayland: Use proxy wrappers for swapchain") Signed-off-by: Philipp Zabel <philipp.za...@gmail.com> Reviewed-by: Daniel Stone <dani...@collabora.com> Cc: mesa-sta...@lists.freedesktop.org (cherry picked from commit 1586768e7475a2732650f0ec2738b4e8429e4b40) Signed-off-by: Juan A. Suarez Romero <jasua...@igalia.com> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=7cd7f0bfe410a7333ad4a18d71eb8076b9f597fa Author: Daniel Stone <dani...@collabora.com> Date: Tue May 2 10:04:33 2017 +0100 vulkan/wsi/wayland: Use per-display event queue Calling random callbacks on the display's event queue is hostile, as we may call into client code when it least expects it. Create our own event queue, one per wsi_wl_display, and use that for the registry. Signed-off-by: Daniel Stone <dani...@collabora.com> Reviewed-by: Lionel Landwerlin <lionel.g.landwer...@intel.com> Cc: mesa-sta...@lists.freedesktop.org (cherry picked from commit c902a1957d079941823006d56b6810e1e85be4b0) Signed-off-by: Juan A. Suarez Romero <jasua...@igalia.com> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=260dac84472f5c8fcbacd0d6c02eb92956ab1175 Author: Daniel Stone <dani...@collabora.com> Date: Tue May 2 09:51:40 2017 +0100 vulkan/wsi/wayland: Remove roundtrip when creating image There's no need to call wl_display_roundtrip() after trying to create a buffer through wl_drm; if it succeeds then everything is fine, and if it fails, then we get a fatal protocol error so can't recover anyway. Additionally, doing a roundtrip on the default / main application queue, is destructive anyway, so would need to be its own queue. Signed-off-by: Daniel Stone <dani...@collabora.com> Reviewed-by: Lionel Landwerlin <lionel.g.landwer...@intel.com> Cc: mesa-sta...@lists.freedesktop.org (cherry picked from commit afe8c8a2997950cd63076b7c9eba39e1858fee43) Signed-off-by: Juan A. Suarez Romero <jasua...@igalia.com> URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=36dd5255695ec58e34cd9a8a5a175764d9814190 Author: Daniel Stone <dani...@collabora.com> Date: Fri Apr 28 16:49:47 2017 +0200 vulkan: Fix Wayland uninitialised registry Untangle the exit cleanup paths so we don't try to use the registry variable before it's been initialised. Signed-off-by: Daniel Stone <dani...@collabora.com> Reviewed-by: Lionel Landwerlin <lionel.g.landwer...@intel.com> Cc: mesa-sta...@lists.freedesktop.org (cherry picked from commit d9a8bba7f44f7042f0bbd659d0ed342236423dd3) Signed-off-by: Juan A. Suarez Romero <jasua...@igalia.com> _______________________________________________ mesa-commit mailing list mesa-commit@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-commit