Mesa (staging/19.2): 24 new commits

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Wed Dec 4 22:52:05 UTC 2019


URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=3742910ba23e809d7307542f6dd197d38debd299
Author: Rob Clark <robdclark at chromium.org>
Date:   Tue Dec 3 16:28:26 2019 -0800

    nir/lower_clip: Fix incorrect driver loc for clipdist outputs
    
    Somehow adjusting maxloc based on existing outputs got lost, resulting
    in the clipdist varying clobbering the position varying.  Causing a
    shader that had no position output in freedreno/ir3, which triggers GPU
    hangs in neverball.
    
    Fixes: d0f746b6458 ("nir: Save nir_variable pointers in nir_lower_clip_vs rather than locs.")
    Signed-off-by: Rob Clark <robdclark at chromium.org>
    Reviewed-by: Kristian H. Kristensen <hoegsberg at google.com>
    (cherry picked from commit 372ed42d222a274abe712b62f4b037cbeb6fddb5)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=21a4be582c1f9723e4ff952ae5de06856761bea6
Author: Lionel Landwerlin <lionel.g.landwerlin at intel.com>
Date:   Tue Dec 3 16:35:45 2019 +0200

    intel/perf: fix improper pointer access
    
    This expression was unused by the macro, probably why it didn't
    register in the compilation.
    
    Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin at intel.com>
    Cc: <mesa-stable at lists.freedesktop.org>
    Reviewed-by: Mark Janes <mark.a.janes at intel.com>
    Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>
    (cherry picked from commit ddacd3d43b203e7c66ec366820e2a230b7e3aa67)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=272c4f27117ab6588bf8e6d7db01e0f4d5048f4e
Author: Lionel Landwerlin <lionel.g.landwerlin at intel.com>
Date:   Tue Dec 3 16:33:25 2019 +0200

    intel/perf: simplify the processing of OA reports
    
    This is a more accurate description of what happens in processing the
    OA reports.
    
    Previously we only had a somewhat difficult to parse state machine
    tracking the context ID.
    
    What we really only need to do to decide if the delta between 2
    reports (r0 & r1) should be accumulated in the query result is :
    
       * whether the r0 is tagged with the context ID relevant to us
    
       * if r0 is not tagged with our context ID and r1 is: does r0 have a
         invalid context id? If not then we're in a case where i915 has
         resubmitted the same context for execution through the execlist
         submission port
    
    v2: Update comment (Ken)
    
    Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin at intel.com>
    Cc: <mesa-stable at lists.freedesktop.org>
    Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>
    (cherry picked from commit 8c0b05826304370ef9e5f1e607d0f0305a0eb759)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=d4bb049e98a6bba37bfcef59dc9abc7d97cc2206
Author: Lionel Landwerlin <lionel.g.landwerlin at intel.com>
Date:   Tue Dec 3 16:19:24 2019 +0200

    intel/perf: take into account that reports read can be fairly old
    
    If we read the OA reports late enough after the query happens, we can
    get a timestamp in the report that is significantly in the past
    compared to the start timestamp of the query. The current code must
    deal with the wraparound of the timestamp value (every ~6 minute). So
    consider that if the difference is greater than half that wraparound
    period, we're probably dealing with an old report and make the caller
    aware it should read more reports when they're available.
    
    Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin at intel.com>
    Cc: <mesa-stable at lists.freedesktop.org>
    Reviewed-by: Mark Janes <mark.a.janes at intel.com>
    Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>
    (cherry picked from commit b364e920bf8c6805bcc3ff1cedf6b77dbb61b1e0)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=21df9767ad036a7bf4c3533d3b14b80533436647
Author: Lionel Landwerlin <lionel.g.landwerlin at intel.com>
Date:   Tue Dec 3 16:12:03 2019 +0200

    intel/perf: set read buffer len to 0 to identify empty buffer
    
    We always add an empty buffer in the list when creating the query.
    Let's set the len appropriately so that we can recognize it when we
    read OA reports up to the end of a query.
    
    We were using an 0 timestamp value associated with the empty buffer
    and incorrectly assuming this was a valid value. In turn that led to
    not reading enough reports and resulted in deltas added to our counter
    values which should have been discarded because those would be flagged
    for a different context.
    
    Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin at intel.com>
    Cc: <mesa-stable at lists.freedesktop.org>
    Reviewed-by: Mark Janes <mark.a.janes at intel.com>
    Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>
    (cherry picked from commit 9d0a5c817ce21adabeda5153035b30609e2862b2)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=82177cdc1d3722059ecf9c5a456b26b89baf5445
Author: Lionel Landwerlin <lionel.g.landwerlin at intel.com>
Date:   Tue Dec 3 16:08:12 2019 +0200

    intel/perf: fix invalid hw_id in query results
    
    Accumulation happens between 2 reports, it can be between a start/end
    report from another context. So only consider updating the hw_id of
    the results when it's not already valid and that we have a valid value
    to put in there.
    
    Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin at intel.com>
    Fixes: 41b54b5faf ("i965: move OA accumulation code to intel/perf")
    Reviewed-by: Mark Janes <mark.a.janes at intel.com>
    Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>
    (cherry picked from commit acea59dbf8056b46444c820115d86c42d0411686)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=e5b4f234752920045151d8d711f938f3847dc801
Author: Dylan Baker <dylan at pnwbakers.com>
Date:   Wed Dec 4 14:36:13 2019 -0800

    docs: Add SHA256 sums for 19.2.7

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=65d255cd1e12eb95d5116eacd3de9d913c96388a
Author: Dylan Baker <dylan at pnwbakers.com>
Date:   Wed Dec 4 13:48:11 2019 -0800

    VERSION: bump version for 19.2.7

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=d8e767ede8a2f66edad2f83ecb97986fe46f112b
Author: Dylan Baker <dylan at pnwbakers.com>
Date:   Wed Dec 4 13:47:44 2019 -0800

    docs: Add release notes for 19.2.7

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=4a0199b6e4bffd7241c764fb818eda6c8f0f99a4
Author: Rhys Perry <pendingchaos02 at gmail.com>
Date:   Thu Nov 28 11:30:55 2019 +0000

    radv: set writes_memory for global memory stores/atomics
    
    Fixes: 13ab63bb62b ('radv: Implement VK_EXT_buffer_device_address.')
    Signed-off-by: Rhys Perry <pendingchaos02 at gmail.com>
    Reviewed-by: Bas Nieuwenhuizen <bas at basnieuwenhuizen.nl>
    (cherry picked from commit 35fab1ba3395604f748cd13ba82991372ca0cae7)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=3ed8c942446277b02dc7efabfb49813c10c417c2
Author: Samuel Pitoiset <samuel.pitoiset at gmail.com>
Date:   Fri Nov 1 09:34:12 2019 +0100

    radv: fix compute pipeline keys when optimizations are disabled
    
    If an app first creates a compute pipeline with
    VK_PIPELINE_CREATE_DISABLE_OPTIMIZATION_BIT set, then re-compile it
    without that flag, the driver should re-compile the compute shader.
    Otherwise, it will return the unoptimized one.
    
    Fixes: ce188813bfe ("radv: add initial support for VK_PIPELINE_CREATE_DISABLE_OPTIMIZATION_BIT")
    Signed-off-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
    Reviewed-by: Bas Nieuwenhuizen <bas at basnieuwenhuizen.nl>
    (cherry picked from commit 9ab27647ff5379e8095a70c23dd16792f074c8c7)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=5c98b3657791d0786abc60ff55f5aa755d8f82ce
Author: Samuel Pitoiset <samuel.pitoiset at gmail.com>
Date:   Fri Aug 23 17:53:05 2019 +0200

    radv/gfx10: fix implementation of exclusive scans
    
    This implementation is loosely based on ROCm.
    https://github.com/RadeonOpenCompute/ROCm-Device-Libs/blob/master/ockl/src/wfredscan.cl
    
    This fixes dEQP-VK.subgroups.arithmetic.*.subgroupexclusive* on GFX10.
    
    Fixes: 227c29a80de ("amd/common/gfx10: implement scan & reduce operations")
    Signed-off-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
    Reviewed-by: Bas Nieuwenhuizen <bas at basnieuwenhuizen.nl>
    (cherry picked from commit c9aa843961d2c3cb34e7cb2dc843b93d723e0692)
    Conflicts resolved by Dylan Baker

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=a3869c14c0d5a1731e07c5dceb2e8052793e208e
Author: Samuel Pitoiset <samuel.pitoiset at gmail.com>
Date:   Tue Nov 26 18:29:00 2019 +0100

    radv: fix enabling sample shading with SampleID/SamplePosition
    
    When a fragment shader includes an input variable decorated with
    SampleId or SamplePosition, sample shading should be enabled
    because minSampleShadingFactor is expected to be 1.0.
    
    Cc: 19.2, 19.3 <mesa-stable at lists.freedesktop.org>
    Signed-off-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
    Reviewed-by: Bas Nieuwenhuizen <bas at basnieuwenhuizen.nl>
    (cherry picked from commit 86a5fbfd4afb4fb53ab8ea0a13dda33b32f8b79b)
    Conflicts resolved by Dylan Baker

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=bda6890f58c4eed295c766a55e4149c2c9550b1b
Author: Yevhenii Kolesnikov <yevhenii.kolesnikov at globallogic.com>
Date:   Thu Nov 7 17:22:26 2019 +0200

    meson: Fix linkage of libgallium_nine with libgalliumvl
    
    Do not link libgallium_nine with libgalliumvl_stub if it's already
    linked with libgalliumvl. Linking with stub leads to "duplicate
    symbol" errors.
    
    Fixes: 6b4c7047d57178d3362a710ad503057c6a582ca3
           ("meson: build gallium nine state_tracker")
    Closes: https://gitlab.freedesktop.org/mesa/mesa/issues/2040
    
    Signed-off-by: Yevhenii Kolesnikov <yevhenii.kolesnikov at globallogic.com>
    Reviewed-by: Dylan Baker <dylan at pnwbakers.com>
    (cherry picked from commit 9af22ccddcd1a983df5e0c6732a4e8f5ebf4d9cf)
    Conflicts resolved by Dylan Baker

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=2bf47550cea1cf4fd9f9d67bca8c91cb3d6fa960
Author: Jason Ekstrand <jason at jlekstrand.net>
Date:   Tue Nov 26 15:08:43 2019 -0600

    anv: Set up SBE_SWIZ properly for gl_Viewport
    
    gl_Viewport is also in the VUE header so we need to whack the read
    offset to 0 and emit a default (no overrides) SBE_SWIZ entry in that
    case as well.
    
    Cc: mesa-stable at lists.freedesktop.org
    Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin at intel.com>
    (cherry picked from commit b1f37688ba717db81a7e9c97e2a875d528d85112)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=b4e83559cb3f0f4507df9203703ae3d9b618873a
Author: Jonathan Gray <jsg at jsg.id.au>
Date:   Thu Nov 28 16:57:23 2019 +1100

    i965: update Makefile.sources for perf changes
    
    brw_performance_query_metrics.h was removed in
    134e750e16bfc53480e0bba6f0ae3e1d2a7fb87c and
    brw_performance_query.h was removed in
    8ae6667992ccca41d08884d863b8aeb22a4c4e65
    
    remove reference to these files from Makefile.sources
    
    Signed-off-by: Jonathan Gray <jsg at jsg.id.au>
    Fixes: 134e750e16bfc53480e0 ("i965: extract performance query metrics")
    Fixes: 8ae6667992ccca41d088 ("intel/perf: move query_object into perf")
    Reviewed-by: Eric Engestrom <eric.engestrom at intel.com>
    (cherry picked from commit 34dda0ca659a8dd4a25123d966ed04340b9a0e45)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=a39d364af3515b9b2df22f583b7b6835d0fc34b3
Author: Boris Brezillon <boris.brezillon at collabora.com>
Date:   Sat Nov 9 00:02:54 2019 +0100

    gallium: Fix the ->set_damage_region() implementation
    
    BACK_LEFT attachment can be outdated when the user calls
    KHR_partial_update() (->lastStamp != ->texture_stamp), leading to a
    damage region update on the wrong pipe_resource object.
    Let's delay the ->set_damage_region() call until the attachments are
    updated when we're in that case.
    
    Reported-by: Carsten Haitzler <raster at rasterman.com>
    Fixes: 492ffbed63a2 ("st/dri2: Implement DRI2bufferDamageExtension")
    Cc: <mesa-stable at lists.freedesktop.org>
    Signed-off-by: Boris Brezillon <boris.brezillon at collabora.com>
    Reviewed-by: Marek Olšák <marek.olsak at amd.com>
    (cherry picked from commit b196e1a8cfbd2c6b53f688542bcda5bb8f7f8888)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=c166435dc24656cf36a30184d42eaa980e2d1575
Author: Jonathan Gray <jsg at jsg.id.au>
Date:   Thu Nov 28 16:56:30 2019 +1100

    winsys/amdgpu: avoid double simple_mtx_unlock()
    
    pthread_mutex_unlock() when unlocked is documented by posix as
    being undefined behaviour.  On OpenBSD pthread_mutex_unlock() will call
    abort(3) if this happens.
    
    This occurs in amdgpu_winsys_create() after
    cb446dc0fa5c68f681108f4613560543aa4cf553
    winsys/amdgpu: Add amdgpu_screen_winsys
    
    Signed-off-by: Jonathan Gray <jsg at jsg.id.au>
    Cc: 19.2 19.3 <mesa-stable at lists.freedesktop.org>
    Signed-off-by: Marek Olšák <marek.olsak at amd.com>
    (cherry picked from commit 3fe3bde4f2c8813e13fa2992212ca46a894e68b6)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=52a8d43a24f2e61347ab3a8b15a7742742863114
Author: Bas Nieuwenhuizen <bas at basnieuwenhuizen.nl>
Date:   Thu Nov 28 00:36:24 2019 +0100

    radv: Unify max_descriptor_set_size.
    
    They were out of sync. Besides syncing, lets ensure they never diverge
    again.
    
    Fixes: 8d2654a4197 "radv: Support VK_EXT_inline_uniform_block."
    Reviewed-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
    (cherry picked from commit 4cde0e04e38ad2b9212d451cb5a84ed4ceaffd03)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=2e379b0a65c416cf94d21128ab2460b093333681
Author: Bas Nieuwenhuizen <bas at basnieuwenhuizen.nl>
Date:   Mon Nov 25 23:58:04 2019 +0100

    radv: Allocate cmdbuffer space for buffer marker write.
    
    Fixes: 946193ae008 "radv: add support for VK_AMD_buffer_marker"
    Reviewed-by:  Samuel Pitoiset <samuel.pitoiset at gmail.com>
    (cherry picked from commit 25bc9102d89f4390e0edc0a5f09fcde9de80f776)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=336f59f8ba28219f66a8b7926674d4200594be07
Author: Zebediah Figura <z.figura12 at gmail.com>
Date:   Tue Nov 5 10:21:21 2019 -0600

    Revert "draw: revert using correct order for prim decomposition."
    
    This reverts commit f97b731c82afb06cfd6ffebc90a3e098a9a1b308.
    
    Closes: https://gitlab.freedesktop.org/mesa/mesa/issues/250
    
    Reviewed-by: Roland Scheidegger <sroland at vmware.com>
    (cherry picked from commit a3c8bc10aa9294bd78c0e2cf5818fb4b8a42cd7a)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=38c8af9e2a232b2e08e48831d5f6618ae9a4a1cc
Author: Ian Romanick <ian.d.romanick at intel.com>
Date:   Mon Nov 18 11:52:47 2019 -0800

    intel/fs: Disable conditional discard optimization on Gen4 and Gen5
    
    The CMP instruction on Gen4 and Gen5 generates one bit (the LSB) of
    valid data and 31 bits of junk.  Results of comparisons that are used as
    Boolean values need to have a fixup applied to generate the proper 0/~0
    values.
    
    Calling fs_visitor::nir_emit_alu with need_dest=false prevents the fixup
    code from being generated.  This results in a sequence like:
    
            cmp.l.f0.0(16)  g8<1>F          g14<8,8,1>F     0x0F  /* 0F */
            ...
            cmp.l.f0.0(16)  g4<1>F          g6<8,8,1>F      0x0F  /* 0F */
    (+f0.1) or.z.f0.1(16) null<1>UD g4<8,8,1>UD     g8<8,8,1>UD
    
    instead of
    
            cmp.l.f0.0(16)  g8<1>F          g14<8,8,1>F     0x0F  /* 0F */
            ...
            cmp.l.f0.0(16)  g4<1>F          g6<8,8,1>F      0x0F  /* 0F */
            or(16) g4<1>UD g4<8,8,1>UD     g8<8,8,1>UD
    (+f0.1) and.z.f0.1(16) null<1>UD g4<8,8,1>UD     1UD
    
    I examined a couple of the shaders hurt by this change, and ALL of them
    would have been affected by this bug. :(
    
    Reviewed-by: Tapani Pälli <tapani.palli at intel.com>
    Closes: https://gitlab.freedesktop.org/mesa/mesa/issues/1836
    Fixes: 0ba9497e66a ("intel/fs: Improve discard_if code generation")
    
    Iron Lake
    total instructions in shared programs: 8122757 -> 8122957 (<.01%)
    instructions in affected programs: 8307 -> 8507 (2.41%)
    helped: 0
    HURT: 100
    HURT stats (abs)   min: 2 max: 2 x̄: 2.00 x̃: 2
    HURT stats (rel)   min: 0.84% max: 6.67% x̄: 2.81% x̃: 2.76%
    95% mean confidence interval for instructions value: 2.00 2.00
    95% mean confidence interval for instructions %-change: 2.58% 3.03%
    Instructions are HURT.
    
    total cycles in shared programs: 188510100 -> 188510376 (<.01%)
    cycles in affected programs: 76018 -> 76294 (0.36%)
    helped: 0
    HURT: 55
    HURT stats (abs)   min: 2 max: 12 x̄: 5.02 x̃: 4
    HURT stats (rel)   min: 0.07% max: 3.75% x̄: 0.86% x̃: 0.56%
    95% mean confidence interval for cycles value: 4.33 5.71
    95% mean confidence interval for cycles %-change: 0.60% 1.12%
    Cycles are HURT.
    
    GM45
    total instructions in shared programs: 4994403 -> 4994503 (<.01%)
    instructions in affected programs: 4212 -> 4312 (2.37%)
    helped: 0
    HURT: 50
    HURT stats (abs)   min: 2 max: 2 x̄: 2.00 x̃: 2
    HURT stats (rel)   min: 0.84% max: 6.25% x̄: 2.76% x̃: 2.72%
    95% mean confidence interval for instructions value: 2.00 2.00
    95% mean confidence interval for instructions %-change: 2.45% 3.07%
    Instructions are HURT.
    
    total cycles in shared programs: 128928750 -> 128928982 (<.01%)
    cycles in affected programs: 67442 -> 67674 (0.34%)
    helped: 0
    HURT: 47
    HURT stats (abs)   min: 2 max: 12 x̄: 4.94 x̃: 4
    HURT stats (rel)   min: 0.09% max: 3.75% x̄: 0.75% x̃: 0.53%
    95% mean confidence interval for cycles value: 4.19 5.68
    95% mean confidence interval for cycles %-change: 0.50% 1.00%
    Cycles are HURT.
    
    (cherry picked from commit e51eda99dfd6a66b066e371005e7a54ecc38fc11)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=5836dd66e02654176a2c81c69a9c76436788fdb5
Author: Dylan Baker <dylan at pnwbakers.com>
Date:   Thu Nov 21 16:04:47 2019 -0800

    VERSION: bumpre to 19.2.6

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=264d1187dfedff26f7e9fbc0f90ae1f0de7d00f4
Author: Dylan Baker <dylan at pnwbakers.com>
Date:   Thu Nov 21 16:04:11 2019 -0800

    docs: Add release notes for 19.2.6




More information about the mesa-commit mailing list