Mesa (21.3): 40 new commits

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Wed Oct 20 20:18:35 UTC 2021


URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=7976828ae314bbe139dc879a5ff0746f3f9f5b1c
Author: Eric Engestrom <eric at engestrom.ch>
Date:   Wed Oct 20 20:48:17 2021 +0100

    VERSION: bump for 21.3.0-rc2
    
    Signed-off-by: Eric Engestrom <eric at engestrom.ch>

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=f8b5444a09a0cee9e25bd02339d081c20c70823b
Author: Mike Blumenkrantz <michael.blumenkrantz at gmail.com>
Date:   Tue Oct 19 13:57:39 2021 -0400

    zink: rescue surfaces/bufferviews for cache hits during deletion
    
    this is a wild race condition, but it's possible for these to get their
    final unref, enter their destructor, and then get a cache hit while waiting
    on the lock to remove themselves from the cache
    
    in such a scenario, a second, normal check of the refcount will suffice,
    as the increment is atomic, and the value will otherwise be zero
    
    fixes crashes in basemark
    
    cc: mesa-stable
    
    Reviewed-by: Hoe Hao Cheng <haochengho12907 at gmail.com>
    Reviewed-by: Dave Airlie <airlied at redhat.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13442>
    (cherry picked from commit 86b3d8c66ce17ddcaefa5bdea68882cc03a57f15)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=f1b779361c589039f3a6196ec8b67265b5746710
Author: Mykhailo Skorokhodov <mykhailo.skorokhodov at globallogic.com>
Date:   Tue Sep 28 10:33:26 2021 +0300

    Revert "iris: add tile cache flush to iris_copy_region"
    
    This reverts commit 27534a49cf3872646cb8ef9371707d74a81b1986
    
    Signed-off-by: Mykhailo Skorokhodov <mykhailo.skorokhodov at globallogic.com>
    Reviewed-by: Felix DeGrood <felix.j.degrood at intel.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12979>
    (cherry picked from commit 5afce85f2b605b7384da02aa6654ab3a00eee2bc)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=d797e98b6f85df50cee876b2f34bd1b25faf1a61
Author: Mykhailo Skorokhodov <mykhailo.skorokhodov at globallogic.com>
Date:   Wed Sep 22 16:03:23 2021 +0300

    iris: Add missed tile flush flag
    
    Without adding `PIPE_CONTROL_TILE_CACHE_FLUSH` into `iris_emit_pipe_control`
    gen12+ (UHD 750 in my case) has issues with textures.
    
    Related-to: https://gitlab.freedesktop.org/mesa/mesa/-/issues/5029
    Fixes: c85ea824('iris: reduce redundant tile cache flushes')
    
    Signed-off-by: Mykhailo Skorokhodov <mykhailo.skorokhodov at globallogic.com>
    Reviewed-by: Felix DeGrood <felix.j.degrood at intel.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12979>
    (cherry picked from commit 0523607ebb108d8c90bbda9c6564b66a0a6250e6)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=9aaf29b93879224975542e7aeadaaccf06570195
Author: Marek Olšák <marek.olsak at amd.com>
Date:   Mon Oct 18 12:39:08 2021 -0400

    mesa: fix crashes in the no_error path of glUniform
    
    Fixes: bd2662bfa1c87 - mesa: add KHR_no_error support to glUniform*() functions
    
    Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer at amd.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13417>
    (cherry picked from commit 03186773a6bfcba3dce19ea3cc5d66afbeae0501)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=97a30b2d216652420a63203e254243a58e3f02f9
Author: Samuel Pitoiset <samuel.pitoiset at gmail.com>
Date:   Tue Oct 19 13:27:55 2021 +0200

    aco: fix emitting stream outputs when the first component isn't zero
    
    Fixes a bunch of XFB piglit tests with Zink.
    
    Cc: 21.3 mesa-stable
    Signed-off-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
    Reviewed-by: Rhys Perry <pendingchaos02 at gmail.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13437>
    (cherry picked from commit 572a902566471b882267d0193784d2afd05ca4ba)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=1771a7da08737163049ae68f2ae41e14e46f0c86
Author: Samuel Pitoiset <samuel.pitoiset at gmail.com>
Date:   Tue Oct 19 14:01:45 2021 +0200

    aco: fix invalid IR generated for b2f64 when the dest is a VGPR
    
    Fixes few 64-bit piglit tests with Zink.
    
    Cc: 21.3 mesa-stable
    Signed-off-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
    Reviewed-by: Rhys Perry <pendingchaos02 at gmail.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13435>
    (cherry picked from commit e3cbb0eb6a7b998f33d5175274fd3a4bf4fd5973)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=5532c4267f1ba54fb18a51b8aa2e260bcb5b66e6
Author: Samuel Pitoiset <samuel.pitoiset at gmail.com>
Date:   Mon Oct 18 17:30:46 2021 +0200

    radv: do not remove PSIZ for streamout shaders
    
    It might still be read later from the streamout buffer.
    
    Fixes a regression with
    ext_transform_feedback-builtin-varyings gl_PointSize and Zink.
    
    Fixes: 92e1981a800 ("radv: Remove PSIZ output when it isn't needed.")
    Signed-off-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
    Reviewed-by: Timur Kristóf <timur.kristof at gmail.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13413>
    (cherry picked from commit 19c91a120d49ec5233c271f351495e662795223d)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=80305d7c2e90f8c825c449bba43eae11ddefb36e
Author: Jan Beich <jbeich at FreeBSD.org>
Date:   Sat Feb 20 12:30:56 2021 +0000

    meson: disable -Werror=thread-safety on FreeBSD
    
    Annotated <pthread.h> exposes too many errors in Mesa that are
    non-trivial to fix and keep working without FreeBSD CI.
    
    Fixes: 0d5fe24c9b7d ("macros: Add thread-safety annotation macros")
    Reviewed-by: Eric Engestrom <eric at engestrom.ch>
    Cc: mesa-stable
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9168>
    (cherry picked from commit 60b7c3a0f49241f95e5b6f8da5d60eaa7bbeaabb)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=356cac1c29cf092ef40166f4c7b64406e5d208b3
Author: Mike Blumenkrantz <michael.blumenkrantz at gmail.com>
Date:   Mon Oct 18 10:40:12 2021 -0400

    zink: fully zero surface creation struct
    
    gotta get those holes for caching
    
    cc: mesa-stable
    
    Reviewed-by: Hoe Hao Cheng <haochengho12907 at gmail.com>
    Reviewed-by: Dave Airlie <airlied at redhat.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13410>
    (cherry picked from commit e66558985a9e85393ff844f8a16e85b4cf812f0e)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=b28da95fa417d6d70d785ff0137800f6c107649c
Author: Mike Blumenkrantz <michael.blumenkrantz at gmail.com>
Date:   Fri Oct 15 11:57:14 2021 -0400

    zink: add a read barrier for indirect dispatch
    
    using the draw stage here doesn't make much sense, but that's what the
    spec says, so let's git er done
    
    fixes dEQP-GL45.functional.compute.indirect_dispatch* on radv
    
    Cc: mesa-stable
    
    Reviewed-by: Dave Airlie <airlied at redhat.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13381>
    (cherry picked from commit a2789fde0c7a8aa5436560692633838079e2e848)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=28261505d6a86ad82b03d27cb2911cc7922d6826
Author: Mike Blumenkrantz <michael.blumenkrantz at gmail.com>
Date:   Thu Oct 14 10:13:25 2021 -0400

    zink: use static array for detecting VK_TIME_DOMAIN_DEVICE_EXT
    
    there's only a few possible values for this, so just use a static array
    to avoid leaking
    
    Fixes: 039078fe972 ("zink: slight refactor of load_device_extensions()")
    
    Reviewed-by: Dave Airlie <airlied at redhat.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13360>
    (cherry picked from commit 11dd9e4ee4a5241ee18cfe68d8bee2ee3da55dc7)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=b67308a4491e3815a2ae0ef964f973f351781e44
Author: Witold Baryluk <baryluk at smp.if.uj.edu.pl>
Date:   Fri Oct 15 00:40:14 2021 +0200

    zink: Fully initialize VkBufferViewCreateInfo for hashing
    
    Makes hashing achieve higher hit rate, and valgrind happier.
    
    Reviewed-by: Hoe Hao Cheng <haochengho12907 at gmail.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13371>
    (cherry picked from commit ae525da0e45b6d1a7c6921576f63380ae5e8ac95)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=2d6c11843dbe241c88e39f70d261ab3b27ac519f
Author: Marcin Ślusarz <marcin.slusarz at intel.com>
Date:   Wed Oct 13 11:21:41 2021 +0200

    intel: fix INTEL_DEBUG environment variable on 32-bit systems
    
    INTEL_DEBUG is defined (since 4015e1876a77162e3444eeaa29a0dfbc47efe90e) as:
    
     #define INTEL_DEBUG __builtin_expect(intel_debug, 0)
    
    which unfortunately chops off upper 32 bits from intel_debug
    on platforms where sizeof(long) != sizeof(uint64_t) because
    __builtin_expect is defined only for the long type.
    
    Fix this by changing the definition of INTEL_DEBUG to be function-like
    macro with "flags" argument. New definition returns 0 or 1 when
    any of the flags match.
    
    Most of the changes in this commit were generated using:
    for c in `git grep INTEL_DEBUG | grep "&" | grep -v i915 | awk -F: '{print $1}' | sort | uniq`; do
        perl -pi -e "s/INTEL_DEBUG & ([A-Z0-9a-z_]+)/INTEL_DBG(\1)/" $c
        perl -pi -e "s/INTEL_DEBUG & (\([A-Z0-9_ |]+\))/INTEL_DBG\1/" $c
    done
    but it didn't handle all cases and required minor cleanups (like removal
    of round brackets which were not needed anymore).
    
    Signed-off-by: Marcin Ślusarz <marcin.slusarz at intel.com>
    Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>
    Reviewed-by: Caio Marcelo de Oliveira Filho <caio.oliveira at intel.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13334>
    (cherry picked from commit d05f7b4a2ca68cc11825239273f6d8558b5ffde8)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=ca1c300ecda25f42912c3e40b786d27cf484f931
Author: Neha Bhende <bhenden at vmware.com>
Date:   Thu Oct 14 09:37:21 2021 -0700

    st: Fix 64-bit vertex attrib index for TGSI path
    
    Patch 77c2b022a0c5 removed lowering of 64-bit vertex attribs to 32bits.
    This has thrown TGSI translation off the guard for 64bit attrib.
    This lead to fail/crash of 1000+ piglit tests.
    
    This patch basically fixes 64 bit attrib index for TGSI shader by adding placeholder
    for second part of a double attribute.
    It fixes all regressed piglit tests.
    
    A big help from Charmaine to fix this regression
    Reviewed-by: Charmaine Lee <charmainel at vmware.com>
    Reviewed-by: Marek Olšák <marek.olsak at amd.com>
    Reviewed-by: Ilia Mirkin <imirkin at alum.mit.edu>
    
    Fixes: 77c2b022a0c5 ("st/mesa: remove lowering of 64-bit vertex attribs to 32 bits")
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13363>
    (cherry picked from commit be6d584de43966ee58bf1fcac156ebf8040081d1)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=ed1db8e8cad1fc5f14683f86a3bbb9c890fda9a0
Author: Samuel Pitoiset <samuel.pitoiset at gmail.com>
Date:   Mon Oct 18 16:47:53 2021 +0200

    radv: fix OpImageQuerySamples with non-zero descriptor set
    
    The descriptor set was always 0 because it wasn't gathered by the
    shader info pass.
    
    This fixes CPU crashes with
    arb_shader_texture_image_samples-builtin-image and Zink.
    
    Cc: 21.3 mesa-stable
    Signed-off-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
    Reviewed-by: Bas Nieuwenhuizen <bas at basnieuwenhuizen.nl>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13411>
    (cherry picked from commit 5b797bd48555ea70a4313d68e34a0899e568b30b)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=4504abe5119191117032503ce8ef1fc34e176dd4
Author: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer at amd.com>
Date:   Fri Oct 15 17:28:19 2021 +0200

    radeonsi: use viewport offset in quant_mode determination
    
    Instead of only using the viewport extent.
    
    Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/5344
    Cc: mesa-stable
    Reviewed-by: Marek Olšák <marek.olsak at amd.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13382>
    (cherry picked from commit 234c69f60097d01b2c31a51421abc5a39321130c)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=d19e28c139ca9b3c2e015f9c3ba974d1828ef542
Author: Vinson Lee <vlee at freedesktop.org>
Date:   Sat Oct 16 22:34:25 2021 -0700

    anv: Fix assertion.
    
    Fix defect reported by Coverity Scan.
    
    Assign instead of compare (PW.ASSIGN_WHERE_COMPARE_MEANT)
    assign_where_compare_meant: use of "=" where "==" may have been intended
    
    Fixes: 35315c68a57 ("anv: Use the common wrapper for GetPhysicalDeviceFormatProperties")
    Signed-off-by: Vinson Lee <vlee at freedesktop.org>
    Reviewed-by: Tapani Pälli <tapani.palli at intel.com>
    Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin at intel.com>
    Reviewed-by: Jason Ekstrand <jason at jlekstrand.net>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13395>
    (cherry picked from commit 9eb010ee1e14feeaa43a5b538023b7b4352236e1)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=983cccf7574e8dc791d3133ca1af01bd7fae2e32
Author: Samuel Pitoiset <samuel.pitoiset at gmail.com>
Date:   Fri Oct 15 14:52:13 2021 +0200

    radv: fix removing PSIZ when it's not emitted by the last VGT stage
    
    This dereferences a NULL pointer and crash many tests with Zink.
    
    Fixes: 92e1981a800 ("radv: Remove PSIZ output when it isn't needed.")
    Signed-off-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
    Reviewed-by: Timur Kristóf <timur.kristof at gmail.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13378>
    (cherry picked from commit 61be0bd34b34617e52211280878e71d9d1f174eb)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=7456331987e3209519915615ac310e574a796544
Author: Karol Herbst <kherbst at redhat.com>
Date:   Tue Nov 3 17:41:53 2020 +0100

    spirv: Don't add 0.5 to array indicies for OpImageSampleExplicitLod
    
    This fixes CLs 1.2 1Darray and 2Darray images.
    
    Fixes: 589d918a4f9da83e3ae441aa674372a141d23349
           ("spirv: Add 0.5 to integer coordinates for OpImageSampleExplicitLod")
    
    Reviewed-by: Jason Ekstrand <jason at jlekstrand.net>
    Signed-off-by: Karol Herbst <kherbst at redhat.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13401>
    (cherry picked from commit f6ecd284e5dee852a87bdc77a1fab625d061b440)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=bac2dd958af0f8692ad101e548704280984bae86
Author: Dave Airlie <airlied at gmail.com>
Date:   Wed Oct 13 14:49:50 2021 +1000

    llvmpipe: fix userptr for texture resources.
    
    This is needed for CL image hostptr support, but it's possible
    it could hit these paths from GL/Vulkan
    
    Fixes: 9a57dceeb760 ("llvmpipe: add support for user memory pointers")
    Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz at gmail.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13375>
    (cherry picked from commit 17a565e0cfb79fb8078fcf7f7cc7b6be0ef887ba)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=121f0528a74dafc77bf64592d26fdb2c5b4132fd
Author: Alyssa Rosenzweig <alyssa at collabora.com>
Date:   Sat Oct 16 19:36:16 2021 -0400

    panfrost: Don't allow rendering/texturing 48-bit
    
    Matches freedreno. Fixes crashes in Piglit arb_texture_view.
    
    Signed-off-by: Alyssa Rosenzweig <alyssa at collabora.com>
    Cc: mesa-stable
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13394>
    (cherry picked from commit d31ca63527e3eb5bf271267c2a60a9b5af83bd89)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=3c0c2465f3557d864971a807a54b94df9051e7a2
Author: Derek Foreman <derek.foreman at collabora.com>
Date:   Fri Oct 8 08:55:44 2021 -0500

    egl/wayland: Properly clear stale buffers on resize
    
    The following chain of events results in an incorrectly sized buffer
    persisting beyond its useful lifetime, and causing visual artifacts.
    
    buffer is attached at size A
    window is resized to size B
    rendering takes place for size B
    window is resized back to size A
    swapbuffers with damage is called
    
    In this scenario, update_buffers fails to recognize that the surface it's
    about to commit is a different size than it has rendered. The
    attached_width and attached_height are set incorrectly, and periodic
    flickering is observed.
    
    Instead, we set a boolean flag at time of resize and use this at the time
    we latch the window dimensions as surface dimensions to decide whether to
    discard stale buffers.
    
    Signed-off-by: Derek Foreman <derek.foreman at collabora.com>
    Reviewed-by: Daniel Stone <daniels at collabora.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13270>
    (cherry picked from commit 28d12716e8ff04b50a443ecaa6c7b519117303a5)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=118131c071305fb5a702d8cba5bf100577aebc75
Author: Mike Blumenkrantz <michael.blumenkrantz at gmail.com>
Date:   Fri Oct 15 16:01:52 2021 -0400

    aux/pb: more correctly check number of reclaims
    
    the increment needs to happen before the comparison here
    
    Fixes: 3d6c8829f54 ("aux/pb: add a tolerance for reclaim failure")
    
    Reviewed-by: Marek Olšák <marek.olsak at amd.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13388>
    (cherry picked from commit fe2674dd52dd63e6fb4a69e037a7cb5266049e4a)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=b7942e3134b7427b9a9028d37dc967c2e7d74a7c
Author: Mike Blumenkrantz <michael.blumenkrantz at gmail.com>
Date:   Wed Oct 13 13:34:30 2021 -0400

    aux/pb: add a tolerance for reclaim failure
    
    originally, a slab attempts to reclaim a single bo. there are two outcomes
    to this which can occur:
    * the bo is reclaimed
    * the bo is not reclaimed
    
    if the bo is reclaimed, great.
    
    if the bo is not reclaimed, it remains at the head of the list until it can
    be reclaimed. this means that any bo with a "long" work queue which makes it
    into a slab will effectively kill the entire slab. in a benchmarking scenario,
    this can occur in rapid succession, and every slab will get 1-2 suballocations
    before it reaches a bo that blocks long enough for a new slab to be needed.
    
    the inevitable result of this scenario is that all memory is depleted almost instantly,
    all because pb assumes that if the first bo in the reclaim list isn't ready, none of them
    can be ready
    
    for drivers like radeonsi, this happens to be a fine assumption
    
    for drivers like zink, this is entirely not workable and explodes the gpu
    
    Cc: mesa-stable
    
    Reviewed-by: Witold Baryluk <witold.baryluk at gmail.com>
    Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer at amd.com>
    Tested-by: Witold Baryluk <witold.baryluk at gmail.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13345>
    (cherry picked from commit 3d6c8829f54e52ae39b91b18d49acccf47755320)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=7cddbaab2d2ff75ee45243ece98f7f6a7d8fa4b8
Author: Samuel Pitoiset <samuel.pitoiset at gmail.com>
Date:   Wed Oct 13 13:05:54 2021 +0200

    aco: do not return an empty string when disassembly is not supported
    
    Fixes dEQP-VK.pipeline.executable_properties.* on GFX6-7 when
    clrxdisasm isn't found. Other generations are also affected if RADV
    is built without LLVM.
    
    Cc: 21.3 mesa-stable
    Signed-off-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
    Reviewed-by: Tony Wasserka <tony.wasserka at gmx.de>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13333>
    (cherry picked from commit aac4e1f8229e7978310ca81312f0ff925e3485b7)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=2dcee84ce34a3c1d9483a576e6058a9721daa4d5
Author: Marcin Ślusarz <marcin.slusarz at intel.com>
Date:   Thu Oct 14 13:22:08 2021 +0200

    iris: fix scratch address patching for TESS_EVAL stage
    
    Scratch patching code in iris_upload_dirty_render_state (see MERGE_SCRATCH_ADDR
    calls) assumes that in all shader stages derived_data field stores 3DSTATE_XS
    packet first.
    
    This is not true for TESS_EVAL (DS), so we end up patching 3DSTATE_TE
    instead of 3DSTATE_DS leading to DWordLength becoming 11 instead of 9
    (9 == 3DSTATE_DS.DWordLength, 2 == 3DSTATE_TE.DWordLength, and 9|2 == 11),
    and hardware hanging on the next instruction.
    
    Fix this by reversing the order of packets for TESS_EVAL stage.
    
    Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/5499
    
    Fixes: 4256f7ed584 ("iris: Fill out scratch base address dynamically")
    Signed-off-by: Marcin Ślusarz <marcin.slusarz at intel.com>
    Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13358>
    (cherry picked from commit 5387522bd00147f298e5799db41db94f9a4a37e3)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=9b68854c2e9bbe8dc07d2a03e66496c6b10cfd61
Author: Maniraj D <md at nvidia.com>
Date:   Mon Oct 11 22:37:02 2021 +0530

    egl: set TSD as NULL after deinit
    
    When eglReleaseThread() is called from application's
    destructor (API with __attribute__((destructor))),
    it crashes due to invalid memory access.
    
    In this case, _egl_TLS is freed in the flow of
    _eglAtExit() as below but _egl_TLS is not set to NULL.
    
        _eglDestroyThreadInfo
            _eglFiniTSD
                _eglAtExit
                    _run_exit_handlers
                        exit
    
    Later when the eglReleaseThread is called from
    application's destructor, it ends-up accessing
    the freed _egl_TLS pointer.
    
        eglReleaseThread -> in libEGL_mesa
            eglReleaseThread -> in libEGL(glvnd)
                destructor() -> App's destructor
    
    To resolve the invalid access, setting the _egl_TLS
    pointer as NULL after freeing it.
    
    Reviewed-by: Eric Engestrom <eric at engestrom.ch>
    Reviewed-by: Jesse Natalie <jenatali at microsoft.com>
    Reviewed-by: Tapani Pälli <tapani.palli at intel.com>
    Cc: mesa-stable
    
    Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/5466
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13302>
    (cherry picked from commit 796c9ab3fd6b897ae3b3c069568182178c7661d4)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=071ce0bbc715e4ad987bea853231cf8d9dc6e3b2
Author: Jason Ekstrand <jason at jlekstrand.net>
Date:   Wed Oct 13 16:31:57 2021 -0500

    i965: Emit a NULL surface for buffer textures with no buffer
    
    This is a preexisting bug but it was uncovered by 231653ea3506
    ("intel/isl: Add a max_buffer_size limit to isl_device") which added an
    assert(num_elements > 0) for typed buffers.
    
    Cc: mesa-stable at lists.freedesktop.org
    Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13351>
    (cherry picked from commit 393fda2d341f65cba6e160d4704983370ae041f9)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=8876a87565b995a5652c71802392f7449f4f8957
Author: Witold Baryluk <baryluk at smp.if.uj.edu.pl>
Date:   Fri Oct 15 00:29:47 2021 +0200

    zink: Do not access just freed zink_batch_state
    
    Cc: mesa-stable
    Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz at gmail.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13370>
    (cherry picked from commit 4d777631b595075169830a63b4281e9f0cbb45be)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=9c7e483a1cc387d7800f90928ef73fb38a489092
Author: Yiwei Zhang <zzyiwei at chromium.org>
Date:   Fri Oct 15 20:30:56 2021 +0000

    dri_interface: remove gl header
    
    Only gl typedefs are used. So just remove the header and update the
    types to the underlying types.
    
    Signed-off-by: Yiwei Zhang <zzyiwei at chromium.org>
    Reviewed-by: Adam Jackson <ajax at redhat.com>
    Reviewed-by: Emma Anholt <emma at anholt.net>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13387>
    (cherry picked from commit 2d58e31f10e6229bf25bc2f0bf78a5946a8840ba)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=0969e1247c9c0b80610271d0099f605b2f9579ca
Author: Yiwei Zhang <zzyiwei at chromium.org>
Date:   Fri Oct 15 18:38:32 2021 +0000

    dri_interface: remove obsolete interfaces
    
    Below are removed:
    __DRI_FRAME_TRACKING
    __DRI_TEX_OFFSET
    __DRI_GET_DRAWABLE_INFO
    
    Signed-off-by: Yiwei Zhang <zzyiwei at chromium.org>
    Reviewed-by: Adam Jackson <ajax at redhat.com>
    Reviewed-by: Emma Anholt <emma at anholt.net>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13387>
    (cherry picked from commit e19d9046dbdeaf490cde1668a955cb8a573e9d3d)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=3f61f84fe3899003bd3b8e117e9e54bdd0eaca34
Author: Clayton Craft <clayton at craftyguy.net>
Date:   Wed Oct 13 16:06:51 2021 -0700

    anv: don't advertise vk conformance on GPUs that aren't conformant
    
    This sets the conformance version to 0.0.0.0 for GPUs that have
    incomplete support for vulkan, so that it's easier to check if vulkan is
    fully supported by a GPU at runtime for applications/libraries.
    
        $ vulkaninfo|grep conf
        MESA-INTEL: warning: Ivy Bridge Vulkan support is incomplete
            conformanceVersion = 0.0.0.0
    
    Signed-off-by: Clayton Craft <clayton at craftyguy.net>
    Reviewed-by: Ivan Briano <ivan.briano at intel.com>
    Reviewed-by: Jason Ekstrand <jason at jlekstrand.net>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13275>
    (cherry picked from commit b2ef7e6d6b697c883efd8debaf3cb0a88bcf043b)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=5c3159e088aa726f6d6800f27c7894d004403859
Author: Jason Ekstrand <jason at jlekstrand.net>
Date:   Wed Oct 13 11:05:48 2021 -0500

    vulkan/log: Tweak our handling of a couple error enums
    
    VK_ERROR_INITIALIZATION_FAILED can happen as part of device creation and
    isn't really an instance error in that case.
    VK_ERROR_EXTENSION_NOT_PRESENT, on the other hand, is always an instance
    thing and we should handle it as such.
    
    Fixes: 0cad3beb2a0d ("vulkan/log: Add common vk_error and vk_errorf helpers")
    Reviewed-by: Tapani Pälli <tapani.palli at intel.com>
    Reviewed-by: Iago Toral Quiroga <itoral at igalia.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13341>
    (cherry picked from commit 071437d29d9ebe5f1dbc4e14e63fd8a3861ce6f9)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=45a9fd6acb58b6971c40077a52205ae02cf6ad63
Author: Boris Brezillon <boris.brezillon at collabora.com>
Date:   Thu Oct 14 10:34:37 2021 +0200

    vulkan: Set unused entrypoints to vk_entrypoint_stub when compiling with MSVC
    
    If we don't do that we hit the assert(entry[i] != NULL) added by commit
    6d44b21d4fd ("vulkan: Fix weak symbol emulation when compiling with MSVC").
    
    Fixes: 6d44b21d4fd ("vulkan: Fix weak symbol emulation when compiling with MSVC")
    Signed-off-by: Boris Brezillon <boris.brezillon at collabora.com>
    Reviewed-by: Jesse Natalie <jenatali at microsoft.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13355>
    (cherry picked from commit fd467492349ee32cd196a8bd747269404965e3b1)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=81fe3260e0112ea6bcc3c104b25b03b446bb8468
Author: Bas Nieuwenhuizen <bas at basnieuwenhuizen.nl>
Date:   Wed Oct 13 22:37:35 2021 +0200

    radv: Fix modifier property query.
    
    radv_get_modifier_flags read the format properties, doesn't write any. Setting
    the central format properties based on the drm format properties doesn't make
    any sense.
    
    Fixes: 5dee0d9da96 "radv: switch to VK_FORMAT_FEATURE_2_XXX/VkFormatProperties3KHR"
    Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/5498
    Reviewed-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
    Tested-By: Mike Blumenkrantz <michael.blumenkrantz at gmail.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13357>
    (cherry picked from commit b4aa5a3fdd0ec2b3ac3c019e1c323208c0fa1faf)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=70cd17bbf1c279b200f56ae9c4928149bd267953
Author: Boris Brezillon <boris.brezillon at collabora.com>
Date:   Wed Oct 13 21:50:59 2021 +0200

    vulkan: Fix weak symbol emulation when compiling with MSVC
    
    Mapping unimplemented entrypoints to a global function pointer variable
    initialized to NULL is a bit cumbersome, and actually led to a bug
    in the vk_xxx_dispatch_table_from_entrypoints() template: the !override
    case didn't have the right check on the source table entries. Instead of
    fixing that case, let's simplify the logic by creating a stub function
    and making the alternatename pragma point to this stub. This way we get
    rid of all those uneeded xxx_Null symbols/variables and simplify the
    tests in vk_xxxx_dispatch_table_from_entrypoints().
    
    Cc: mesa-stable
    Fixes: 98c622a96e28 ("vulkan: Update dispatch table gen for Windows")
    Signed-off-by: Boris Brezillon <boris.brezillon at collabora.com>
    Reviewed-by: Jesse Natalie <jenatali at microsoft.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13348>
    (cherry picked from commit 6d44b21d4fdea89673541de265f69258747c5499)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=2b77d8afa7dcb8b8a8bd212ff0dda7d4069bf8ad
Author: Ian Romanick <ian.d.romanick at intel.com>
Date:   Tue Oct 12 13:06:04 2021 -0700

    nir/loop_unroll: Always unroll loops that iterate at most once
    
    Two carchase compute shaders (shader-db) and two Fallout 4 fragment
    shaders (fossil-db) were helped.  Based on the NIR of the shaders, all
    four had structures like
    
        for (i = 0; i < 1; i++) {
            ...
    
    	for (...) {
                ...
    	}
        }
    
    All HSW+ platforms had similar results. (Ice Lake shown)
    total loops in shared programs: 6033 -> 6031 (-0.03%)
    loops in affected programs: 4 -> 2 (-50.00%)
    helped: 2
    HURT: 0
    
    All Intel platforms had similar results. (Ice Lake shown)
    Instructions in all programs: 143692018 -> 143692006 (-0.0%)
    SENDs in all programs: 6947154 -> 6947154 (+0.0%)
    Loops in all programs: 38285 -> 38283 (-0.0%)
    Cycles in all programs: 8434822225 -> 8434476815 (-0.0%)
    Spills in all programs: 191665 -> 191665 (+0.0%)
    Fills in all programs: 298822 -> 298822 (+0.0%)
    
    In the presense of loop unrolling like this, the change in cycles is not
    accurate.
    
    v2: Rearrange the logic in the if-condition to read a little better.
    Suggested by Tim.
    
    Closes: #5089
    Reviewed-by: Timothy Arceri <tarceri at itsqueeze.com>
    (cherry picked from commit ae99ea6f4ddb90f7120b4986709a9e9064037f94)
    
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13366>

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=f774768d174f702390bdd5cf3678cae342576a38
Author: Eric Engestrom <eric at engestrom.ch>
Date:   Mon Oct 18 21:52:26 2021 +0100

    .pick_status.json: Mark 7a2e40df5e8490de739c66865f90fa6804e41f6d as denominated

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=1cf264d89d9fda22e59c9c6f3658fd4c70e4d210
Author: Eric Engestrom <eric at engestrom.ch>
Date:   Thu Oct 14 21:43:41 2021 +0100

    .pick_status.json: Update to 86b3d8c66ce17ddcaefa5bdea68882cc03a57f15



More information about the mesa-commit mailing list