Mesa (staging/21.0): 23 new commits

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Thu Feb 11 21:03:34 UTC 2021


URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=d851b07fefaced2315b21f519bf31ca6f8d4a1ed
Author: Adam Jackson <ajax at redhat.com>
Date:   Wed Jan 27 14:23:17 2021 -0500

    osmesa: Pacify MSVC in the test code
    
    Not smart enough to think this is const, eh.
    
    Fixes: mesa/mesa#4119
    Fixes: c5c1aa7c75c05927017325829cb3f354654d0b73 ("gallium/osmesa: Fix flushing and Y-flipping of the depth buffer.")
    Reviewed-by: Eric Anholt <eric at anholt.net>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8936>
    (cherry picked from commit 88ca480c8babc684c22a6b53de4caaeb3bd9b0b9)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=fd7be16bd361fcb9fcf8e8e3e6eed5a086936d06
Author: Eric Anholt <eric at anholt.net>
Date:   Wed Jan 20 12:33:49 2021 -0800

    v3d: Clean up vestiges of alpha test lowering.
    
    We had an unnecessary case in our uniforms upload switch statement, since
    we no longer advertise the cap.
    
    Fixes: 8ad931808e2d ("v3d: do not report alpha-test as supported")
    Reviewed-by: Iago Toral Quiroga <itoral at igalia.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8601>
    (cherry picked from commit 5ddc2f916fbe32af2443af59727dbbc543e04b88)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=6723819cc28070f2cfbe68b86d73ee9a15f23fe6
Author: Eric Anholt <eric at anholt.net>
Date:   Wed Jan 20 12:07:54 2021 -0800

    vc4: Remove vestiges of alpha test lowering.
    
    We stopped reporting the alpha test screen cap, and stopped using the
    value in the key, so now shrink the key.  This gets another switch case
    out of the hot uniforms upload path.
    
    Fixes: 1404b8b1e5b6 ("vc4: do not report alpha-test as supported")
    Reviewed-by: Iago Toral Quiroga <itoral at igalia.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8601>
    (cherry picked from commit cc0841c82aec18cb93f4f1d52ea193c70cb846a8)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=a7abc65a584165177da52c40c0d2069261dad689
Author: Lionel Landwerlin <lionel.g.landwerlin at intel.com>
Date:   Sun Dec 6 23:22:45 2020 +0200

    anv: only signal wsi fence BO on last command buffer
    
    I'm pretty sure this doesn't fix anything because the WSI code only
    use a single VkSubmitInfo, but better be safe.
    
    Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin at intel.com>
    Fixes: ccb7d606f1a293 ("anv: Use submit-time implicit sync instead of allocate-time")
    Reviewed-by: Jason Ekstrand <jason at jlekstrand.net>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8934>
    (cherry picked from commit 64cb03a52dc97e737b1e24eec6499223021174ce)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=a6dd1fda4e28c190e84da53625063e7abd411499
Author: Rhys Perry <pendingchaos02 at gmail.com>
Date:   Tue Jan 12 16:18:47 2021 +0000

    aco: do not flag all blocks WQM to ensure we enter all nested loops in WQM
    
    This should no longer be necessary since the mark_block_wqm() we use to
    flag break conditions as WQM now adds block to the worklist. With them
    added to the worklist, get_block_needs() will add WQM to block_needs.
    
    Adding WQM to block_needs here without adding the block to the worklist
    (like we do here) can cause issues because it does not ensure that the
    predecessors' branches are in WQM (needed for it to be possible to
    transition to WQM in the block). This happened in an Overwatch shader.
    
    No fossil-db changes.
    
    Signed-off-by: Rhys Perry <pendingchaos02 at gmail.com>
    Reviewed-by: Daniel Schürmann <daniel at schuermann.dev>
    Fixes: 661922f6ac9 ("aco: add block to worklist in mark_block_wqm()")
    Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/4066
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8446>
    (cherry picked from commit f0074a6f0532196f5d9d2be00a9d884100401816)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=0bb75ccf28d6d1f39707bea9b2291a96e33f3c71
Author: Bas Nieuwenhuizen <bas at basnieuwenhuizen.nl>
Date:   Mon Feb 8 15:24:30 2021 +0100

    radv: Fix vram override with fully visible VRAM.
    
    Fixes: cf2eebdf4f1 ("radv,gallium: Add driconf option to reduce advertised VRAM size.")
    Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz at gmail.com>
    Reviewed-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8915>
    (cherry picked from commit bd7d8a77e9a767b81d73e7820c48c2325101ffac)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=e28d43f10814e57d178c0811b76b1890ba9b3131
Author: Caio Marcelo de Oliveira Filho <caio.oliveira at intel.com>
Date:   Wed Feb 3 20:58:31 2021 -0800

    spirv: Allow variable pointers pointing to an array of blocks
    
    Reviewed-by: Jason Ekstrand <jason at jlekstrand.net>
    Cc: mesa-stable
    Tested-by: Tapani Pälli <tapani.palli at intel.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8864>
    (cherry picked from commit 568a66825912d17d5a1a7f9a0dea188c079c51fc)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=40f3ce141a846d13e99574abb51f282c57741c3f
Author: Alyssa Rosenzweig <alyssa.rosenzweig at collabora.com>
Date:   Fri Jan 15 16:35:07 2021 -0500

    pan/bi: Fix FLOG_TABLE modifier handling
    
    These should not be in a union together.
    
    [Note: this does not need to be backported, since the affected
    instruction is not emitted under any circumstances in the stable
    branches]
    
    Fixes: dd11e5076e6 ("pan/bi: Add new bi_instr data structure")
    Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig at collabora.com>
    Acked-by: Boris Brezillon <boris.brezillon at collabora.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8894>
    (cherry picked from commit 94fed29680c74f8857036ec97c3f762abfd6c014)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=bcde7c14c688b0364ecfcb4753e4f57b230e4acb
Author: Ian Romanick <ian.d.romanick at intel.com>
Date:   Tue Feb 2 16:04:57 2021 -0800

    nir/algebraic: Fix a >> #b << #b for sizes other than 32-bit
    
    The base mask previously used was 0xffffffff.  This is not correct (but
    should still work) for 16-bit and 8-bit values, but it means the high
    32-bits of 64-bit values will get chopped off.
    
    Instead of just restricting the pattern to 32-bits (as was done before
    00b28a50b2c), this extends the optimization in two ways:
    
    1. Make it correct for other bit sizes.
    2. Make it work for arbitrary shift counts.
    
    This has the added benefit of reducing the number of patterns actually
    added (7 previously, 4 now).
    
    The "Reassociate for improved CSE" part is just reverted to its
    pre-00b28a50b2c behavior.  I doubt that pattern is likely to have much
    impact outside 32-bits.
    
    This change fixes the piglit tests
    tests/spec/arb_gpu_shader_int64/fs-shl-of-shr-int64.shader_test and
    tests/spec/arb_gpu_shader_int64/fs-iand-of-iadd-int64.shader_test.
    
    All of the shaders helped in shader-db are vertex shaders on platforms
    with vector-oriented vertex processing.  The shaders contain ((x >> 16)
    << 16).  These platforms set lower_extract_word, so the optimization
    that transforms (x >> 16) to extract_u16 doesn't trigger.  With only ~60
    shaders involved, I didn't bother trying to add extract_XYZ versions of
    these patterns to try to get those cases.
    
    Fixes: 00b28a50b2c ("nir/algebraic: trivially enable existing 32-bit patterns for all bit sizes")
    Reviewed-by: Rhys Perry <pendingchaos02 at gmail.com>
    
    Haswell and earlier Intel GPUs had simlar results. (Haswell shown)
    total instructions in shared programs: 16397554 -> 16397496 (<.01%)
    instructions in affected programs: 7961 -> 7903 (-0.73%)
    helped: 58
    HURT: 0
    helped stats (abs) min: 1 max: 1 x̄: 1.00 x̃: 1
    helped stats (rel) min: 0.36% max: 1.89% x̄: 0.99% x̃: 0.78%
    95% mean confidence interval for instructions value: -1.00 -1.00
    95% mean confidence interval for instructions %-change: -1.13% -0.85%
    Instructions are helped.
    
    total cycles in shared programs: 1035483770 -> 1035483504 (<.01%)
    cycles in affected programs: 75922 -> 75656 (-0.35%)
    helped: 44
    HURT: 2
    helped stats (abs) min: 2 max: 12 x̄: 6.14 x̃: 2
    helped stats (rel) min: 0.05% max: 1.67% x̄: 0.87% x̃: 0.72%
    HURT stats (abs)   min: 2 max: 2 x̄: 2.00 x̃: 2
    HURT stats (rel)   min: 0.06% max: 0.06% x̄: 0.06% x̃: 0.06%
    95% mean confidence interval for cycles value: -7.28 -4.29
    95% mean confidence interval for cycles %-change: -1.03% -0.63%
    Cycles are helped.
    
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8852>
    (cherry picked from commit 6b0443a9008ac4c004b1f3fb846b5c1e8c961df2)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=7d9947458d7089799c4b112399b65edf9845f57e
Author: Simon Ser <contact at emersion.fr>
Date:   Thu Jan 14 19:12:32 2021 +0100

    nouveau/nv50: fix linear buffer alignment for scan-out/cursors
    
    The hardware can only scan-out linear buffers with a pitch
    aligned to 256. It can only use packed buffers for cursors.
    
    Signed-off-by: Simon Ser <contact at emersion.fr>
    Reviewed-by: Ilia Mirkin <imirkin at alum.mit.edu>
    Cc: mesa-stable
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8500>
    (cherry picked from commit a4c11385b7107c89558f3d0e23234bfcb52664a6)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=0a1f910f71ed28adc18300fbd993c2649aaa625c
Author: Simon Ser <contact at emersion.fr>
Date:   Thu Jan 14 19:02:41 2021 +0100

    nouveau/nvc0: fix linear buffer alignment for scan-out/cursors
    
    The hardware can only scan-out linear buffers with a pitch
    aligned to 256. It can only use packed buffers for cursors.
    
    Signed-off-by: Simon Ser <contact at emersion.fr>
    Reviewed-by: Ilia Mirkin <imirkin at alum.mit.edu>
    Closes: https://gitlab.freedesktop.org/drm/nouveau/-/issues/36
    Cc: mesa-stable
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8500>
    (cherry picked from commit 6650c53e64198d1b2a283778e620be8458765dae)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=6a526efcfbbc639cd9af5c38ac63f9d61e6e696d
Author: Ilia Mirkin <imirkin at alum.mit.edu>
Date:   Thu Feb 4 12:15:43 2021 -0500

    nouveau: reinstate fencing on screen destroy
    
    As it turns out, the wait is required as the driver expects for
    rendering to be quiesced on exit. This can trigger channel failures,
    which in turn trigger recovery. This can fail and destroy the whole
    system.
    
    Fixes: 28a781323fb ("nouveau: change fence destruction logic on screen destroy")
    References: https://gitlab.freedesktop.org/mesa/mesa/-/issues/4223
    Signed-off-by: Ilia Mirkin <imirkin at alum.mit.edu>
    Reviewed-by: Karol Herbst <kherbst at redhat.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8867>
    (cherry picked from commit 92f12952f32ee08cd302f8591ab059ca5f167239)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=a1248b811e13e66d8aae0d02d5f3ed8e9bc405b2
Author: Bas Nieuwenhuizen <bas at basnieuwenhuizen.nl>
Date:   Wed Sep 23 03:04:27 2020 +0200

    radv: Improve spilling on discrete GPUs.
    
    The linked bug gets better performance and I personally verified
    better spilling performance on HZD so let us make this step for now.
    
    Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/3183
    Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/3698
    Reviewed-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
    CC: mesa-stable
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6833>
    (cherry picked from commit 862b6a9a97ad9c47c14dbc76ea892293573c746f)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=0ea5fe87ae51dcc14e17daaee38e93726b431f8c
Author: Mike Blumenkrantz <michael.blumenkrantz at gmail.com>
Date:   Wed Feb 3 07:17:17 2021 -0500

    radv: zero the bo descriptor array when allocating a new set
    
    this must be reset to avoid issues when using VK_DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT_EXT
    when some descriptors in the set may not have been bound
    
    fixes #4219
    
    Fixes: 126d5adb11e ("radv: Use host memory pool for non-freeable descriptors.")
    
    Reviewed-by: Bas Nieuwenhuizen <bas at basnieuwenhuizen.nl>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8840>
    (cherry picked from commit 09ce403b2d77ca80eade07562839103ed9b46f0b)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=bde380bde9ec3e18394b5b9c1d3040ede8939e11
Author: Mike Blumenkrantz <michael.blumenkrantz at gmail.com>
Date:   Tue Feb 2 19:59:12 2021 -0500

    radv: null bo list pointer for null descriptors on update
    
    failing to unset any existing pointers here leads to stale bo entries in
    the list and then the kernel rejecting the cmdbuf with ENOENT
    
    Fixes: 126d5adb11e ("radv: Use host memory pool for non-freeable descriptors.")
    
    Reviewed-by: Bas Nieuwenhuizen <bas at basnieuwenhuizen.nl>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8840>
    (cherry picked from commit 2f534c2e2ee97b89c43f155c0e2f9efe5a3dffac)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=bb2aea8ded661a0481e5845689870a5cddb07937
Author: Rhys Perry <pendingchaos02 at gmail.com>
Date:   Wed Jan 27 14:04:10 2021 +0000

    aco: always set exec_live=false
    
    Register demand calculation for exec masks doesn't always match
    get_live_changes() and get_temp_registers(). For now, just set
    exec_live=false.
    
    fossil-db (GFX10.3):
    Totals from 108230 (77.64% of 139391) affected shaders:
    SGPRs: 5759658 -> 5756818 (-0.05%); split: -0.08%, +0.03%
    VGPRs: 4061104 -> 4061248 (+0.00%); split: -0.00%, +0.01%
    SpillSGPRs: 14114 -> 15198 (+7.68%); split: -0.10%, +7.78%
    CodeSize: 266548396 -> 266603288 (+0.02%); split: -0.01%, +0.03%
    MaxWaves: 1390885 -> 1390855 (-0.00%); split: +0.00%, -0.00%
    Instrs: 50983353 -> 50992972 (+0.02%); split: -0.02%, +0.04%
    Cycles: 1733042048 -> 1735443264 (+0.14%); split: -0.02%, +0.16%
    VMEM: 41933625 -> 41914722 (-0.05%); split: +0.04%, -0.09%
    SMEM: 7197675 -> 7197789 (+0.00%); split: +0.16%, -0.16%
    VClause: 1050885 -> 1050978 (+0.01%); split: -0.02%, +0.03%
    SClause: 2074913 -> 2071844 (-0.15%); split: -0.23%, +0.08%
    Copies: 3181464 -> 3188125 (+0.21%); split: -0.38%, +0.59%
    Branches: 1127526 -> 1127716 (+0.02%); split: -0.10%, +0.12%
    PreSGPRs: 3376687 -> 3586076 (+6.20%); split: -0.00%, +6.20%
    PreVGPRs: 3339740 -> 3339811 (+0.00%)
    
    Signed-off-by: Rhys Perry <pendingchaos02 at gmail.com>
    Reviewed-by: Daniel Schürmann <daniel at schuermann.dev>
    Cc: mesa-stable
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8807>
    (cherry picked from commit d1f93261b17d73eceb16b7081000b5bb8f6608f2)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=00b62f387c7977d9fcbc8222f2ca83d47041d4f5
Author: Boris Brezillon <boris.brezillon at collabora.com>
Date:   Tue Feb 2 09:32:41 2021 +0100

    panfrost: Fix a polygon list corruption in the multi-context case
    
    The polygon list is written by tiler jobs and read by fragment ones,
    and nothing should re-use the heap until the fragment job is done.
    4fec6c944817 ("panfrost: Add the tiler heap to fragment jobs") fixed
    this for the !multi-context case by adding the heap BO to fragment job.
    But the tiler heap is shared accross contexts, and vertex/tiler+fragment
    job submission is done through 2 separate ioctls, meaning that
    vertex/tiler and fragment jobs from 2 different context might be
    interleaved.
    
    Add a lock at the device level to ensure tiler/vertex+fragment jobs are
    submitted sequentially, with no other jobs using the same tiler heap
    in-between.
    
    Cc: mesa-stable
    Fixes: d8deb1eb6a22 ("panfrost: Share tiler_heap across batches/contexts")
    Reported-by: Icecream95 <ixn at disroot.org>
    Signed-off-by: Boris Brezillon <boris.brezillon at collabora.com>
    Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig at collabora.com>
    Tested-by: Icecream95 <ixn at disroot.org>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8822>
    (cherry picked from commit 66125c429fe7ced20e1125b9a439ae98d5fab993)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=664a5ef70b92cd59efaee676d38944ead52c8f94
Author: Jesse Natalie <jenatali at microsoft.com>
Date:   Fri Jan 29 09:53:23 2021 -0800

    drisw: Disable automatic use of layered drivers with LIBGL_ALWAYS_SOFTWARE
    
    If LIBGL_ALWAYS_SOFTWARE is set, then drisw is selected, and internally,
    drisw should choose one of the actual software drivers. If it's not set,
    but drisw is still selected (no hardware DRM driver, like in WSL), then
    layered drivers are preferred over pure software.
    
    Fixes: 4a3b42a7 ("drisw: Prefer hardware-layered sw-winsys drivers over pure sw")
    Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/4171
    Acked-by: Daniel Stone <daniels at collabora.com>
    Reviewed-by: Dave Airlie <airlied at redhat.com>
    Reviewed-by: Adam Jackson <ajax at redhat.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8782>
    (cherry picked from commit a88cd98315c6eecd8026402cf785ca5092589b58)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=bf0b3c65c5062b7ffe39004e3baf39509ad7f552
Author: Dave Airlie <airlied at redhat.com>
Date:   Wed Feb 3 14:17:46 2021 +1000

    zink: don't pick a cpu device ever.
    
    This goes down the list and picks the first non-cpu device, when
    we merge the CI patch we should add a forcing env var in here.
    
    Fixes: 8d46e35d1 ("zink: introduce opengl over vulkan")
    Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz at gmail.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8845>
    (cherry picked from commit e41b0202c9af96d511546e2e9c78742e86fb981f)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=60f12ee177241db316bd140e7eec547979ad2830
Author: Samuel Pitoiset <samuel.pitoiset at gmail.com>
Date:   Tue Feb 2 19:52:09 2021 +0100

    radv: fix waiting on the last enabled RB for occlusion queries
    
    Wait on the last enabled RB, not the last RB. This fixes GPU hangs
    because the GPU was waiting forever.
    
    Cc: mesa-stable
    Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/4212
    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/8836>
    (cherry picked from commit 7e47fe9a940f3989caf98024fdc584641601fa2e)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=ca39949a27dcd4d9715afbb616a9896ce2e8b388
Author: Jason Ekstrand <jason.ekstrand at intel.com>
Date:   Thu Jan 28 16:45:29 2021 -0600

    vulkan: Make vk_debug_report_callback derive from vk_object_base
    
    Fixes: 51c6bc13ce3a "anv,vulkan: Implement VK_EXT_private_data"
    Reviewed-by: Bas Nieuwenhuizen <bas at basnieuwenhuizen.nl>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8676>
    (cherry picked from commit bd1705a4808f61513f5ff818679efd5c5f105f8a)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=a181bc63ae4e53a83dd9ebbf17aa5ef717e827cd
Author: Dylan Baker <dylan.c.baker at intel.com>
Date:   Wed Feb 10 15:10:54 2021 -0800

    .pick_status.json: Update to 8ed874d73fafcfbcb54730dc5c20e58f24d55f5e

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=392b1722c2562d65066bece2f9e2f327ecb7b62d
Author: Dylan Baker <dylan.c.baker at intel.com>
Date:   Fri Feb 5 08:54:18 2021 -0800

    bump version for 21.0-rc4



More information about the mesa-commit mailing list