Mesa (staging/21.3): 28 new commits

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Wed Dec 29 21:13:03 UTC 2021


URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=a65ad66c47f2085c584e83174bcb25da5bb8a20d
Author: Eric Engestrom <eric at engestrom.ch>
Date:   Wed Dec 29 21:05:19 2021 +0000

    VERSION: bump for 21.3.3

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=7cdf129351367594603f18158dbcd5b1bc9bf259
Author: Eric Engestrom <eric at engestrom.ch>
Date:   Wed Dec 29 21:00:13 2021 +0000

    docs: add release notes for 21.3.3

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=5928a69a7168fefd587ae332025554efaa6d9462
Author: Bas Nieuwenhuizen <bas at basnieuwenhuizen.nl>
Date:   Sun Dec 12 01:01:55 2021 +0100

    radv: Skip wait timeline ioctl with 0 handles.
    
    Fixes: 55d8022878f "radv: Add winsys functions for timeline syncobj."
    Reviewed-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14165>
    (cherry picked from commit 20b51cdabe76461c86bdc1d37721d023da3a0f0d)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=9c96f43758ebfae2ff236ed29a94848f5741e390
Author: Bas Nieuwenhuizen <bas at basnieuwenhuizen.nl>
Date:   Fri Dec 17 10:08:23 2021 +0100

    radv: Use correct buffer size for query pool result copies.
    
    1. the dst stride may be too small if count=1.
    2. the src stride may be too small due to the availability bit.
    
    So lets just compute the size needed explicitly and use it.
    
    Fixes: 90a0556c ("radv: use pool stride when copying single query results")
    Reviewed-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14242>
    (cherry picked from commit afff9dd0f04d7f4a3a5616b80363f9228ed2f33d)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=3e62c870ea93f018ac4580633a9a24459e022d77
Author: Samuel Pitoiset <samuel.pitoiset at gmail.com>
Date:   Tue Dec 28 15:14:02 2021 +0100

    radv: re-apply "Do not access set layout during vkCmdBindDescriptorSets."
    
    Uplay needs this to avoid a crash because it does an use-after-free
    of a descriptor set layout. This was initially introduced by Bas to
    workaround a similar issue with Baldur's Gate 3, it seems needed again.
    
    Cc: 21.3 mesa-stable
    Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/5789
    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/14318>
    (cherry picked from commit b775aaff1ec86f4ebd50867a045695da1fbeb2e1)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=95ad97fcadeae15ed926283369701a75aa378b8b
Author: Emma Anholt <emma at anholt.net>
Date:   Mon Dec 20 12:48:15 2021 -0800

    r300/vs: Fix flow control processing just after an endloop.
    
    We tried to step over the instruction we just generated, except we didn't
    always just generate one.  In the sequence_vertex tests, that meant we
    skipped processing the next BGNLOOP and then underflowed our stack.
    
    Cc: mesa-stable
    Reviewed-by: Marek Olšák <marek.olsak at amd.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14271>
    (cherry picked from commit 658b2ca4677fb8326781ea519df3a7dcdcd3b7d6)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=a42ed80f0955a4aa2e0f783aee0ae8b29b7d829b
Author: Emma Anholt <emma at anholt.net>
Date:   Mon Dec 20 12:09:28 2021 -0800

    r300/vs: Allocate temps we see a use as a source, too.
    
    This is a quick hack for a bunch of the fail in #5766.
    
    Cc: mesa-stable
    Reviewed-by: Marek Olšák <marek.olsak at amd.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14271>
    (cherry picked from commit e41a53cd196ba4c3602a198d950bec2aa5fc23c9)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=a80330e217d576af8f05eddd009f6fd510081e4b
Author: Emma Anholt <emma at anholt.net>
Date:   Mon Dec 6 21:43:26 2021 -0800

    r300: Disable loop unrolling on r500.
    
    It's buggy, and we should just trust GLSL or NIR to do unrolling for us.
    
    Cc: mesa-stable
    Reviewed-by: Marek Olšák <marek.olsak at amd.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14096>
    (cherry picked from commit e68a9b033997c9de485c2914717d25e55fbb053e)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=3ad31d0d8813c1108491fd631260b7282686e39d
Author: Emma Anholt <emma at anholt.net>
Date:   Mon Dec 6 16:43:45 2021 -0800

    r300: Also consider ALU condition modifiers for loop DCE.
    
    Since we typically use an ALU op to set the condition modifier for the
    IF-BRK-ENDIF, we were particularly likely to remove the increment of the
    loop counter!
    
    Cc: mesa-stable
    Reviewed-by: Marek Olšák <marek.olsak at amd.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14117>
    (cherry picked from commit 26b3e2f7cd71bdc58dfddb235ae13b0a3c558495)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=7771f16e089f8d4ce1fa76448fbfeaf840ff5ef2
Author: Emma Anholt <emma at anholt.net>
Date:   Mon Dec 6 15:07:38 2021 -0800

    r300: Ensure that immediates have matching negate flags too.
    
    We only have one bit of negate, so we have to make sure that immediate
    usage has matching negates on all used channels (or rewrite to do so).
    
    Cc: mesa-stable
    Reviewed-by: Marek Olšák <marek.olsak at amd.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14117>
    (cherry picked from commit d6fed4ab7db63c5f569032dba2cc95ea3ccfc65c)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=94449816abefc0d7b03e8b65ff545cf3f7fcfcba
Author: Emma Anholt <emma at anholt.net>
Date:   Tue Dec 7 10:56:42 2021 -0800

    r300: Move the instruction filter for r500_transform_IF() to the top.
    
    rc_get_variables() is slow, don't call it if we're going to just exit
    immediately anyway.
    
    Cc: mesa-stable
    Reviewed-by: Marek Olšák <marek.olsak at amd.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14117>
    (cherry picked from commit 42e8f48be729535449bfae3983d4350993149977)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=d4bbc1261f4e6875cae840d9b468a8e7bc7a8177
Author: Emma Anholt <emma at anholt.net>
Date:   Mon Dec 6 14:03:37 2021 -0800

    r300: Fix mis-optimization turning -1 - x into 1 - x.
    
    Cc: mesa-stable
    
    Reviewed-by: Marek Olšák <marek.olsak at amd.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14092>
    (cherry picked from commit 65e343dda38a00b10715731e02938df776ef0000)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=507ec2668843ab6619276b33fb96c3668d5ab957
Author: Jesse Natalie <jenatali at microsoft.com>
Date:   Thu Dec 9 16:27:39 2021 -0800

    microsoft/compiler: Implement inot
    
    Fixes: cb283616 ("nir/algebraic: Small optimizations for SpvOpFOrdNotEqual and SpvOpFUnordEqual")
    Reviewed-by: Enrico Galli <enrico.galli at intel.com>
    Reviewed-by: Alyssa Rosenzweig <alyssa at collabora.com>
    Reviewed-by: Jason Ekstrand <jason at jlekstrand.net>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14140>
    (cherry picked from commit 45354be410f088b7b30beca62c1ca87b598c35c1)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=ae068af2e2cda6b10ad936935fe0711675747bca
Author: pal1000 <liviuprodea at yahoo.com>
Date:   Mon Nov 22 11:29:13 2021 +0200

    swr: Fix MSVC build
    
    Fixes: e002f5a086 ("gallium: change pipe_vertex_element::src_format to uint8_t")
    Closes: #5550
    Authored-by: Marek Olšák <marek.olsak at amd.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13908>

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=7c59c3090570fd56b0ba99a0452ae90b4991c023
Author: Tapani Pälli <tapani.palli at intel.com>
Date:   Thu Dec 16 19:01:34 2021 +0200

    glsl: fix invariant qualifer usage and matching rule for GLSL 4.20
    
    I noticed that GLSL version referenced here was wrong, version 4.20 is
    first spec that does not allow invariant keyword for inputs.
    
    v2: fix all comments (Timothy Arceri)
    
    Fixes: f9f462936ad ("glsl: Fix invariant matching in GLSL 4.30 and GLSL ES 1.00.")
    Signed-off-by: Tapani Pälli <tapani.palli at intel.com>
    Reviewed-by: Marek Olšák <marek.olsak at amd.com>
    Reviewed-by: Timothy Arceri <tarceri at itsqueeze.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14241>
    (cherry picked from commit ebd1f202ae10f851b23392c022e059467b90475d)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=4f848d9f2b9c6e2a6df1bd841126815c5288327e
Author: Vinson Lee <vlee at freedesktop.org>
Date:   Sun Dec 19 20:08:37 2021 -0800

    panfrost: Avoid double unlock.
    
    Fix defect reported by Coverity Scan.
    
    Double unlock (LOCK)
    double_unlock: pthread_mutex_unlock unlocks dev->indirect_draw_shaders.lock while it is unlocked.
    
    Fixes: 2e6d94c198e ("panfrost: Add helpers to support indirect draws")
    Suggested-by: Alyssa Rosenzweig <alyssa at collabora.com>
    Signed-off-by: Vinson Lee <vlee at freedesktop.org>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14262>
    (cherry picked from commit 9f8a204645c60f16681309a78ca3a28a276ec5fa)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=11ef52212adfafbdc389d474b21ce97815d5b51d
Author: Timur Kristóf <timur.kristof at gmail.com>
Date:   Tue Dec 21 15:24:21 2021 +0100

    aco/optimizer_postRA: Fix applying VCC to branches.
    
    Fixes: a93092d0edc92eea8e8e96709ad9857f05c45cef
    Signed-off-by: Timur Kristóf <timur.kristof at gmail.com>
    Reviewed-by: Daniel Schürmann <daniel at schuermann.dev>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14281>
    (cherry picked from commit b293299776069676af1bc76aeb1d48223e0e7de2)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=0fb58901f05f6ef5441b265f8b2d8f3ac8837988
Author: Timur Kristóf <timur.kristof at gmail.com>
Date:   Tue Dec 21 15:21:32 2021 +0100

    aco/optimizer_postRA: Fix combining DPP into VALU.
    
    Fixes: 4ac47ad1cd7976d7effbbfae37fa69e26a288ad2
    Signed-off-by: Timur Kristóf <timur.kristof at gmail.com>
    Reviewed-by: Daniel Schürmann <daniel at schuermann.dev>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14281>
    (cherry picked from commit ce4daa259cd97dd0c9d27aacb255e4afad8295c4)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=6c510c48478ebeabcd13f749d84828b4f6cccdac
Author: Daniel Schürmann <daniel at schuermann.dev>
Date:   Tue Dec 21 12:17:24 2021 +0100

    aco/ra: fix get_reg_for_operand() in case of stride mismatches
    
    We have to clear the register file from the previous operand
    as otherwise, there might be no space left.
    
    Totals from 5 (0.00% of 134572) affected shaders: (GFX10.3)
    CodeSize: 21144 -> 21000 (-0.68%); split: -0.72%, +0.04%
    Instrs: 3738 -> 3720 (-0.48%); split: -0.51%, +0.03%
    Latency: 517229 -> 516319 (-0.18%); split: -0.18%, +0.00%
    InvThroughput: 49068 -> 48902 (-0.34%); split: -0.38%, +0.04%
    Copies: 501 -> 483 (-3.59%); split: -3.79%, +0.20%
    
    Cc: mesa-stable
    Reviewed-by: Timur Kristóf <timur.kristof at gmail.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14279>
    (cherry picked from commit d36a43598c2dd2c490e8e8cb901d067fa56aeb8d)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=1c44a60ff48ef12165eeb2d3d63bb2c941fb31e4
Author: Daniel Schürmann <daniel at schuermann.dev>
Date:   Thu Nov 4 18:37:03 2021 +0100

    aco/optimizer: fix fneg modifier propagation on VOP3P
    
    Reviewed-by: Rhys Perry <pendingchaos02 at gmail.com>
    Cc: mesa-stable
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13688>
    (cherry picked from commit 193bd740ab8ca4ee978562eb18361448ad79146b)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=03f6edd5b77ea3b49797dc0dded871fc5c22a0a7
Author: Francisco Jerez <currojerez at riseup.net>
Date:   Tue Dec 14 13:40:49 2021 -0800

    intel/fs: Add physical fall-through CFG edge for unconditional BREAK instruction.
    
    This adds a missing CFG edge that represents a possible physical
    control flow path the EU might take under some conditions which isn't
    part of the logical CFG of the program.  This possibility shouldn't
    have led to problems on platforms prior to Gfx12, since the missing
    control flow edge cannot possibly influence liveness intervals.
    However on Gfx12+ it becomes the compiler's responsibility to resolve
    data dependencies across instructions, and the missing physical
    control flow paths may lead to a WaR data hazard currently not visible
    to the software scoreboard pass, which could lead to data corruption.
    
    Worse, the possibility for this path to be taken by the EU increases
    on Gfx12+ due to a hardware bug affecting EU fusion -- However the
    same physical path can be potentially taken on earlier platforms as
    well, so this patch extends the CFG on all platforms for consistency,
    even though the lack of this edge shouldn't lead to any functional
    issues on platforms earlier than Gfx12.  There are no shader-db
    changes on earlier platforms, so there seems to be no disadvantage
    from using the same CFG representation as on later platforms.
    
    This issue has ben reported on TGL with the following conformance
    test, thanks to Ian for bringing the FULSIM dependency check warning
    to my attention:
    
       dEQP-VK.graphicsfuzz.spv-stable-pillars-volatile-nontemporal-store
    
    Fixes: 4d1959e69328cf ("intel/cfg: Represent divergent control flow paths caused by non-uniform loop execution.")
    Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/4940
    Reported-by: Tapani Pälli <tapani.palli at intel.com>
    Reported-by: Ian Romanick <ian.d.romanick at intel.com>
    Reviewed-by: Ian Romanick <ian.d.romanick at intel.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14248>
    (cherry picked from commit e7470a40c569025b18d4d6767aa21caaa862a5b5)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=d93b0b488852f58f3f0773b261891f193ed851e3
Author: Rob Clark <robdclark at chromium.org>
Date:   Thu Dec 2 16:10:39 2021 -0800

    freedreno/computerator: Fix @buf header
    
    Order is important in the grammar, the more specific match needs to go
    first.
    
    Fixes: ba1c989348d ("freedreno/computerator: pass iova of buffer to const register")
    Signed-off-by: Rob Clark <robdclark at chromium.org>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14231>
    (cherry picked from commit d1edc6d9a14cd8f53d6c308a55b2d9ace4675c79)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=63af1b930aca15d5f6096769734f74758c8244ba
Author: Rob Clark <robdclark at chromium.org>
Date:   Wed Dec 1 17:06:20 2021 -0800

    freedreno/ir3: Handle instr->address when cloning
    
    Without this, a cloned instruction that takes full regs will trigger an
    ir3_validate assert.  This can happen, for ex, if an instruction that
    writes p0.x and has a relative src gets cloned in ir3_sched.
    
    Fixes an assert in Genshin Impact with a debug build.
    
    Fixes: 9af795d9b98 ("ir3: Make ir3_instruction::address a normal register")
    Signed-off-by: Rob Clark <robdclark at chromium.org>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14231>
    (cherry picked from commit 78c53f48888bf936d41e16b8bcf020beb5c5ff99)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=aade2545a7908589304e8838172d560783162c24
Author: Alyssa Rosenzweig <alyssa at collabora.com>
Date:   Sat Oct 23 15:25:02 2021 -0400

    panfrost: Fix Secondary Shader field
    
    Off-by-one on the start.
    
    Signed-off-by: Alyssa Rosenzweig <alyssa at collabora.com>
    Reported-by: Icecream95 <ixn at disroot.org>
    Fixes: 73e80994d50 ("panfrost: Add secondary shader XML fields")
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14154>
    (cherry picked from commit 8dc1936faac8804669e21901bacf170e1c009291)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=7342fa5ed906a8a089575cc695bbd84993c52632
Author: Alyssa Rosenzweig <alyssa at collabora.com>
Date:   Mon Dec 13 15:18:56 2021 -0500

    pan/indirect_draw: Don't upload garbage UBO
    
    There should never be a CPU pointer in GPU memory, let's say that...
    
    Fixes: 2e6d94c198e ("panfrost: Add helpers to support indirect draws")
    Signed-off-by: Alyssa Rosenzweig <alyssa at collabora.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14154>
    (cherry picked from commit d696183d4dc2ac695f74f802e03b893397e9567d)

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

    vulkan/log: Don't assert on non-client-visible objects
    
    We already have code to deal with non-client-visible objects but we were
    asserting if it didn't fall into one of the clearly mappable error
    cases.  However, we didn't have a mapping for VK_ERROR_NOT_PERMITTED
    which can happen during object creation.  Let's just be sloppy and drop
    the assert.  Worst case, the client gets an error with no object.
    
    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 116e23e3855a28e74e09517d0005200fd139dc88)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=4d28da1f8e1ffeadaff6899ede756638f09ba40f
Author: Eric Engestrom <eric at engestrom.ch>
Date:   Thu Dec 23 22:43:03 2021 +0000

    .pick_status.json: Mark d49d092259829ad9e33d0d9fc8eef9759d9fe56e as denominated

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=524fb244bde8f28359660e54f5635fdbf1d4788b
Author: Eric Engestrom <eric at engestrom.ch>
Date:   Fri Dec 17 23:54:51 2021 +0000

    .pick_status.json: Update to 4942e108909bbe0f53ec5fd52a3c7ae14c60abe6



More information about the mesa-commit mailing list