Timo Aaltonen pushed to branch upstream-experimental at X Strike Force / lib / 
mesa


Commits:
ed162ed1 by Bas Nieuwenhuizen at 2021-03-11T14:12:23-08:00
vulkan/device_select: Stop using device properties 2.

We have to choose between:
1) Stop handling two identical GPUs
2) Stop having crashes with other layers active.
3) Fix the Vulkan Loader.

Since nobody seems to want to spend enough effort to do 3 the
effective choice is between 1 and 2. This is choosing 2, as
two identical GPUs is pretty uncommon since crossfire doesn't
work on Linux anyway.

(And it would only work sporadically as the game needs to enable the
 extension)

CC: mesa-stable
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/3801
Reviewed-by: Dave Airlie <airl...@redhat.com>
(cherry picked from commit 38ce8d4d00c2b0e567b6dd36876cf171acb1dbc7)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9217>

- - - - -
0ee919e7 by Dylan Baker at 2021-03-11T14:12:23-08:00
.pick_status.json: Update to 4ded99f99ddbd1103ffddfd9935638fc12e0ecfd

- - - - -
a98a386d by Jesse Natalie at 2021-03-11T14:12:23-08:00
microsoft/clc: Let lower_vars_to_explicit_types fill kernel input 
driver_location

Importantly, also run that before mucking with the variable list via image 
lowering,
which removes and inserts variables, making the driver_location no longer line 
up
with metadata.

Fixes: ff05da7f ("microsoft: Add CLC frontend and kernel/compute support 
to DXIL converter")
Reviewed-By: Bill Kristiansen <billk...@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9138>
(cherry picked from commit 9da8179a1e8c835749c6c97f4adc31d0428cae8e)

- - - - -
ba87319c by Jesse Natalie at 2021-03-11T14:12:23-08:00
microsoft/clc: Fix wrap modes for inline samplers for integer textures

Fixes: ff05da7f ("microsoft: Add CLC frontend and kernel/compute support 
to DXIL converter")
Reviewed-By: Bill Kristiansen <billk...@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9138>
(cherry picked from commit d773257012a2fa3d67144263387cff670cccc97a)

- - - - -
0cd2eab1 by Jesse Natalie at 2021-03-11T14:12:23-08:00
microsoft/clc: Move inline samplers to the end of the variable list

Since inline samplers are uniforms, just like kernel args, and
nir_lower_vars_to_explicit_types will assign driver_location based
on order in the variable list, move the inline samplers to the end
of the list to prevent them from creating gaps in the kernel arg
offsets.

Fixes: ff05da7f ("microsoft: Add CLC frontend and kernel/compute support 
to DXIL converter")
Reviewed-By: Bill Kristiansen <billk...@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9138>
(cherry picked from commit 3ee8f2ccba93a984f895eeff6d908979e22215b3)

- - - - -
45f800a1 by Jesse Natalie at 2021-03-11T14:12:23-08:00
microsoft/clc: Use driver_location for metadata instead of re-computing offsets

Fixes: ff05da7f ("microsoft: Add CLC frontend and kernel/compute support 
to DXIL converter")
Reviewed-By: Bill Kristiansen <billk...@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9138>
(cherry picked from commit 5b0a10823b3f80f5d28cd460a57b7fa435d34ee8)

- - - - -
885b0915 by Alyssa Rosenzweig at 2021-03-11T14:12:23-08:00
pan/bi: Use explicit move even for RT#0 of MRT

Otherwise we get a bad RA if RT 0 = RT 3 (for example), fixes
dEQP-GLES31.functional.shaders.opaque_type_indexing.sampler.const_literal.fragment.sampler2d

Fixes: a6f1500bedd ("pan/bi: Workaround BLEND precolour with explicit 
moves")
Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzw...@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9105>
(cherry picked from commit ed29a2beb80e53e6a9985786c77350d963e860e7)

- - - - -
68197e8c by Samuel Pitoiset at 2021-03-11T14:12:23-08:00
radv: set correct value for OFFCHIP_BUFFERING on GFX10+

Higher values break tessellation. I was only able to reproduce this
by switching back/from AMDVLK which was really weird...

According to Marek (1c6eca23fdd8), it looks like it's related to
register shadowing and PAL enables it, that probably explains a bit.

Copied from PAL and RadeonSI.

Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/4207
Gitlab: https://gitlab.freedesktop.org/mesa/mesa/-/issues/2498
Fixes: 74d69299d16 ("radv/gfx10: double the number of tessellation offchip 
buffers per SE")
Signed-off-by: Samuel Pitoiset <samuel.pitoi...@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <b...@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9141>
(cherry picked from commit e3bdf815b790be61f5141afe630bb8eb1453a0ce)

- - - - -
5225d0f0 by Yevhenii Kharchenko at 2021-03-11T14:12:23-08:00
st/mesa: fix PBO download for TEXTURE_1D_ARRAY textures

Fixes 'nir_tex_src_coord' param was provided to NIR 'txf' 
operation as a
vec3 for TEXTURE_1D_ARRAY target, causing an assert.
Only following targets require vec3: TEXTURE_2D_ARRAY, TEXTURE_3D,
TEXTURE_CUBE, TEXTURE_CUBE_ARRAY. The rest must use vec2.

Packing layer value into Y-coordinate the same way it was done in
'create_fs' in commit 2bf6dfac.

Fixes: a01ad311 ("st/mesa: Add NIR versions of the PBO upload/download
shaders. ")

Signed-off-by: Yevhenii Kharchenko <yevhenii.kharche...@globallogic.com>
Reviewed-by: Marek Olšák <marek.ol...@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9014>
(cherry picked from commit 1516b6bd9a5307ad37f10b1b1c614e399f4bce2d)

- - - - -
58dab1b1 by Ian Romanick at 2021-03-11T14:12:23-08:00
nir/algebraic: Fix some min/max of b2f replacements

fmin(-A, -B) is -fmax(A, B), and fmax(-A, -B) is -fmin(A, B).  Therefore
the logic joining A and B should toggle between ior and iand for the
negated versions.

At the very least, a shader from Euro Truck Simulator 2 in shader-db is
affected by this.  The KIL instruction in the (ARB assembly) shader ends
up with the wrong logic.  This is _probably_ the source of
https://gitlab.freedesktop.org/mesa/mesa/-/issues/1346.

That said, the issue mentions that Mesa 18.0.5 works, but commit
68420d8322c ("nir: Simplify min and max of b2f") was added in 17.3.
Moreover, I was not able to reproduce the error in the ETS2 shader from
shader-db from any Mesa commit near the time the original fd.o bugzilla
was submitted (December 2018). :shrug:

In fact, the current error in that shader starts with 9167324a86b
("nir/algebraic: Mark some logic-joined comparison reductions as
exact").  That's a bit of a red herring as 9167324a86b just sets off a
chain of replacements that eventually leads to the incorrect min/max of
b2f patterns fixed by this commit.

The other affected shaders in the shader-db results are from Cargo
Commander.  These are also ARB assembly shaders.

I think any ARB assembly shader that uses the pattern

    SLT    r0, ...;
    ...
    KIL    -r0;

will suffer from issues related to this.

This change fixes the piglit
tests/spec/arb_fragment_program/kil-of-slt.shader_test test added in
https://gitlab.freedesktop.org/mesa/piglit/-/merge_requests/454.

shader-db results:

All Gen6+ platforms had similar result. (Ice Lake shown)
total instructions in shared programs: 20034604 -> 20034486 (<.01%)
instructions in affected programs: 3885 -> 3767 (-3.04%)
helped: 47
HURT: 2
helped stats (abs) min: 2 max: 4 x̄: 2.64 x̃: 2
helped stats (rel) min: 2.33% max: 8.33% x̄: 3.48% x̃: 3.39%
HURT stats (abs)   min: 3 max: 3 x̄: 3.00 x̃: 3
HURT stats (rel)   min: 13.64% max: 16.67% x̄: 15.15% x̃: 15.15%
95% mean confidence interval for instructions value: -2.83 -1.99
95% mean confidence interval for instructions %-change: -3.84% -1.60%
Instructions are helped.

total cycles in shared programs: 979881379 -> 979879406 (<.01%)
cycles in affected programs: 119873 -> 117900 (-1.65%)
helped: 46
HURT: 3
helped stats (abs) min: 10 max: 756 x̄: 45.41 x̃: 26
helped stats (rel) min: 0.53% max: 19.72% x̄: 1.67% x̃: 1.26%
HURT stats (abs)   min: 28 max: 56 x̄: 38.67 x̃: 32
HURT stats (rel)   min: 1.44% max: 3.54% x̄: 2.75% x̃: 3.27%
95% mean confidence interval for cycles value: -70.83 -9.70
95% mean confidence interval for cycles %-change: -2.23% -0.57%
Cycles are helped.

Iron Lake and GM45 had similar results. (Iron Lake shown)
total instructions in shared programs: 8115098 -> 8115076 (<.01%)
instructions in affected programs: 2592 -> 2570 (-0.85%)
helped: 32
HURT: 2
helped stats (abs) min: 1 max: 1 x̄: 1.00 x̃: 1
helped stats (rel) min: 0.88% max: 2.70% x̄: 1.35% x̃: 1.31%
HURT stats (abs)   min: 5 max: 5 x̄: 5.00 x̃: 5
HURT stats (rel)   min: 17.24% max: 18.52% x̄: 17.88% x̃: 17.88%
95% mean confidence interval for instructions value: -1.15 -0.15
95% mean confidence interval for instructions %-change: -1.83% 1.39%
Inconclusive result (%-change mean confidence interval includes 0).

total cycles in shared programs: 238189718 -> 238189802 (<.01%)
cycles in affected programs: 75076 -> 75160 (0.11%)
helped: 3
HURT: 31
helped stats (abs) min: 2 max: 130 x̄: 44.67 x̃: 2
helped stats (rel) min: 0.18% max: 5.70% x̄: 2.02% x̃: 0.19%
HURT stats (abs)   min: 2 max: 70 x̄: 7.03 x̃: 4
HURT stats (rel)   min: 0.07% max: 6.41% x̄: 0.53% x̃: 0.15%
95% mean confidence interval for cycles value: -7.27 12.21
95% mean confidence interval for cycles %-change: -0.33% 0.94%
Inconclusive result (value mean confidence interval includes 0).

No fossil-db changes on any Intel platform.

Fixes: 68420d8322c ("nir: Simplify min and max of b2f")
Closes: #1346
Reviewed-by: Matt Turner <matts...@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9122>
(cherry picked from commit 7e127c1fca6bd934469f4803dde54842fbd100da)

- - - - -
3f367315 by Erico Nunes at 2021-03-11T14:12:23-08:00
lima: fix max sampler views

If this is not defined, mesa may not deallocate sampler views,
which can result in memory leaks.
Just define it to the same as max texture samplers, like other
mesa drivers do.

Cc: mesa-stable
Signed-off-by: Erico Nunes <nunes.er...@gmail.com>
Reviewed-by: Vasily Khoruzhick <anars...@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9172>
(cherry picked from commit f3d47ba0c7596415b896297378ae5de0c4f30359)

- - - - -
abcc879c by Vinson Lee at 2021-03-11T14:12:23-08:00
aco: Initialize ds_state.front.writeMask.

Fix defect reported by Coverity Scan.

Uninitialized scalar variable (UNINIT)
uninit_use: Using uninitialized value ds_state.front. Field 
ds_state.front.writeMask is uninitialized.

Fixes: d488d0fd7ba ("aco: add framework for testing isel and integration 
tests")
Signed-off-by: Vinson Lee <v...@freedesktop.org>
Reviewed-by: Rhys Perry <pendingchao...@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9033>
(cherry picked from commit 7cc83f237efe1fdba075d07b18450c4345d2dc7f)

- - - - -
d2d52ca9 by Jeremy Huddleston Sequoia at 2021-03-11T14:12:23-08:00
Fall back on clock_gettime when timespec_get() is unavailable

Fixes: e3a8013de8ca "util/u_queue: add util_queue_fence_wait_timeout"
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/1020
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/4088

Signed-off-by: Jeremy Huddleston Sequoia <jerem...@apple.com>
Signed-off-by: Yurii Kolesnykov <r...@yurikoles.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8482>
(cherry picked from commit 68a785e63fe848c7bcd48bce2095670926f97eea)

- - - - -
f6dc6005 by Bas Nieuwenhuizen at 2021-03-11T14:12:24-08:00
radv: Don't use dedicated memory info to indicate sharing.

Can be used without sharing, so if only the dedicated memory info
is set we know it isn't shareable. Use that.

Fixes: a639d40f133 ("radv: add support for local bos. (v3)")
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/4330
Reviewed-by: Samuel Pitoiset <samuel.pitoi...@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9176>
(cherry picked from commit 2d520b692354ded47dbc32d19c2be253727bc935)

- - - - -
072be58b by Alyssa Rosenzweig at 2021-03-11T14:12:24-08:00
panfrost: Raise TEXTURE_BUFFER_OFFSET_ALIGNMENT

The blob advertises 64 for this, so let's use the same value. Small
alignments are observed to raise an IMPRECISE_FAULT at least on Bifrost.
As a bonus this forces cache line alignment which will help perf. Fixes

dEQP-GLES31.functional.texture.texture_buffer.render.as_vertex_texture.offset_1_alignments

Fixes: 5f7bafa316f ("panfrost: Enable ARB_texture_buffer_object")
Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzw...@collabora.com>
Reviewed-by: Boris Brezillon <boris.brezil...@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9164>
(cherry picked from commit 3f21b089f8ee16f1b51ed64e9c203b073c015766)

- - - - -
6864f885 by Dylan Baker at 2021-03-11T14:12:24-08:00
.pick_status.json: Mark 38ce8d4d00c2b0e567b6dd36876cf171acb1dbc7 as backported

- - - - -
5f4d7d99 by Alyssa Rosenzweig at 2021-03-11T14:12:24-08:00
panfrost: Don't advertise OES_copy_image

We don't support it yet.

Fixes: 61d3ae6e0bd ("panfrost: Initial stub for Panfrost driver")
Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzw...@collabora.com>
Reviewed-by: Boris Brezillon <boris.brezil...@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9164>
(cherry picked from commit 5eff64e3a318f911326499e9940ee773f6f58c21)

- - - - -
c96144f0 by Dave Airlie at 2021-03-11T14:12:24-08:00
glx: proposed fix for setSwapInterval

When mesa gets a DRI2 1.1 connection (as experienced with
vmwware DDX) we don't get a pointer for this.

Don't explode just keep going.

Fixes: 60ebeb4608a8 ("glx: Implement GLX_EXT_swap_control for DRI2 and 
DRI3")
Reviewed-by: Adam Jackson <a...@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9184>
(cherry picked from commit 279d1705525026c15e7cae88f8fa752046db1c19)

- - - - -
6611b3fa by Jeremy Huddleston Sequoia at 2021-03-11T14:12:24-08:00
Adjust dylib compatibility versions to match what was set by mesa-18.3's 
autotools-based builds

Cc: 20.3 21.0 <mesa-sta...@lists.freedesktop.org>
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/4113
Signed-off-by: Jeremy Huddleston Sequoia <jerem...@apple.com>
Reviewed-by: Dylan Baker <dylan.c.ba...@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8796>
(cherry picked from commit 38ae84b8daa1c2bc2f74093cf46ced5e252b04e5)

- - - - -
af8caf1f by Lionel Landwerlin at 2021-03-11T14:12:24-08:00
anv: reset binary syncobj to be signaled before submission

Before we introduced the submission thread in 829699ba632b2b, once we
returned from vkQueueSubmit, all signaled syncobj would have a
i915_request/dma-fence waiting to be signaled by some work that would
submitted to HW by i915.

After this submission thread that is no longer the case. We added a
few checks in places like vkQueuePresentKHR() to wait for the binary
semaphores to materialize before we would hand things over to the WSI
code.

Unfortunately 829699ba632b2b forgot to reset the signaled binary
semaphore.

Signed-off-by: Lionel Landwerlin <lionel.g.landwer...@intel.com>
Fixes: 829699ba632b2b ("anv: implement shareable timeline semaphores")
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/4276
Reviewed-by: Jason Ekstrand <ja...@jlekstrand.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9188>
(cherry picked from commit cb74cd816c0a0b1d6a715585414f8518cefbba5a)

- - - - -
c3347511 by Lionel Landwerlin at 2021-03-11T14:12:24-08:00
anv: don't wait for completion of work on vkQueuePresent()

Another mistake which is that we don't use the right wait API.

Signed-off-by: Lionel Landwerlin <lionel.g.landwer...@intel.com>
Fixes: 829699ba632b2b ("anv: implement shareable timeline semaphores")
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/4276
Reviewed-by: Jason Ekstrand <ja...@jlekstrand.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9188>
(cherry picked from commit 02f94c33066eff9e5de2077230affab1a1f3d063)

- - - - -
66e5b89f by Rhys Perry at 2021-03-11T14:12:24-08:00
aco/lower_phis: fix all_preds_uniform with continue_or_break

Found in a Death Stranding shader with loop unrolling disabled.

Signed-off-by: Rhys Perry <pendingchao...@gmail.com>
Reviewed-by: Daniel Schürmann <dan...@schuermann.dev>
Fixes: 9a089baff1a ("aco: optimize boolean phis with uniform 
selections")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9193>
(cherry picked from commit 75c9adf0398014b21ed9bbbd36f741b02b8f87f7)

- - - - -
da65216e by Lionel Landwerlin at 2021-03-11T14:12:24-08:00
anv: Fix wait_count missing increment

If we don't wait on anything, I bet it makes the QueuePresent faster,
but also completely wrong...

Signed-off-by: Lionel Landwerlin <lionel.g.landwer...@intel.com>
Fixes: 02f94c33066eff ("anv: don't wait for completion of work on 
vkQueuePresent()")
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/4276
Reviewed-by: Jason Ekstrand <ja...@jlekstrand.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9211>
(cherry picked from commit b0b1bf9957380ad967e900b40027668353b71df6)

- - - - -
00c346d2 by Marek Olšák at 2021-03-11T14:12:24-08:00
i915: use align_calloc for the context to fix m32 crashes

Fixes: 3175b63a0dfa290 "mesa: don't allocate matrices with malloc"
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/4295

Reviewed-by: Eric Anholt <e...@anholt.net>
Reviewed-by: Zoltán Böszörményi <zbos...@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9220>
(cherry picked from commit 75d5c1229e1fcc0e0885b35a1cc23e66a90aeb84)

- - - - -
79b1d162 by Marek Olšák at 2021-03-11T14:12:24-08:00
radeon,r200: use align_calloc for the context to fix m32 crashes

Fixes: 3175b63a0dfa290 "mesa: don't allocate matrices with malloc"

Reviewed-by: Eric Anholt <e...@anholt.net>
Reviewed-by: Zoltán Böszörményi <zbos...@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9220>
(cherry picked from commit 81cf4bef7e83fe3174503d48b458f8596420fdd7)

- - - - -
f6cad121 by Marek Olšák at 2021-03-11T14:12:24-08:00
nouveau_vieux: use align_calloc for the context to fix m32 crashes

Fixes: 3175b63a0dfa290 "mesa: don't allocate matrices with malloc"

Reviewed-by: Eric Anholt <e...@anholt.net>
Reviewed-by: Zoltán Böszörményi <zbos...@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9220>
(cherry picked from commit f827b29234cb3dfa4ff07adbcf1550fd53e0a573)

- - - - -
3fbabfb7 by Samuel Pitoiset at 2021-03-11T14:12:24-08:00
radv: do not scale the depth bias for D16_UNORM depth surfaces

Scaling the depth bias doesn't seem correct with Vulkan. This is
probably the root cause of the shadow artifacts differences between
RADV and AMDVLK/AMDGPU-PRO.

Fix dEQP-VK.rasterization.depth_bias.d16_unorm.

Cc: mesa-stable
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/2217
Signed-off-by: Samuel Pitoiset <samuel.pitoi...@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <b...@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9249>
(cherry picked from commit 8a47422d9778056b2263d5f253fab49dfed91486)

- - - - -
7238defb by Mauro Rossi at 2021-03-11T14:12:24-08:00
android: pan/bi: reorder static dependencies in gallium/dri

libpanfrost_lib depends on libpanfrost_bifrost for 
'bifrost_compile_shader_nir' symbol
libpanfrost_lib depends on libpanfrost_bifrost_disasm for 
'disassemble_bifrost' symbol
LOCAL_STATIC_LIBRARIES requires proper ordering to make the symbols available

Fixes the following building error happening with Android P:

FAILED: 
out/target/product/x86_64/obj/SHARED_LIBRARIES/gallium_dri_intermediates/LINKED/gallium_dri.so
external/mesa/src/panfrost/lib/decode.c:534: error: undefined reference to 
'disassemble_bifrost'
external/mesa/src/panfrost/lib/pan_shader.c:145: error: undefined reference to 
'bifrost_compile_shader_nir'

Cc: 20.3 21.0 <mesa-sta...@lists.freedesktop.org>
Fixes: 166630f ("android: pan/bi: Separate disasm/compiler targets")
Acked-by: Alyssa Rosenzweig <alyssa.rosenzw...@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9265>
(cherry picked from commit 97b7786e6be1adf5e023d3ebd1fe54bf25d3fd26)

- - - - -
1748f1d5 by Dylan Baker at 2021-03-11T14:12:24-08:00
.pick_status.json: Update to 9f8a0b797ed9b8ad9bf49af8269a337b1152a744

- - - - -
008abcca by Marek Olšák at 2021-03-11T14:12:24-08:00
Revert "gallium/u_upload_mgr: allow use of FLUSH_EXPLICIT with persistent 
mappings"

It's no longer needed after radeonsi had its SDMA uploads removed.

This reverts commit 54f7545cd7925db9ff78b9dccbff7406dd2ad4a4.

Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-pra...@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8298>
(cherry picked from commit 0aa63c31ca807e8aaa01a75d918830ac87fc070c)

- - - - -
a0278284 by Rob Clark at 2021-03-11T14:12:24-08:00
util/u_queue: Ensure num_cpu_mask_bits is valid

I noticed that we were hitting this before st_create_context() called
util_cpu_detect() and so num_cpu_mask_bits was zero.  But there is no
harm in calling util_cpu_detect(), so lets just call it here to be safe.

Fixes: d877451b48a ("util/u_queue: add 
UTIL_QUEUE_INIT_SET_FULL_THREAD_AFFINITY")
Signed-off-by: Rob Clark <robdcl...@chromium.org>
Reviewed-by: Marek Olšák <marek.ol...@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9266>
(cherry picked from commit 9fb9019bebe955ce0510799f02b0dddd6fe9efbe)

- - - - -
706c617e by Bas Nieuwenhuizen at 2021-03-11T14:12:24-08:00
radv: Expose robustBufferAccessUpdateAfterBind correctly.

We do support it.

Cc: mesa-stable
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/4351
Reviewed-by: Samuel Pitoiset <samuel.pitoi...@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9281>
(cherry picked from commit f67259d83bcc9b7775ca710fe9d6e75f00f08175)

- - - - -
e3e37ad4 by Bas Nieuwenhuizen at 2021-03-11T14:12:24-08:00
frontends/va: Use correct size for secondary planes.

And initialize the whandle format while at it.

Fixes: f7a4051b836 ("radeonsi: Check pitch and offset for validity.")
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/4126
Reviewed-by: Simon Ser <cont...@emersion.fr>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9236>
(cherry picked from commit f96a8c781968d7d5b869b5cb47470b4d91576edd)

- - - - -
29cf9f79 by Alyssa Rosenzweig at 2021-03-11T14:12:24-08:00
panfrost/lcra: Fix constraint counting

We need to iterate the whole row, we can't be clever and only look at
one side, the symmetry doesn't work like that. See the original paper..

total instructions in shared programs: 69392 -> 69322 (-0.10%)
instructions in affected programs: 9002 -> 8932 (-0.78%)
helped: 82
HURT: 28
Instructions are helped.

total bundles in shared programs: 32225 -> 32155 (-0.22%)
bundles in affected programs: 4286 -> 4216 (-1.63%)
helped: 82
HURT: 28
Bundles are helped.

total quadwords in shared programs: 56102 -> 56102 (0.00%)
quadwords in affected programs: 0 -> 0
helped: 0
HURT: 0

total registers in shared programs: 4552 -> 4572 (0.44%)
registers in affected programs: 298 -> 318 (6.71%)
helped: 18
HURT: 38
Registers are HURT.

total threads in shared programs: 3772 -> 3775 (0.08%)
threads in affected programs: 84 -> 87 (3.57%)
helped: 15
HURT: 14
Inconclusive result (value mean confidence interval includes 0).

total spills in shared programs: 0 -> 0
spills in affected programs: 0 -> 0
helped: 0
HURT: 0

total fills in shared programs: 0 -> 0
fills in affected programs: 0 -> 0
helped: 0
HURT: 0

Fixes: 66ad64d73d2 ("pan/midgard: Implement linearly-constrained register 
allocation")
Signed-off-by: Alyssa Rosenzweig <aly...@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9338>
(cherry picked from commit 4f969d796d6f8dbd3bc96d518d5f6d268b4a2d56)

- - - - -
34d36b5b by Mike Blumenkrantz at 2021-03-11T14:12:24-08:00
mesa/st: clamp scissored clear regions to fb size

these should never be larger than the fb and drivers shouldn't have to
care about it

Fixes: 1c8bcad81a7 ("gallium: add pipe cap for scissored clears and pass 
scissor state to clear() hook")

Reviewed-by: Dave Airlie <airl...@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9344>
(cherry picked from commit c5e72eb09daba7a087006f6ade691798f759a23c)

- - - - -
185b9f7c by Kenneth Graunke at 2021-03-11T14:12:24-08:00
glsl/float64: Bump #version to 400

An earlier commit tried to make this shader compatible with GLSL 3.30,
but it requires, GL_ARB_gpu_shader_int64, which requires GLSL 4.00 and
GL 4.0 according to the extension spec.  So we were failing to enable
the required extension, breaking compilation of this shader.

The original intention of that patch was to get this working on zink,
which at the time only supported GL 3.3.  But now it supports later
OpenGL versions, so we don't need to do this any longer.  Rather than
revert the patch and raise the version all the way back to 430, just
bump it to the require 400 at Ian Romanick's suggestion.

Fixes: 4d47b22bf00 ("glsl/float64: make this compatible with glsl 
330")
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/3991
Reviewed-by: Ian Romanick <ian.d.roman...@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9351>
(cherry picked from commit a48151ffada15ebc81a8a4dee935afae7e09fefc)

- - - - -
0a3adff7 by Rhys Perry at 2021-03-11T14:12:24-08:00
aco: add missing usable_read2 check

A Hitman 2 shader does: read64(local_invocation_index() * 4 - 4). This was
likely emitting a ds_read2_b32 on GFX6. For local_invocation_index()=0,
because the first dword was out-of-bounds, the second was likely also
considered out-of-bounds (even though it's not, at offset 0).

Likely fixes https://gitlab.freedesktop.org/mesa/mesa/-/issues/3882

Signed-off-by: Rhys Perry <pendingchao...@gmail.com>
Reviewed-by: Daniel Schürmann <dan...@schuermann.dev>
Fixes: 57e6886f981 ("aco: refactor load_lds to use new helpers")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9332>
(cherry picked from commit 3a72044ece27f6a06d7819bcd6ba3fcc2f786d0c)

- - - - -
089c01ff by Rhys Perry at 2021-03-11T14:12:24-08:00
nir/opt_shrink_vectors: add option to skip shrinking image stores

Some games declare the wrong format, so we might want to disable this
optimization in that case.

Signed-off-by: Rhys Perry <pendingchao...@gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoi...@gmail.com>
Fixes: e4d75c22 ("nir/opt_shrink_vectors: shrink image stores using the 
format")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9229>
(cherry picked from commit cbb5ed476ccd674d25c9d961230a1a57965524ac)

- - - - -
43bb5f81 by Rhys Perry at 2021-03-11T14:12:24-08:00
radv: don't shrink image stores for The Surge 2

The game seems to declare the wrong format.

Signed-off-by: Rhys Perry <pendingchao...@gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoi...@gmail.com>
Fixes: e4d75c22 ("nir/opt_shrink_vectors: shrink image stores using the 
format")
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/4347
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9229>
(cherry picked from commit 21697082ec92c7c83d03d9dc42c938d3b5f483c3)

- - - - -
b742fbae by Dave Airlie at 2021-03-11T14:12:24-08:00
lavapipe: fix pipeline vp/scissor mixup.

Not copying all the scissors caused
dEQP-VK.pipeline.extended_dynamic_state.two_draws_dynamic.2_viewports
to fail but thah test pointlessly relies on KHR_multiview (cts issue
filed).

Reviewed-By: Mike Blumenkrantz <michael.blumenkra...@gmail.com>
Fixes: b38879f8c5f57 ("vallium: initial import of the vulkan 
frontend")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9422>
(cherry picked from commit 6bcd3042781d0ff51d03b77acace0f714a4ffb42)

- - - - -
08f9f29d by Rhys Perry at 2021-03-11T14:12:24-08:00
radv: don't set sx_blend_opt_epsilon for V_028C70_COLOR_10_11_11

Matches radeonsi and PAL. From PAL:
// 1 is recommended, but doesn't provide sufficient precision

Signed-off-by: Rhys Perry <pendingchao...@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <b...@basnieuwenhuizen.nl>
Reviewed-by: Samuel Pitoiset <samuel.pitoi...@gmail.com>
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/4394
Fixes: ed946381564 ("radv: Enable RB+ where possible.")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9427>
(cherry picked from commit 524848707b4f2635a64b42bff1e530f0d6e0c0cd)

- - - - -
0a0e9d0d by Pierre-Eric Pelloux-Prayer at 2021-03-11T14:12:24-08:00
radeonsi: properly set SPI_SHADER_PGM_HI_ES

When not using S_00B324_MEM_BASE the value isn't properly truncated.

Cc: mesa-stable
Reviewed-by: Marek Olšák <marek.ol...@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9277>
(cherry picked from commit 0e97d817f520653548f1dee1db28bd2d92d28027)

- - - - -
5b6b1452 by Eric Anholt at 2021-03-11T14:12:24-08:00
r300,i915g: Report no shader buffers or images on non-TCL HW.

We don't have the driver hooks to set the state, or to update draw's 
copy
of the state at draw time.

Reviewed-by: Adam Jackson <a...@redhat.com>
Fixes: d6fd7acf9b79 ("gallium: Fix leak of bound SSBOs at CSO context
destruction.")

Closes: #3990
(cherry picked from commit 58e43594fc457eaaf1b1e01e48948959a82080bc)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8970>

- - - - -
dcfff5cc by Hoe Hao Cheng at 2021-03-11T14:12:24-08:00
zink: VK_KHR_draw_indirect_count is a device extension

this fixes some testcases on CI.

Fixes: 1c01ad1b804 ("zink: add KHR_draw_indirect_count detection")
Reviewed-By: Mike Blumenkrantz <michael.blumenkra...@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9504>

- - - - -
5d313fb5 by Mike Blumenkrantz at 2021-03-11T14:12:24-08:00
zink: unset generated TCS if its parent TESS is unset

ensure this doesn't get pulled in during the next program update

Fixes: 334759d8509 ("zink: implement passthrough tcs shader 
injection")

Reviewed-by: Hoe Hao Cheng <haochengho12...@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9504>

- - - - -
990e7373 by Adam Jackson at 2021-03-11T14:12:24-08:00
zink: Fix a thinko in instance setup

It really does help to size these arrays correctly.

Fixes: 2b4fcf0a063 zink: generate instance creation code with a python script
Reviewed-By: Mike Blumenkrantz <michael.blumenkra...@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9504>

- - - - -
3aadb497 by Rhys Perry at 2021-03-11T14:12:24-08:00
aco: calculate all p_as_uniform and v_readfirstlane_b32 sources in WQM

We should avoid a situation where a v_readfirstlane_b32 is in WQM but it's
source is calculated in Exact.

Fixes hang when running Assassin's Creed: Valhalla benchmark.

fossil-db (GFX10.3):
Totals from 1021 (0.70% of 146267) affected shaders:
CodeSize: 7835228 -> 7842992 (+0.10%); split: -0.00%, +0.10%
Instrs: 1519208 -> 1521149 (+0.13%); split: -0.00%, +0.13%
SClause: 78921 -> 78920 (-0.00%)
Copies: 44456 -> 45421 (+2.17%); split: -0.05%, +2.22%
Branches: 12987 -> 13933 (+7.28%)
PreSGPRs: 47599 -> 47813 (+0.45%)
Cycles: 10037540 -> 10045304 (+0.08%); split: -0.00%, +0.08%
VMEM: 538381 -> 538777 (+0.07%); split: +0.11%, -0.03%
SMEM: 84553 -> 84554 (+0.00%); split: +0.01%, -0.01%

Signed-off-by: Rhys Perry <pendingchao...@gmail.com>
Reviewed-by: Daniel Schürmann <dan...@schuermann.dev>
Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9503>

- - - - -
014ee754 by Dylan Baker at 2021-03-11T14:12:24-08:00
.pick_status.json: Update to 6ceb6b509e64c54812a5f6a208e7d93cc61119f4

- - - - -
1b5d36c4 by Icecream95 at 2021-03-11T14:12:24-08:00
st/mesa: Update constants on alpha test change if it's lowered

nir_lower_alpha_test creates a uniform for the alpha reference value;
this needs to be updated when changing alpha test state.

Fixes: b1c4c4c7f53 ("mesa/gallium: automatically lower alpha-testing")
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/4390
Reviewed-by: Marek Olšák <marek.ol...@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9439>
(cherry picked from commit efd7711e0e140c75f3624997f91f46008a39c325)

- - - - -
6e0e468c by Karol Herbst at 2021-03-11T14:12:24-08:00
tegra/context: fix regression in tegra_draw_vbo

We should only pass in a new indirect_info object if we actually set valid
values in it.

Fixes: abe8ef862fe5 "gallium: make pipe_draw_indirect_info * a draw_vbo 
parameter"
Signed-off-by: Karol Herbst <kher...@redhat.com>
Reviewed-by: Ilia Mirkin <imir...@alum.mit.edu>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9425>
(cherry picked from commit a84c8ddb19beef7580d6a4b8c417bb188517412a)

- - - - -
5478ccf9 by Karol Herbst at 2021-03-11T14:12:24-08:00
tegra/context: unwrap indirect_draw_count as well

Fixes: 22f6624ed318 "gallium: separate indirect stuff from pipe_draw_info 
- 80 -> 56 bytes"
Signed-off-by: Karol Herbst <kher...@redhat.com>
Reviewed-by: Ilia Mirkin <imir...@alum.mit.edu>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9425>
(cherry picked from commit 12f1e42ed34e9807484bdfbec535bc56950e2338)

- - - - -
c83b17ba by Tony Wasserka at 2021-03-11T14:12:24-08:00
aco: Fix vector::reserve() being called with the wrong size

The container is moved from before and hence returns size 0. To get the
correct value, the new instruction container must be used instead.

This was flagged by clang-tidy. The fixed call still triggers the
corresponding diagnostic, hence this change silences it by adding a
redundant clear() after move.

Fixes: 7f1b537304d ("aco: add new NOP insertion pass for GFX6-9")
Reviewed-by: Rhys Perry <pendingchao...@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9432>
(cherry picked from commit 97c97781f6a94e5c8209266ec996fe6caff04dff)

- - - - -
433bf80d by Mike Blumenkrantz at 2021-03-11T14:12:24-08:00
zink: fix streamout emission for super-enhanced layouts

if we get some crazy matrix types in here then we need to ensure that
we accurately unwrap them and copy the components

fixes KHR-GL46.enhanced_layouts.xfb_stride

Fixes: 1b130c42b8d ("zink: implement streamout and xfb handling in 
ntv")

Reviewed-by: Dave Airlie <airl...@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9271>
(cherry picked from commit 1b25e3a7019ca529c2ab665a35e06f21ec4b4ebb)

- - - - -
5db0651b by Georg Lehmann at 2021-03-11T14:12:24-08:00
vulkan/device_select: Only call vkGetPhysicalDeviceProperties2 if the device 
supports it.

vkGetPhysicalDeviceProperties2 is not allowed to be used with a 1.0 device
because it's  a vulkan 1.1 function.

Closes: #4396
Fixes: 38ce8d4d ("vulkan/device_select: Stop using device properties 
2.")
Reviewed-by: Bas Nieuwenhuizen <b...@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9462>
(cherry picked from commit fb1100d718fbee07dc294e1ede20a084cda423b9)

- - - - -
4f5d6faa by Matt Turner at 2021-03-11T14:12:24-08:00
turnip: Remove unused TU_DEBUG_IR3 flag

Replaced by IR3_SHADER_DEBUG=disasm,{vs,...,cs} and unused since the
commit referenced below.

Fixes: 808992fc506 ("tu: Use the ir3 shader API")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8249>
(cherry picked from commit 6ceb6b509e64c54812a5f6a208e7d93cc61119f4)

- - - - -
fa341ba6 by Dylan Baker at 2021-03-11T14:12:24-08:00
.pick_status.json: Update to ea27f2bf092f462171fe14a44619565d14f43fb8

- - - - -
1a2e2e9d by Dylan Baker at 2021-03-11T14:12:24-08:00
.pick_status.json: Update to c22267262ee1b6817df368a51168fa82bd17293c

- - - - -
60de6382 by Dylan Baker at 2021-03-11T14:12:24-08:00
.pick_status.json: Mark 04df0cb4ae7055b0a4a6dc9875aa5926131fe5f4 as backported

- - - - -
36ba85e5 by Dylan Baker at 2021-03-11T14:12:24-08:00
.pick_status.json: Mark 942ba4e34124d1058492f544dc8fd42f4012fd12 as backported

- - - - -
92632cfd by Dylan Baker at 2021-03-11T14:12:24-08:00
.pick_status.json: Mark ea27f2bf092f462171fe14a44619565d14f43fb8 as backported

- - - - -
ae18dd08 by Dylan Baker at 2021-03-11T14:12:24-08:00
.pick_status.json: Mark 5f1b3544729178715a1ed0714bd1029737089824 as backported

- - - - -
c52f98e6 by Pierre-Eric Pelloux-Prayer at 2021-03-11T14:12:24-08:00
radeonsi: fix read from compute / write from draw sync

A compute dispatch should see the result of a previous draw command.
radeonsi was missing this implicit sync, causing rendering artifacts:
the compute shader was reading from a texture still being written to
by the previous draw.

Framebuffer BOs are marked with RADEON_USAGE_NEEDS_IMPLICIT_SYNC,
so compute jobs will sync.

v2: use RADEON_USAGE_NEEDS_IMPLICIT_SYNC
v3: unconditionally make CB coherent after a flush

Reviewed-by: Zoltán Böszörményi <zbos...@gmail.com> (v3)
Reviewed-by: Marek Olšák <marek.ol...@amd.com> (v3)
Cc: mesa-stable
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/4032
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/2878
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/1336
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9525>

- - - - -
992d2a6c by Pierre-Eric Pelloux-Prayer at 2021-03-11T14:12:24-08:00
radeonsi: fix si_check_render_feedback

si_check_render_feedback only relied on si_images::enabled_mask and
si_samplers::enabled_mask to determine if a texture was being used
both as input and output.

Given that some samplers/images can be considered active (so accounted
for by enabled_mask) but not used by the current shader this could
lead to false-positive.

This commit fixes this by and-ing the above mask with the information
from shader_info for each active shader.

Reviewed-by: Zoltán Böszörményi <zbos...@gmail.com>
Reviewed-by: Marek Olšák <marek.ol...@amd.com>
Cc: mesa-stable
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/4227
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9525>

- - - - -
7e55bddf by Marek Olšák at 2021-03-11T14:12:24-08:00
radeonsi: don't crash on NULL images in si_check_needs_implicit_sync

This fixes CTS test: KHR-GL46.arrays_of_arrays_gl.AtomicUsage

Fixes: bddc0e023c "radeonsi: fix read from compute / write from draw 
sync"

Reviewed-by: Pierre-Eric Pelloux-Prayer 
<pierre-eric.pelloux-pra...@amd.com>
Reviewed-by: Zoltán Böszörményi <zbos...@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9525>

- - - - -
ba130017 by Dylan Baker at 2021-03-11T16:07:38-08:00
docs: add release notes for 21.0.0

- - - - -
1896a067 by Dylan Baker at 2021-03-11T16:07:38-08:00
VERSION: bump for 21.0 release

- - - - -


3 changed files:

- .gitlab-ci/traces-radeonsi.yml
- .pick_status.json
- VERSION


The diff was not included because it is too large.


View it on GitLab: 
https://salsa.debian.org/xorg-team/lib/mesa/-/compare/99ea47ad552c21893752ecaad686a9ced303fe47...1896a0674f4968bfbe85a67b7a62828d14331930

-- 
View it on GitLab: 
https://salsa.debian.org/xorg-team/lib/mesa/-/compare/99ea47ad552c21893752ecaad686a9ced303fe47...1896a0674f4968bfbe85a67b7a62828d14331930
You're receiving this email because of your account on salsa.debian.org.


Reply via email to