Lionel Landwerlin
8dd90997d7
anv: fix Wa_16013994831 macros
...
The commit that switched to the WA framework forgot to update one of
the ifdef section.
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Fixes: e6e320fc79 ("anv: make Wa_16013994831 to use intel_needs_workaround")
Reviewed-by: Tapani Pälli <tapani.palli@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27676 >
(cherry picked from commit 63676ed502 )
2024-02-25 16:58:15 +00:00
Lionel Landwerlin
71442fdd6f
anv: reenable ANV_ALWAYS_BINDLESS
...
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Cc: mesa-stable
Reviewed-by: Ivan Briano <ivan.briano@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27504 >
(cherry picked from commit 27a7c5447d )
2024-02-25 16:57:56 +00:00
Lionel Landwerlin
2128a8a07b
anv: fixup push descriptor shader analysis
...
There are a couple mistakes here :
- using a bitfield as an index to generate a bitfield...
- in anv_nir_push_desc_ubo_fully_promoted(), confusing binding
table access of the descriptor buffer with actual descriptors
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Fixes: ff91c5ca42 ("anv: add analysis for push descriptor uses and store it in shader cache")
Reviewed-by: Ivan Briano <ivan.briano@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27504 >
(cherry picked from commit cf193af762 )
2024-02-25 16:52:51 +00:00
Mike Blumenkrantz
e814fc81b0
mesa: check driver format support for certain GetInternalformativ queries
...
according to spec, these should return NONE if the format is
not supported for a given texture target, but mesa was incorrectly
returning a hardcoded value for all cases without checking the driver
instead, check whether the driver can create a texture for a given
format to correctly handle this non-support case
cc: mesa-stable
Reviewed-by: Jesse Natalie <jenatali@microsoft.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27621 >
(cherry picked from commit 893780b362 )
2024-02-25 16:52:50 +00:00
Chia-I Wu
c126631fe7
radv: fix pipeline stats mask
...
Left-shifting by 11*8 or 14*8 is undefined. This fixes many
dEQP-VK.query_pool.statistics_query.* failures (but not pre-existing
flakes) for release builds using clang.
Fixes: 48aabaf225 ("radv: do not harcode the pipeline stats mask for query resolves")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27651 >
(cherry picked from commit ec5d0ffb04 )
2024-02-25 16:52:47 +00:00
Boyuan Zhang
519c96f3c8
radeonsi/vcn: only use multi slices reflist when available
...
Some frontends interface doesn't provide ref pic lists for HEVC. Therefore
ONLY enabling multislices reflist for frontends that support direct ref pic
list by checking the flag.
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/10599
Cc: mesa-stable
Signed-off-by: Boyuan Zhang <boyuan.zhang@amd.com >
Reviewed-by: Leo Liu <leo.liu@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27642 >
(cherry picked from commit 0db2d13af1 )
2024-02-25 16:52:46 +00:00
Karol Herbst
a85301784d
rusticl/program: fix CL_PROGRAM_BINARIES for devs with no builds
...
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/10611
Fixes: e028baa177 ("rusticl/program: implement clCreateProgramWithBinary")
Signed-off-by: Karol Herbst <kherbst@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27633 >
(cherry picked from commit a4f77ce2d4 )
2024-02-25 16:51:58 +00:00
Samuel Pitoiset
8a338675c6
radv: enable GS_FAST_LAUNCH=2 by default for RDNA3 APUs (Phoenix)
...
GS_FAST_LAUNCH=1 shouldn't be used on GFX11 but it's still needed for
dGPUs (eg. NAVI31) because it destroys performance for unknown reasons.
On RDNA3 APUs, GS_FAST_LAUNCH=2 seems to be required for working
mesh shaders and performance is fine. There is possibly a firmware bug
on APUs that would explain why GS_FAST_LAUNCH=1 doesn't work on Phoenix.
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/10583
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/10397
Cc: mesa-stable
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27618 >
(cherry picked from commit 6894692d27 )
2024-02-25 16:51:25 +00:00
Pavel Ondračka
abd5842ed7
r300: add explicit flrp lowering
...
Even though we set .lower_flrp32 = true there is no actuall flrp
lowering in nir_opt_algebraic. Mesa does not produce any but nine does,
so lower it explicitly to fix nine.
Fixes: f8a5cba3b4
Signed-off-by: Pavel Ondračka <pavel.ondracka@gmail.com >
Reviewed-by: Filip Gawin <filip.gawin@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27467 >
(cherry picked from commit d78a913bda )
2024-02-25 16:48:41 +00:00
Hans-Kristian Arntzen
f36d69d1d6
radv: export multiview in VS/TES/GS for depth-only rendering
...
For depth-only rendering, a VS would not export layer properly.
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no >
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/10606
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27615 >
(cherry picked from commit 786c1b8322 )
2024-02-25 16:48:19 +00:00
Karol Herbst
2166ee5c2e
zink: lower unaligned memory accesses
...
Fixes `vload_half` in OpenCL
Fixes: 0288cb0a0c ("zink: lower vec8/16")
Signed-off-by: Karol Herbst <kherbst@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27754 >
(cherry picked from commit 2b9c0e3768 )
2024-02-25 14:14:14 +00:00
Mike Blumenkrantz
3794d15e61
zink: don't destroy the current batch state on context destroy
...
these are owned by the screen now
should fix some flakiness with shared contexts
Fixes: b06f6e00fb ("zink: fix heap-use-after-free on batch_state with sub-allocated pipe_resources")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27749 >
(cherry picked from commit dfe331930c )
2024-02-25 14:14:14 +00:00
Mike Blumenkrantz
40c72e73e7
zink: handle stencil_fallback in zink_clear_depth_stencil
...
ctx->blitting will already be set at this point, meaning the flag
should not be modified and no barriers are required
fixes stencil blitting on nvk
cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27735 >
(cherry picked from commit ac45d893d6 )
2024-02-25 14:14:09 +00:00
Mike Blumenkrantz
7426889729
zink: force host-visible allocations for MAP_COHERENT resources
...
this fixes persistent maps for systems without any BAR
cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27707 >
(cherry picked from commit ccbf9b0ea7 )
2024-02-25 14:13:08 +00:00
Mike Blumenkrantz
0738409dc7
zink: add a second fence disambiguation case
...
this is the case where:
* a batch A is submitted
* a no-op flush occurs
* the frontend gets the fence from already-flushed batch A
* zink recycles batch A
* the frontend waits on fence A
fixes #10598
cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27623 >
(cherry picked from commit fb2ae7736f )
2024-02-25 14:11:28 +00:00
Mike Blumenkrantz
cd582fa016
zink: add checks/compat for low-spec descriptor buffer implementations
...
for implementations that can only support 1 descriptor buffer:
* prefer templates
* allow db if explicitly requested, but disable bindless (for testing)
fix #10640
Fixes: b8b51d96b0 ("zink: delete maxDescriptorBufferBindings checks")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27696 >
(cherry picked from commit 83d1241cf5 )
2024-02-25 14:11:27 +00:00
Mike Blumenkrantz
4d87eb83da
zink: avoid infinite recursion on (very) small BAR systems in bo alloc
...
this should only try a full reclaim if possible, not unconditionally
cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27606 >
(cherry picked from commit c6635c09d0 )
2024-02-25 14:11:24 +00:00
Mike Blumenkrantz
e730b1b62b
zink: delete maxDescriptorBufferBindings checks
...
only one descriptor buffer is used now
Fixes: 13c6ad0038 ("zink: use a single descriptor buffer for all non-bindless types")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27685 >
(cherry picked from commit b8b51d96b0 )
2024-02-25 14:11:24 +00:00
Mike Blumenkrantz
b9def8ca05
zink: don't add VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT for sparse textures
...
according to VUID-VkImageCreateInfo-flags-09403, this is illegal
cc: mesa-stable
Reviewed-by: Dave Airlie <airlied@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27358 >
(cherry picked from commit 4c08db5501 )
2024-02-25 14:11:17 +00:00
Mike Blumenkrantz
3c1a634e7e
zink: promote gpl libs freeing during shader destroy out of prog loop
...
now that zink_gfx_lib_cache::stages_present exists (and is correct),
this value can be used directly to effect cache eviction instead of depending
on the prog->stages_present value, which may not even be the same prog that
owns a given zink_gfx_lib_cache instance
this fixes the case where a shader used in multiple progs with differing shader
masks would never have all its gpl pipelines freed
fixes leaks with caselist:
KHR-Single-GL46.arrays_of_arrays_gl.InteractionUniformBuffers1
KHR-Single-GL46.subgroups.quad.framebuffer.subgroupquadbroadcast_3_float_vertex
Fixes: d786f52f1f ("zink: prevent crash when freeing")
Reviewed-by: Dave Airlie <airlied@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27358 >
(cherry picked from commit e8ce53a33d )
2024-02-25 14:11:16 +00:00
Mike Blumenkrantz
10eb12968b
zink: clamp zink_gfx_lib_cache::stages_present for generated tcs
...
this otherwise does not reflect reality
Fixes: d786f52f1f ("zink: prevent crash when freeing")
Reviewed-by: Dave Airlie <airlied@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27358 >
(cherry picked from commit 36e7350e0b )
2024-02-25 14:11:15 +00:00
Konstantin Seurer
a9c5611b49
Revert "zink: always force flushes when originating from api frontend"
...
This reverts commit 03f049f497 .
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27560 >
(cherry picked from commit 097e543c0a )
2024-02-25 14:10:38 +00:00
Konstantin Seurer
1528c6f524
zink: Always set mfence->submit_count to the fence submit_count
...
Fixes glFinish not finishing all GPU work.
cc: mesa-stable
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/8257
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27560 >
(cherry picked from commit aed5e4e1f2 )
2024-02-25 14:09:32 +00:00
Mike Blumenkrantz
25d2384e10
zink: adjust swizzled deref loads by the variable component offset
...
this code is intended to transform a block like:
```
32 %306 = @load_interpolated_input (%34, %0 (0x0)) (base=3, component=2, dest_type=float32, io location=VARYING_SLOT_VAR3 slots=1)
32x2 %307 = fsub %305, %306.xx
```
into derefs. the existing code generates this:
```
decl_var shader_in INTERP_MODE_NONE none vec2 #7 (VARYING_SLOT_VAR3.zw, 0, 0)
32 %516 = deref_var  (shader_in vec2)
32x2 %517 = @load_deref (%516) (access=none)
32 %518 = mov %517.z
error: src->swizzle[i] < num_components (../src/compiler/nir/nir_validate.c:216)
```
the problem is attempting to reapply the component offset to a variable which is
already at an offset
fixes #10567
Fixes: 17a35412dc ("zink: re-rework i/o variable handling to make having variables entirely optional")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27522 >
(cherry picked from commit 0a243a7241 )
2024-02-25 14:09:29 +00:00
Mike Blumenkrantz
3120d28d2d
zink: run sparse lowering after all optimization passes
...
some passes (e.g., opt_shrink_vector) operate on the assumption that
sparse tex ops have a certain number of components and then remove components
and unset the sparse flag if they can optimize out the sparse usage
zink's sparse ops do not have the standard number of components, which
causes such passes to make incorrect assumptions and tag them as
not being sparse, which breaks everything
fix #10540
Fixes: 0d652c0c8d ("zink: shrink vectors during optimization")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27414 >
(cherry picked from commit 2085d60438 )
2024-02-25 14:09:28 +00:00
Mike Blumenkrantz
7a0833e335
zink: move sparse lowering up in file
...
no functional changes
Fixes: 0d652c0c8d ("zink: shrink vectors during optimization")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27414 >
(cherry picked from commit 6a8cd7a64f )
2024-02-25 14:09:28 +00:00
Mike Blumenkrantz
974829185e
zink: zero allocate resident_defs array in ntv
...
this makes assert(def!=0) more reliable
Fixes: 73ef54e342 ("zink: handle residency return value from sparse texture instructions")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27414 >
(cherry picked from commit aacc4e1c68 )
2024-02-25 14:09:27 +00:00
Mike Blumenkrantz
5da667ad3e
zink: fix sparse bo placement
...
the util function here takes a bitmask of memory type indices, not properties.
rename the function and correct the usage
fixes sparse on nvidia blob
Fixes: c71287e70c ("zink: correct sparse bo mem_type_idx placement")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27414 >
(cherry picked from commit 3b025d6b42 )
2024-02-25 14:09:25 +00:00
Mike Blumenkrantz
1933436ada
zink: prune dmabuf export tracking when adding resource binds
...
this avoids invalid access for the stack resource in add_resource_bind()
when adding a new bind to an exportable resource
cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27395 >
(cherry picked from commit 7b7a581a52 )
2024-02-25 14:08:48 +00:00
Yiwei Zhang
3ba68813f2
venus: fix the cmd stride used for qfb recording
...
Not a real issue since the dispatchable handle size is the same.
Fixes: d2a626787e ("venus: track/recycle appended query feedback cmds")
Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27649 >
(cherry picked from commit 55224006b7 )
2024-02-25 13:54:25 +00:00
Juston Li
be7a46c3c5
venus: fix image reqs cache store locking
...
lock the entire scope when storing image reqs cache entry to prevent
entry being added between the split locks.
Fixes: b51ff22fbe ("venus: support caching image memory requirements")
Signed-off-by: Juston Li <justonli@google.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27401 >
(cherry picked from commit f3de6f17c1 )
2024-02-25 13:54:25 +00:00
Yiwei Zhang
000135abe1
venus: force async pipeline create on threads creating descriptor pools
...
This works around some Unity engine behaivor with ANGLE-on-Venus, when
cmd pools are created on main thread once while the render thread only
does descriptor pool creation for set allocations during recording time.
This change also explicitly forces async pipeline create for threads
creating the device instead of implicitly via feedback cmd pool create.
This ensures intended behavior when feedback is disabled.
Fixes: d17ddcc847 ("venus: dispatch background shader tasks to secondary ring")
Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27347 >
(cherry picked from commit 1718980e85 )
2024-02-25 13:54:25 +00:00
Eric Engestrom
c1b9d9118f
.pick_status.json: Update to 423add61e2
2024-02-25 11:40:30 +00:00
Jordan Justen
edf03628d7
intel/dev: Add 2 additional ADL-N PCI ids
...
Ref: https://patchwork.freedesktop.org/patch/578271/?series=129901&rev=1
Ref: bspec 68397
Cc: mesa-stable
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com >
Reviewed-by: Tapani Pälli <tapani.palli@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27625 >
(cherry picked from commit 62b72b6be9 )
2024-02-25 11:33:41 +00:00
Eric Engestrom
f32c100fcc
.pick_status.json: Mark 3b927567ac as denominated
2024-02-25 11:33:41 +00:00
Eric Engestrom
eb72574c8d
.pick_status.json: Update to c12300844d
2024-02-25 11:33:41 +00:00
Martin Roukala (né Peres)
ef8f54de13
radv/ci: switch vkcts-polaris10 from mupuf to KWS' farm
...
The DUT that currently hosts the Polaris10 will be used for NVK
testing, so let's move the polaris10 job to another farm.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27652 >
(cherry picked from commit dce2069054 )
2024-02-25 11:33:41 +00:00
Eric Engestrom
f43c8e6694
.pick_status.json: Update to dce2069054
2024-02-25 11:33:41 +00:00
thfrwn
e886ee02ed
mesa: fix off-by-one for newblock allocation in dlist_alloc
...
Cc: mesa-stable
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27556 >
(cherry picked from commit 460d2c46a9 )
2024-02-25 11:33:41 +00:00
Samuel Pitoiset
4c434ac992
radv: fix RGP barrier reason for RP barriers inserted by the runtime
...
Without that, RGP is confused and it's reporting CmdPipelineBarrier()
instead of CmdRenderPassSync().
Cc: mesa-stable
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27546 >
(cherry picked from commit b58de424f4 )
2024-02-25 11:33:40 +00:00
Lionel Landwerlin
be6a909520
vulkan/runtime: add helper to query attachment layout
...
The runtime is turning GENERAL layouts into FEEDBACK_LOOP ones when it
detects feedback loops in a render pass. This is breaking drivers that
would like to use a different HW layout for those 2 layouts because if
the application inserts barrier in the render pass, the barriers the
driver sees are inconsistent.
This could lead to barrier of this type :
- GENERAL -> FEEDBACK_LOOP (runtime)
- GENERAL -> GENERAL (app)
- FEEDBACK_LOOP -> GENERAL (runtime)
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Reviewed-by: Ivan Briano <ivan.briano@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23523 >
(cherry picked from commit 76cf391255 )
2024-02-25 11:33:40 +00:00
Eric Engestrom
f41b8b1323
.pick_status.json: Update to c6e855b64b
2024-02-25 11:33:40 +00:00
Daniel Schürmann
5c0de4ed9b
spirv: Fix SpvOpExpectKHR
...
This instruction behaves the same as *OpCopyObject* by making a copy of _Value_.
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com >
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com >
Reviewed-by: Caio Oliveira <caio.oliveira@intel.com >
(cherry picked from commit 5df7be8017 )
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27740 >
2024-02-25 10:11:58 +00:00
Jesse Natalie
9d42171013
dzn: Don't set view instancing mask until after the PSO
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27286 >
(cherry picked from commit fa1c9618f9 )
2024-02-24 18:27:57 +00:00
Eric Engestrom
19d0f2708f
[24.0-only change] ci: increase the kernel+rootfs builds timeout to 2h
...
Overkill but better than being prevented from accepting backport MRs
because Collabora deleted these files from the S3 bucket *yet again*...
2024-02-24 18:27:57 +00:00
Eric Engestrom
92cb6d5938
docs: add sha256sum for 24.0.1
2024-02-14 21:05:06 +00:00
Eric Engestrom
3e361635b8
VERSION: bump for 24.0.1
mesa-24.0.1
2024-02-14 20:55:00 +00:00
Eric Engestrom
68a46fd846
docs: add release notes for 24.0.1
2024-02-14 20:54:39 +00:00
Friedrich Vock
9b4abb2ed0
radv,driconf: Enable active AS leaf workaround for Jedi Survivor
...
Another game that can't get AS updates right.
Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27590 >
(cherry picked from commit afab80bdb6 )
2024-02-14 17:26:50 +00:00
Lionel Landwerlin
e4c2cbeb33
anv: fix buffer marker cache flush issues on MTL
...
For some yet unknown reason the CS L3 coherency setting is different
on MTL than DG2.
Fixes issues in tests from the subgroup :
dEQP-VK.api.buffer_marker.*
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Fixes: c8e122a738 ("anv: Implement rudimentary VK_AMD_buffer_marker support")
Reviewed-by: Tapani Pälli <tapani.palli@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27613 >
(cherry picked from commit e54638ddf5 )
2024-02-14 17:05:00 +00:00