Mesa (staging/21.3): 38 new commits

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Wed Oct 27 18:59:33 UTC 2021


URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=bb9bdc4b7392dd46efe09be554e370f547b7080a
Author: Eric Engestrom <eric at engestrom.ch>
Date:   Wed Oct 27 19:55:24 2021 +0100

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

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=f199962c4d0d08bb63490c7abaece8977f92189a
Author: Thomas Wagner <twagner at snap.com>
Date:   Wed Oct 13 09:24:42 2021 +0200

    util: use anonymous file for memory fd creation
    
    The original implementation in os_memory_fd.c always uses memfds.
    Replace this by using the already existing os_create_anonymous_file in
    order to support older systems or systems without memfd.
    
    Fixes: 1166ee9caf3 ("gallium: add utility and interface for memory fd allocations")
    
    Reviewed-by: Marek Olšák <marek.olsak at amd.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13331>
    (cherry picked from commit 4856586ac605e89ee6c128b1a190f000311b49ba)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=bf2e5336886c25abae51f1358e4be2b0d0f297d7
Author: Bas Nieuwenhuizen <bas at basnieuwenhuizen.nl>
Date:   Fri Oct 22 15:29:55 2021 +0200

    radv: Add bufferDeviceAddressMultiDevice support.
    
    We don't support multiple devices so this is a nop. However, Baldurs Gate 3 enables
    this and with the new more complete checks this causes device creation to fail.
    
    Fixes: 2e5718c9574 ("vulkan: provide common functions to check device features")
    Gitlab: https://gitlab.freedesktop.org/mesa/mesa/-/issues/5509
    Reviewed-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13482>
    (cherry picked from commit 1fe375e7cf8da6d0313b7954ae76120cde92db14)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=627659b6aff023b74dba80682542711631b594e7
Author: Mike Blumenkrantz <michael.blumenkrantz at gmail.com>
Date:   Fri Oct 22 14:04:45 2021 -0400

    nir/lower_samplers_as_deref: rewrite more image intrinsics
    
    "I think we want to lower them."
    
    -Jason "And I do know how the pass works" Ekstrand
    
    fixes #5540
    
    cc: mesa-stable
    
    Reviewed-by: Jason Ekstrand <jason at jlekstrand.net>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13489>
    (cherry picked from commit b0c40bc9054404c1b0e42516b72d6d9d070a4c10)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=b4506d1cc240a893576c5c046ea7773365754956
Author: Mike Blumenkrantz <michael.blumenkrantz at gmail.com>
Date:   Tue Oct 26 14:03:56 2021 -0400

    zink: more accurately update samplemask for fs shader keys
    
    the fs samplemask needs to be updated on framebuffer rebind and on
    fs bind to ensure that the key gets updated in time for the pipeline
    change
    
    fixes #5559
    
    cc: mesa-stable
    
    Reviewed-by: Dave Airlie <airlied at redhat.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13531>
    (cherry picked from commit c9ce151ff97b7a8776ed4cb2eff27bfbd836ea3d)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=852c6bb9d21029fd28192ba542f329646d3a8cb0
Author: Mike Blumenkrantz <michael.blumenkrantz at gmail.com>
Date:   Fri Oct 22 13:47:16 2021 -0400

    zink: fix gl_SampleMaskIn spirv generation
    
    the uint[1] -> uint dance is only relevant on the first load, so move
    the variable type shuffling inside the create block to avoid breaking successive
    loads
    
    fixes #5543
    
    cc: mesa-stable
    
    Reviewed-by: Dave Airlie <airlied at redhat.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13488>
    (cherry picked from commit 8899f6a19857d533d62945889c413b55cea5223c)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=59b59c586be0af8577e53c37d78201b7e1e49c78
Author: Mike Blumenkrantz <michael.blumenkrantz at gmail.com>
Date:   Mon Oct 25 14:11:50 2021 -0400

    zink: don't add dynamic vertex pipeline states if no attribs are used
    
    adding the states requires that vertex attribs be bound, but it's illegal
    to bind 0 attribs
    
    cc: mesa-stable
    
    fixes #5558
    
    Reviewed-by: Erik Faye-Lund <erik.faye-lund at collabora.com>
    Reviewed-by: Dave Airlie <airlied at redhat.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13519>
    (cherry picked from commit 90228a80ea2867126cc8a165f61d604803443b5b)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=8cb060c374c4dccde5fcb2298552cbc7b281a311
Author: Mike Blumenkrantz <michael.blumenkrantz at gmail.com>
Date:   Tue Oct 26 11:05:31 2021 -0400

    zink: stop exporting PIPE_SHADER_CAP_FP16_DERIVATIVES
    
    spirv doesn't support this
    
    fixes #5561
    
    cc: mesa-stable
    
    Reviewed-by: Emma Anholt <emma at anholt.net>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13530>
    (cherry picked from commit c13da98929809dd2d9f752e938f9ae650ce3fcd5)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=25b007d7a9b5983497f0a11674377980c91e6a43
Author: Michael Tang <tangm at microsoft.com>
Date:   Fri Oct 8 14:19:04 2021 -0700

    microsoft/spirv_to_dxil: turn sysvals into input varyings
    
    Fixes: b47090c5b33 ("spirv: Always declare FragCoord as a sysval")
    Reviewed-by: Jesse Natalie <jenatali at microsoft.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13276>
    (cherry picked from commit 3094524621291e6010232c4fd930e1e2d335f2ee)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=a82babccd1149576dc4332fbf60ea733b913b7b8
Author: Lionel Landwerlin <lionel.g.landwerlin at intel.com>
Date:   Tue Oct 26 14:27:18 2021 +0300

    anv: fix push constant lowering with bindless shaders
    
    Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin at intel.com>
    Fixes: 9fa1cdfe7ffd ("intel/rt: Implement push constants as global memory reads")
    Reviewed-by: Jason Ekstrand <jason at jlekstrand.net>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13529>
    (cherry picked from commit a6031cd9bd409c793c3a2928eaf9f04f09d2f55a)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=e4dc69796e68110a86494bc7360401c9806c19fa
Author: Mike Blumenkrantz <michael.blumenkrantz at gmail.com>
Date:   Fri Oct 22 14:33:29 2021 -0400

    zink: don't check rebind count outside of buffer/image rebind function
    
    zink_resource_has_binds() only checks descriptor binds, and this doesn't
    include streamout or fb bindings, so call these functions from the specific
    rebind points to ensure those cases are also checked
    
    fixes #5541
    
    cc: mesa-stable
    
    Reviewed-by: Dave Airlie <airlied at redhat.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13490>
    (cherry picked from commit 0a6f5ec942158af5ff0e0d9171a621bf0acfae87)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=737c9a7dcfc5c5966a0a7373e4ec68cd5d2e5b5f
Author: Mike Blumenkrantz <michael.blumenkrantz at gmail.com>
Date:   Fri Oct 22 14:32:40 2021 -0400

    zink: only reset zink_resource::so_valid on buffer rebind
    
    otherwise this is going to randomly modify some image properties
    
    cc: mesa-stable
    
    Reviewed-by: Dave Airlie <airlied at redhat.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13490>
    (cherry picked from commit 1a68f2eb8f4818944d656b8d0f9102c576815800)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=7264cc5cd4340ae654fe5fc42c169fca589eb10c
Author: Mike Blumenkrantz <michael.blumenkrantz at gmail.com>
Date:   Fri Oct 22 14:24:48 2021 -0400

    zink: don't break early when applying fb clears
    
    a resource can be bound to multiple fb attachments, each with
    its own clear, so ensure that all of these are applied
    
    fixes #5542
    
    cc: mesa-stable
    
    Reviewed-by: Dave Airlie <airlied at redhat.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13491>
    (cherry picked from commit dabe477b4f273964afedab2fce2be22f2617268f)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=4d88c19510ebfef99beeab27805a9e6b812ed553
Author: Mike Blumenkrantz <michael.blumenkrantz at gmail.com>
Date:   Fri Oct 22 13:24:40 2021 -0400

    zink: detect prim type more accurately for tess/gs lines
    
    u_reduced_prim() can't determine the output primitive when vs isn't the
    last vertex stage, so store this from the appropriate shader info and use
    it when it's available
    
    fixes #5547
    
    cc: mesa-stable
    
    Reviewed-by: Dave Airlie <airlied at redhat.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13487>
    (cherry picked from commit 2a91e83b7f5d2822c3fc06d0edba1d0f70cadff9)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=b6f0a4c11d17011b767078fd5be494f4d0a3e96a
Author: Lionel Landwerlin <lionel.g.landwerlin at intel.com>
Date:   Wed Oct 20 11:08:34 2021 +0300

    vulkan/wsi/wayland: don't expose surface formats not fully supported
    
    Depending on whether an application creates a swapchain with
    VK_COMPOSITE_ALPHA_PRE_MULTIPLIED_BIT_KHR or not, we might use 2
    different formats with the compositor.
    
    This change makes sure that we support all the underlying formats
    before exposing the corresponding VkFormat to the application.
    
    v2: Don't forget get_formats2() (Ivan)
    
    v3: Replace formats with availability boolean (Simon)
    
    Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin at intel.com>
    Fixes: 151b65b21190 ("vulkan/wsi/wayland: generalize modifier handling")
    Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/5522
    Reviewed-by: Ivan Briano <ivan.briano at intel.com> (v2)
    Reviewed-by: Simon Ser <contact at emersion.fr>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13453>
    (cherry picked from commit d944136f3635aeacd97e167176c968c5078d92d7)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=a63104a7d8b03df54a294e0d3685c7f22d66f370
Author: Boris Brezillon <boris.brezillon at collabora.com>
Date:   Mon Oct 25 18:37:21 2021 +0200

    vulkan: Fix entrypoint generation when compiling for x86 with MSVC
    
    When compiling for x86 with MSVC, Vulkan API entry points follow the
    __stdcall convention (VKAPI_CALL maps to __stdcall), which uses the
    following name mangling:
    
       _<function_name>@<arguments_size>
    
    Fix the vk_entrypoint_stub()/alternatename definitions accordingly.
    
    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/13516>
    (cherry picked from commit 1813bb59174a8f6e60a4f7aff2ac9af81a8810f5)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=734011012f6d4f364ef71bc56a31a68cae5754b1
Author: Samuel Pitoiset <samuel.pitoiset at gmail.com>
Date:   Mon Oct 25 13:58:20 2021 +0200

    aco: only load streamout buffers if streamout is enabled
    
    The streamout_config SGPR is used to determine if streamout is enabled.
    
    This fixes a GPU hang with various transform feedback tests:
     - dEQP-GLES3.functional.transform_feedback.*
     - KHR-GL46.transform_feedback.api_errors_test
     - KHR-GL46.draw_indirect.basic-draw*-xfbPaused
     - KHR-GL46.geometry_shader.api.draw_calls_while_tf_is_paused
    
    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/13514>
    (cherry picked from commit dc74285d32df9c09eb896bc4571066402d32d10b)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=2ac3a3b5e9845c7214774bb2d3e23d0efff366ec
Author: Samuel Pitoiset <samuel.pitoiset at gmail.com>
Date:   Wed Oct 20 09:23:26 2021 +0200

    radv: fix build errors with Android
    
    Fixes: 49c3a88fadd ("radv: implement VK_KHR_format_feature_flags2")
    Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/5518
    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/13450>
    (cherry picked from commit 4765edb4e02efa57cd39b1718624721f6545e9a5)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=40eb47924e75dd331ea732df2f5258ad35f10916
Author: Alyssa Rosenzweig <alyssa at collabora.com>
Date:   Tue Oct 5 16:18:22 2021 -0400

    panfrost: Enable AFBC on v7
    
    The bugs blocking this have been resolved, so flip on AFBC again and get
    moar fps.
    
    Signed-off-by: Alyssa Rosenzweig <alyssa at collabora.com>
    Cc: mesa-stable
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13205>
    (cherry picked from commit 2526f6f229406fa364e4375449d33e2048caaab6)

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

    panfrost: Decompress for incompatible AFBC formats
    
    AFBC is keyed to the format. Depending on the hardware, we'll get an
    Invalid Data Fault or a GPU timeout if we attempt to sample from an
    AFBC-compressed RGBA8 texture as R32F (for example).
    
    Fixes Piglit ./bin/arb_texture_view-rendering-formats_gles3 with AFBC.
    
    Signed-off-by: Alyssa Rosenzweig <alyssa at collabora.com>
    Cc: mesa-stable
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13205>
    (cherry picked from commit 789601a189eb8b0ff0b0f2a19ed276d9881877a7)

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

    panfrost: Add internal afbc_formats
    
    We need to know the internal (physical) formats used for AFBC of a given
    logical format, in order to check format compatibility and determine if
    we need to decompress AFBC for conformance.
    
    Signed-off-by: Alyssa Rosenzweig <alyssa at collabora.com>
    Cc: mesa-stable
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13205>
    (cherry picked from commit 93c9123c313d688913ed86f77c6841738f94988a)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=14f88aaca3973dab6b03e8b9316b522522f2e8a5
Author: Alyssa Rosenzweig <alyssa at collabora.com>
Date:   Tue Oct 5 19:20:03 2021 -0400

    panfrost: Workaround ISSUE_TSIX_2033
    
    According to mali_kbase, all Bifrost and Valhall GPUs are affected by
    issue TSIX_2033. This hardware bug breaks the INTERSECT frame shader
    mode when forcing clean_tile_writes. What does that mean?
    
    The hardware considers a tile "clean" if it has been cleared but not
    drawn to. Setting clean_tile_write forces the hardware to write back
    such "clean" tiles to main memory.
    
    Bifrost hardware supports frame shaders, which insert a rectangle into
    every tile according to a configured rule. Frame shaders are used in
    Panfrost to implement tile reloads (i.e. LOAD_OP_LOAD). Two modes are
    relevant to the current discussion: ALWAYS, which always inserts a frame
    shader, and INTERSECT, which tries to only insert where there is
    geometry. Normally, we use INTERSECT for tile reloads as it is more
    efficient than ALWAYS-- it allows us to skip reloads of tiles that are
    discarded and never written back to memory.
    
    From a software perspective, Panfrost's current logic is correct: if we
    clear, we set clean_tile_writes, else we use an INTERSECT frame shader.
    There is no software interaction between the two.
    
    Unfortunately, there is a hardware interaction. The hardware forces
    clean_tile_writes in certain circumstances when AFBC is used.
    Ordinarily, this is a hardware implementation detail and invisible to
    software. Unfortunately, this implicit clean tile write is enough to
    trigger the hardware bug when using INTERSECT. As such, we need to
    detect this case and use ALWAYS instead of INTERSECT for correct
    results.
    
    Signed-off-by: Alyssa Rosenzweig <alyssa at collabora.com>
    Cc: mesa-stable
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13205>
    (cherry picked from commit 342ed4909fe7611525b9029977463ef3291ce7ba)

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

    panfrost: Fix gl_FragColor lowering
    
    The gl_FragColor lowering in the fragment shader depends on the number
    of render targets, which can change every set_framebuffer_state.
    set_framebuffer_state thus needs to force a rebind of the fragment
    shader.
    
    Fixes a regression in Piglit fbo-drawbuffers-none gl_FragColor -auto
    -fbo from enabling AFBC on Mali G52.
    
    Fixes: 28ac4d1e005 ("panfrost: Call nir_lower_fragcolor based on key")
    Signed-off-by: Alyssa Rosenzweig <alyssa at collabora.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13498>
    (cherry picked from commit e0335ad8881d3feeb89b571b1047bb8799ae23b7)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=ddcf4a13f298bbb62f84a793441fd7bd38c1f90e
Author: Alyssa Rosenzweig <alyssa at collabora.com>
Date:   Tue Oct 5 16:05:56 2021 -0400

    panfrost,panvk: Use dev->has_afbc instead of quirks
    
    This uses the new property for AFBC we've added. The AFBC quirk is
    applied only to v4, and we only set dev->has_afbc on v5+ so this is not
    a regression. It now respects the hardware-specific AFBC disable.
    
    Signed-off-by: Alyssa Rosenzweig <alyssa at collabora.com>
    Cc: mesa-stable
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13497>
    (cherry picked from commit 68a7fafe2a54ca61700a955bd8d7884e2f750814)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=f97f9253b68839b36dab8c357d3f12e5c52d124d
Author: Alyssa Rosenzweig <alyssa at collabora.com>
Date:   Tue Oct 5 16:01:00 2021 -0400

    panfrost: Detect implementations support AFBC
    
    AFBC is an optional feature on Bifrost. If it is missing, a bit will be
    set in the poorly named AFBC_FEATURES register. Check this so we can act
    appropriately.
    
    Signed-off-by: Alyssa Rosenzweig <alyssa at collabora.com>
    Cc: mesa-stable
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13497>
    (cherry picked from commit 3e168b97cc7d38e757fa5cd51ecd25c18d84daf6)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=2569f415f2a2cddb3e5423025191ba7f2dcb5cea
Author: Marek Olšák <marek.olsak at amd.com>
Date:   Thu Oct 21 15:40:20 2021 -0400

    st/mesa: don't crash when draw indirect buffer has no storage
    
    Fixes: 22f6624ed318e8 - gallium: separate indirect stuff from pipe_draw_info
    
    Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer at amd.com>
    Reviewed-by: Ilia Mirkin <imirkin at alum.mit.edu>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13471>
    (cherry picked from commit 520300ad2202adbe652909839b94f6eedf489aa5)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=03b36e3efbc1947784fe5b26de1bef05d5600033
Author: Tapani Pälli <tapani.palli at intel.com>
Date:   Thu Oct 21 11:02:34 2021 +0300

    iris: clear bos_written when resetting a batch
    
    This fixes dEQP-EGL.functional.sharing.gles2.multithread.* tests that
    are hitting: "iris: Failed to submit batchbuffer: Invalid argument"
    error.
    
    v2: clear on reset rather than clear 'on-the-fly' (Kenneth Graunke)
    
    Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/5537
    Fixes: e4c3d3efc7a ("iris: Defer construction of the validation (exec_object2) list")
    Signed-off-by: Tapani Pälli <tapani.palli at intel.com>
    Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13464>
    (cherry picked from commit 1465ec8cf35c3e62635bba31682a0e2673e40100)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=61244fad74e3e3394e29f6c5663b930fc74e336c
Author: Samuel Pitoiset <samuel.pitoiset at gmail.com>
Date:   Fri Oct 15 14:27:38 2021 +0200

    radv: re-emit prolog inputs when the nontrivial divisors state changed
    
    If the application first uses nontrivial divisors, the driver emits
    the vertex shader VA to the upload BO rather than directly via the
    user SGPRs locations. But, if the vertex input dynamic state changes,
    the driver might select a different VS prolog that no longer needs
    nontrivial divisors.
    
    In this case, the driver needs to re-emit the prolog inputs because
    otherwise the VS prolog will jump to the PC that is emitted via the
    user SGPR locations, and the previous one was somewhere in the
    upload BO...
    
    This fixes a GPU hang with Bioshock and Zink.
    
    Fixes: d9c7a175424 ("radv: enable VK_EXT_vertex_input_dynamic_state")
    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/13377>
    (cherry picked from commit b6a69dbb40d06963056b14158acd0521a91fc395)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=664cc248b340d58907be9146a779612f38e5cfb9
Author: Iago Toral Quiroga <itoral at igalia.com>
Date:   Thu Oct 21 11:35:28 2021 +0200

    broadcom/compiler: fix assert that current instruction must be in current block
    
    This was not considering the possibility that the driver has called
    nir_before_block() or nir_after_block() to update the cursor, in which
    case the cursor link points to the instruction list header and not
    to an actual instruction.
    
    Fixes incorrect debug-assert crash in:
    dEQP-VK.graphicsfuzz.cov-increment-vector-component-with-matrix-copy
    
    Fixes: 265515fa62 ("broadcom/compiler: check instruction belongs to current block")
    Reviewed-by: Juan A. Suarez <jasuarez at igalia.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13467>
    (cherry picked from commit 1561d0126a569f76b1adbdd1a5e8ec79f9577450)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=fa24bfb914512b2069e0796412763fbe7ae70989
Author: Samuel Pitoiset <samuel.pitoiset at gmail.com>
Date:   Tue Oct 19 09:16:20 2021 +0200

    aco: fix loading 64-bit inputs with fragment shaders
    
    Fixes a bunch of 64-bit IO tests with piglit and 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/13454>
    (cherry picked from commit 996e81fb70419bdf0e7bb9afea18c142897730dc)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=d9cdad377d3d45335e4605dd32ef2950935edcab
Author: Vinson Lee <vlee at freedesktop.org>
Date:   Sun Oct 17 19:55:54 2021 -0700

    radv: Fix memory leak on error path.
    
    Fix defect reported by Coverity Scan.
    
    Resource leak (RESOURCE_LEAK)
    leaked_storage: Variable prolog going out of scope leaks the storage it points to
    
    Fixes: 80841196b2d ("radv: implement dynamic vertex input state using vertex shader prologs")
    Suggested-by: Rhys Perry <pendingchaos02 at gmail.com>
    Signed-off-by: Vinson Lee <vlee at freedesktop.org>
    Reviewed-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13402>
    (cherry picked from commit 670fd8123be4c6142239439d1273b3a4d8a58cb1)

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

    zink: move last of lazy descriptor state updating back to lazy-only code
    
    hybrid mode is controlled by the caching manager, so state tracking is irrelevant
    
    Reviewed-by: Dave Airlie <airlied at redhat.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13350>
    (cherry picked from commit dfd0f5dbfd494cab04c9f436d3fcbfc804459c1d)

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

    zink: add an early return for zink_descriptors_update_lazy_masked()
    
    no point in generating pools/sets that won't be used here
    
    Reviewed-by: Dave Airlie <airlied at redhat.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13350>
    (cherry picked from commit 140d3ea8c6776f4650abe5156bd32734d57604e3)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=25a09a9879aa993068cd921ddc7489ecd43b960d
Author: Mike Blumenkrantz <michael.blumenkrantz at gmail.com>
Date:   Wed Oct 13 09:29:02 2021 -0400

    zink: move push descriptor updating into lazy-only codepath
    
    this was a bit confusing to read, and I originally left it in the hybrid
    path to enable fallbacks to push descriptors in hybrid mode. the problem with
    that idea is that it's impossible: the constant buffer set is the one set
    that will never, ever trigger a fallback, so leaving it there just leaves
    room for error and confusion
    
    Reviewed-by: Dave Airlie <airlied at redhat.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13350>
    (cherry picked from commit 7c840f510321c841518e26befd9c56c7d5a38beb)

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

    zink: don't update lazy descriptor states in hybrid mode
    
    I'm not 100% sure how, but this breaks tomb raider
    
    Reviewed-by: Dave Airlie <airlied at redhat.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13350>
    (cherry picked from commit b140d58b1f93c0a2dc900c8147f438294f3ccd6e)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=b68088b11065d237608b1c6fc52da871272ebc48
Author: Mike Blumenkrantz <michael.blumenkrantz at gmail.com>
Date:   Tue Oct 12 15:16:14 2021 -0400

    zink: assert compute descriptor key is valid before hashing it
    
    Reviewed-by: Dave Airlie <airlied at redhat.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13350>
    (cherry picked from commit 75e51138b1dadabf043708d4947d911705ccffc5)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=b829dc1a3ada677acc7b18f19b3f8e9c01a4916a
Author: Mike Blumenkrantz <michael.blumenkrantz at gmail.com>
Date:   Tue Oct 12 14:03:51 2021 -0400

    zink: clear descriptor refs on buffer replacement
    
    the bo here can only ever be destroyed before it gets reused, so prune
    it from the descriptor cache immediately
    
    Reviewed-by: Dave Airlie <airlied at redhat.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13350>
    (cherry picked from commit 497ce3c38a498d0f0aada7303d258bee4c0fd05b)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=bb763eee16d2d92c50ae981d6a4684ed0a7d75f1
Author: Eric Engestrom <eric at engestrom.ch>
Date:   Fri Oct 22 07:56:32 2021 +0100

    .pick_status.json: Update to 4856586ac605e89ee6c128b1a190f000311b49ba



More information about the mesa-commit mailing list