Mark Collins
842011a4bd
tu: Clamp priority in DRM submitqueue creation
...
The kernel driver has a range of valid priority values that can
be supplied to it, submitting any priority value outside these
bounds will result in `-EINVAL`. To avoid this, the priority
value is now clamped to the range that the kernel supports.
Fixes: 0c6fbfca0c
Signed-off-by: Mark Collins <mark@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18389 >
(cherry picked from commit c82249aa68
)
2022-09-15 09:25:39 -07:00
Bas Nieuwenhuizen
26b95ed403
amd/common: Disable DCC retile modifiers on RDNA1
...
Some claims of corruption, modifier-less Mesa already doesn't do
it. Since these modifiers have no purpose besides being displayed
lets just disable in Mesa.
Cc: mesa-stable
Tested-by: Michel Dänzer <mdaenzer@redhat.com >
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18140 >
(cherry picked from commit ae7532e0cc
)
2022-09-15 09:25:39 -07:00
Bas Nieuwenhuizen
36ac6a48b9
amd/common: Don't rely on DCN support checks with modifiers.
...
Going to be a bad time if they disagree, which is bound to happen
sometimes. Not asserting and stuff tends to be a better experience
than crashing.
Cc: mesa-stable
Tested-by: Michel Dänzer <mdaenzer@redhat.com >
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18140 >
(cherry picked from commit af4b656817
)
2022-09-15 09:25:38 -07:00
Jordan Justen
314d56e9b8
intel/pci_ids: Drop non-upstream dg2 pci-ids
...
These pci-ids should be included in
https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14523 , since
these pci-ids will only be supported by kernels that support the
forked Linux uapi. (Note that !14523 will never be merged into
upstream Mesa.)
Ref: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/include/drm/i915_pciids.h?h=v6.0-rc3#n695
Fixes: 398a9be94b
("intel/dev: Enable remaining DG2 and ATS-M device IDs")
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18386 >
(cherry picked from commit b26980a4d4
)
2022-09-15 09:25:38 -07:00
Iván Briano
4b3daadae0
anv: pipelineStageCreationFeedbackCount is allowed to be 0
...
Fixes: 6601e5d6fc
("anv: implement VK_EXT_pipeline_creation_feedback")
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18451 >
(cherry picked from commit 92ee2e6b64
)
2022-09-15 09:25:37 -07:00
Erik Faye-Lund
cbcf1bb4d8
zink: clamp miplodbias when creating sampler
...
The Vulkan spec states that it's illegal to pass a mipLodBias larger
than maxSamplerLodBias, but the gallium value here hasn't been clamped.
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/7140
Cc: mesa-stable
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18295 >
(cherry picked from commit c551bb32d1
)
2022-09-15 09:25:34 -07:00
Max Kellermann
c916ec76ee
gallium/u_threaded: fix offset calculation for draw_multi slots
...
This fixes a buffer corruption bug with glMultiDrawElementsEXT(): the
offset for the source index buffer is reset for each draw_multi slot,
copying only the first `dr` values to each slot's index buffer.
Cc: mesa-stable
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18189 >
(cherry picked from commit b830091cb6
)
2022-09-15 09:25:32 -07:00
Max Kellermann
3ded967693
gallium/u_threaded: add missing reference counts for draw_multi slots
...
If a glMultiDrawElementsEXT() call doesn't fit into a single slot, the
same pipe_resource pointer is copied into all following slots, the
completion of each will decrement the reference counter; however, it
was never incremented for all but the first slot.
This fixes a use-after-free bug with glMultiDrawElementsEXT().
Cc: mesa-stable
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18189 >
(cherry picked from commit 0a0fb7cbc6
)
2022-09-15 09:25:31 -07:00
Alyssa Rosenzweig
609949fbcf
agx: Fix float copyprop of neg(neg) case
...
They should cancel each other. Fixes:
dEQP-GLES2.functional.shaders.random.basic_expression.combined.0
Fixes: 28801b4849
("agx: Add forward optimizing pass for fmov")
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18380 >
(cherry picked from commit 095415cdf7
)
2022-09-14 20:55:18 -07:00
Jason Ekstrand
f0193e09e1
vulkan: Dirty VP_VIEWPORTS/SCISSORS when copying viewports/scissors
...
The only reason why we didn't notice before is because ANV always
re-emits all scissors and viewports if the count changes.
Fixes: fcedb1250b
("vulkan: Add a common data structure for dynamic states")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18160 >
(cherry picked from commit 6ffbb1abdb
)
2022-09-14 20:55:17 -07:00
Alyssa Rosenzweig
1959ee0183
pan/bi: Consider all dests in helper_block_update
...
If an instruction has multiple destinations and *any* of them are needed by
helper invocations, we should keep helper invocations alive. This is a bug fix.
Consider the GLSL:
first = texture(sampler, ...);
float res = texture(sampler, vec2(first.y)).x + first.x;
Corresponding to the IR:
first = ...
x, y, z, w = SPLIT first
second = TEX y, y
x', y', z', w' = SPLIT second
FADD res, x, x'
Here, x is not required by helper invocations (the coordinates to TEX) while y
is required. If we only look at only the first destinations, we incorrectly
decide that first is not required and fail to set the .skip bit, leading to
incorrect results.
Fixes: 5febeae58e
("pan/bi: Emit collect and split")
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17794 >
(cherry picked from commit d0aaf52602
)
2022-09-14 20:55:17 -07:00
Alyssa Rosenzweig
7d81b290d4
pan/bi: Fix out-of-bounds write in va_lower_split_64bit
...
...with dual source blending. Fixes shaders/dolphin/smg.1.shader_test
There are more IR sources than Valhall machine sources here.
Fixes: b48933d641
("pan/va: Include BLEND for va_swap_12")
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17794 >
(cherry picked from commit b5a6375f54
)
2022-09-14 20:55:16 -07:00
Mike Blumenkrantz
4022487538
llvmpipe: don't assume pipe_context is always available in flush_frontbuffer
...
Fixes: 91dcadf956
("llvmpipe: finish rendering before flushing frontbuffer resources.")
Reviewed-by: Jose Fonseca <jfonseca@vmware.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18392 >
(cherry picked from commit 7437c8f7d5
)
2022-09-14 20:55:16 -07:00
Alyssa Rosenzweig
9146b229fc
pan/bi: Fix dual texturing with uniforms
...
The GLSL code sequence:
texture2D(tex0, u_coords) + texture2D(tex1, u_coords)
will be optimized to
TEXC_DUAL tex0/tex1, u_coords, #texture_descriptor
If this optimization happens after lowering FAU, the resulting TEXC instruction
is unschedulable: both the uniform and the constant descriptor fight for the
same FAU slot.
However, if this optimization happens before lowering FAU, then the FAU lowering
will move the descriptor into a register, complicating the dual texturing fixup
in RA.
To fix this interaction, fuse dual texturing before lowering FAU and keep
texture descriptors as constants when lowering FAU of TEXC.
Fixes scheduling failure in piglit drawoverhead -test 3 with uniform reordering.
Fixes: a4d3a29647
("pan/bi: Enable dual texture fusing pass")
Fixes: 6b2eda6b72
("pan/bi: Reorder pushed uniforms to avoid moves")
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18378 >
(cherry picked from commit c5b9a01fea
)
2022-09-14 20:55:15 -07:00
Jordan Justen
dd6e95ad82
intel/pci_ids: Add dg2 0x5698 pci-id
...
This motherboard-down pci-id was added in kernel commit 8618b8489ba6
("drm/i915: DG2 and ATS-M device ID updates").
Ref: bspec 44477
Ref: https://patchwork.freedesktop.org/patch/msgid/20220701152231.529511-2-matthew.d.roper@intel.com
Fixes: ad565f6b70
("intel/dev: Enable first set of DG2 PCI IDs")
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18385 >
(cherry picked from commit 65c9a810ee
)
2022-09-14 20:55:15 -07:00
Jordan Justen
ca7c6dffd9
intel/pci_ids: Update DG2 device names
...
Ref: bspec 44477
Ref: https://www.intel.com/content/www/us/en/products/details/discrete-gpus/arc/arc-a-series.html
Cc: mesa-stable
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com >
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18303 >
(cherry picked from commit 91fec2657a
)
2022-09-14 20:55:14 -07:00
Jordan Justen
47aff2759f
intel/pci_ids: Update ATS-M device names
...
Ref: bspec 44477
Ref: https://www.intel.com/content/www/us/en/products/details/discrete-gpus/data-center-gpu/flex-series/products.html
Cc: mesa-stable
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com >
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18303 >
(cherry picked from commit 9283ffec14
)
2022-09-14 20:55:14 -07:00
pal1000
49fdd260a2
meson: Only draw with llvm depends on native directly
...
Tests, softpipe or AMD drivers don't depend on it directly
Fixes: 3955dd07
("meson/gallium: Add an option to not use LLVM for gallium draw module")
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/6817
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com >
Tested-by: Erik Faye-Lund <erik.faye-lund@collabora.com >
Reviewed-by: Jesse Natalie <jenatali@microsoft.com >
Reviewed-by: Yonggang Luo <luoyonggang@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17675 >
(cherry picked from commit f23dbcd642
)
2022-09-14 20:55:13 -07:00
Mike Blumenkrantz
0b081167b2
zink: don't emit illegal interpolation
...
this is not valid for vertex inputs or fragment outputs
cc: mesa-stable
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com >
Reviewed-by: Emma Anholt <emma@anholt.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18365 >
(cherry picked from commit da1a3ed2ea
)
2022-09-14 20:55:12 -07:00
Mike Blumenkrantz
c3cccad441
zink: only add srgb mutable for images with modifiers
...
these are supposed to be for dmabuf handling, so checking for mutable
swapchain is both pointless and wrong
Fixes: 28ee911ad6
("zink: handle mutable swapchain images with dmabuf")
Reviewed-by: Emma Anholt <emma@anholt.net >
Reviewed-by: Dave Airlie <airlied@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18358 >
(cherry picked from commit cd00a36d47
)
2022-09-14 20:55:12 -07:00
Mike Blumenkrantz
b5917e15f7
zink: explicitly use unsigned types for bit shifts
...
fixes some ubsan errors
cc: mesa-stable
Reviewed-by: Dave Airlie <airlied@redhat.com >
Reviewed-by: Emma Anholt <emma@anholt.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18358 >
(cherry picked from commit d9b8f8d46c
)
2022-09-14 15:43:46 -07:00
Emma Anholt
de8ec9b17a
spirv: Mark phis as mediump instead of directly lowering them to 16 bit.
...
This reverts commit 6f25d45877
, replacing it
with GLSL_PRECISION_MEDIUM. The previous commit ended up not being the
right approach, as it affected only nir vars for spirv phis and not other
nir vars, and we want a tool that does both. The new
nir_lower_mediump_vars pass can do that for you.
No fossil-db change for my angle fossils run on radv.
Reviewed-by: Matt Turner <mattst88@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18259 >
(cherry picked from commit e1588cdf9e
)
2022-09-14 15:43:46 -07:00
Mike Blumenkrantz
9b94b96829
zink: check the variable mode before taking samplemask path in ntv
...
this otherwise may break for function temps
cc: mesa-stable
Reviewed-by: Emma Anholt <emma@anholt.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18375 >
(cherry picked from commit 8abbc6b19b
)
2022-09-14 15:43:45 -07:00
Mike Blumenkrantz
9d0016594b
zink: don't emit entrypoints for function temp variables
...
UNASSIGNED-CoreValidation-Shader-InconsistentSpirv(ERROR / SPEC): msgNum: 7060244 - Validation Error: [ UNASSIGNED-CoreValidation-Shader-InconsistentSpirv ] Object 0: handle = 0x3c8a1d0, type = VK_OBJECT_TYPE_DEVICE; | MessageID = 0x6bbb14 | SPIR-V module not valid: OpEntryPoint interfaces should only list global variables
cc: mesa-stable
Reviewed-by: Emma Anholt <emma@anholt.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18375 >
(cherry picked from commit e2773d67fe
)
2022-09-14 15:43:45 -07:00
Connor Abbott
7cd4905eaf
tu/lrz: Fix multiple depth attachment case with secondaries
...
This is a counterpart to the previous commit. When we have multiple
depth attachments, in the secondary we currently don't disable LRZ and
so we may need a valid LRZ fast-clear base.
Fixes: 4b5f0d98
("tu: Overhaul LRZ, implement on-GPU dir tracking and LRZ fast-clear")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18369 >
(cherry picked from commit f640661e54
)
2022-09-14 15:43:44 -07:00
Connor Abbott
7f79b1a010
tu/lrz: Fix multiple subpass case with secondaries
...
In
dEQP-VK.renderpass.dedicated_allocation.attachment_allocation.input_output.94
we have the following:
- There is more than one subpass, but only one depth attachment.
- The first subpass doesn't use depth.
- The subpass that does use depth has a draw call in a secondary.
We wouldn't hit the case where there's more than one depth attachment,
but because tu_begin_resumed_renderpass() only looked at the first
subpass it wouldn't find the depth attachment and would leave LRZ
invalid and thus a NULL LRZ fast-clear base. Then
tu_begin_secondary_cmdbuf() would leave LRZ enabled and the draw would
have LRZ enabled, leading to a hang.
Fix this by making tu_begin_resumed_renderpass() match
tu_begin_renderpass() with how it finds the depth attachment.
Fixes: 4b5f0d98
("tu: Overhaul LRZ, implement on-GPU dir tracking and LRZ fast-clear")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18369 >
(cherry picked from commit bf09a5881b
)
2022-09-14 15:43:44 -07:00
Samuel Pitoiset
d4c4412629
radv: fix bogus assertion with RADV_FORCE_VRS
...
It supports VS, TES and GS.
Cc: mesa-stable
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18345 >
(cherry picked from commit 047738daa7
)
2022-09-14 15:43:43 -07:00
Timur Kristóf
46d66bcb6f
aco: Fix p_init_scratch for task shaders.
...
Fixes: d2d94b62f2
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com >
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18339 >
(cherry picked from commit 16c14663e5
)
2022-09-14 15:43:43 -07:00
Gert Wollny
c559159b71
r600/sfn: override register ID when it doesn't matter
...
When a vec4 register only uses constant value of ignore
swizzles then emit zero as register ID.
Optimizing the register use in instructions that support this type
of swizzle may lead to the situation that the RA doesn't see the
register ID, because it is actually irreleant, in this case return
zero as register ID to avoid that the assembler uselessly reports
a high requirement for registers based on a stale register ID.
Fixes: 79ca456b48
r600/sfn: rewrite NIR backend
Signed-off-by: Gert Wollny <gert.wollny@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18343 >
(cherry picked from commit ed294e0863
)
2022-09-14 15:43:42 -07:00
Dave Airlie
c9d05409ae
llvmpipe: finish rendering before flushing frontbuffer resources.
...
Fixes misrendering on front with mesa demos
Cc: mesa-stable
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Reviewed-by: Brian Paul <brianp@vmware.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18360 >
(cherry picked from commit 91dcadf956
)
2022-09-14 15:43:42 -07:00
Alyssa Rosenzweig
726e9bbf60
pan/mdg: Print 3 sources for CSEL
...
The third source exists logically but not architecturally. We still need to
print it. Caught by the assertion.
Fixes: 0ee24c46e0
("pan/mdg: Only print 2 sources for ALU")
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18338 >
(cherry picked from commit 6fed616187
)
2022-09-14 15:43:41 -07:00
Gert Wollny
ee37cceabd
virgl: when reading back wait first, then do the transfer
...
Otherwise the transfer from the host might not be finished
when we try to read the data.
v2: always wait before readback, but also keep the wait after
a possible readback, Itherwise TF fails in the CI.
Fixes: e87186fc67
virgl: add virgl_resource_transfer_prepare
Signed-off-by: Gert Wollny <gert.wollny@collabora.com >
Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org >
Reviewed-by: Ryan Neph <ryanneph@google.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18243 >
(cherry picked from commit 6e2b01e5b8
)
2022-09-14 15:43:40 -07:00
Yiwei Zhang
086b44101c
venus: allow no external memory handle when renderers lacks support
...
This is to make vtest happy.
Fixes: 9c5a7ffbd8
("venus: fix external memory ext filtering")
Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18331 >
(cherry picked from commit 0e0e5d1f20
)
2022-09-14 15:11:39 -07:00
Kenneth Graunke
a00e1b3a63
crocus: Fix memory leaks on iris_resource_create failure paths
...
We've already allocated the pipe resource, so we ought to free it
before returning.
Fixes: d8a38edc48
("crocus: fail resource allocation properly.")
Fixes: f3630548f1
("crocus: initial gallium driver for Intel gfx 4-7")
Reviewed-by: Dave Airlie <airlied@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18311 >
(cherry picked from commit 6c7916b7f6
)
2022-09-14 15:11:38 -07:00
Kenneth Graunke
51cd3f89a1
iris: Delete unused iris_screen::aperture_bytes field
...
This was effectively removed in bb3545a6
, but the field wasn't deleted,
leaving it there to troll people. screen->aperture_bytes is 0? What?
Fixes: bb3545a6ee
("intel: Store the aperture size in devinfo.")
Reviewed-by: Dave Airlie <airlied@redhat.com >
Tested-by: Mark Janes markjanes@swizzler.org
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18311 >
(cherry picked from commit 6a1f7e623f
)
2022-09-14 15:11:38 -07:00
Pierre-Eric Pelloux-Prayer
84ef8f31f6
radeonsi: use nir_opt_large_constants earlier
...
Calling it before nir_convert_to_lcssa helps in some cases,
because the NIR is simpler and nir_opt_large_constants can
detect that a variable is constant.
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/7059
CC: mesa-stable
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18147 >
(cherry picked from commit df2eaba411
)
2022-09-14 15:11:38 -07:00
Karol Herbst
3632392123
nouveau/mm: make code thread safe
...
With this helgrind doesn't report any races in this code.
Cc: mesa-stable
Signed-off-by: Karol Herbst <kherbst@redhat.com >
Reviewed-by: Pierre Moreau <dev@pmoreau.org >
Reviewed-by: Emma Anholt <emma@anholt.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10752 >
(cherry picked from commit 35d28251d1
)
2022-09-14 15:11:38 -07:00
Karol Herbst
b4c8e01393
nouveau: use the contexts pushbuf and client where possible
...
At the moment the context uses the screens object, but in order to fix
threading without having to lock too much we will have to allocate those
objects per context later.
Cc: mesa-stable
Signed-off-by: Karol Herbst <kherbst@redhat.com >
Reviewed-by: Emma Anholt <emma@anholt.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10752 >
(cherry picked from commit 607a9e1fd2
)
2022-09-14 15:11:38 -07:00
Rhys Perry
02a7e1b33c
aco: add SCC clobber in build_cube_select
...
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev >
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com >
Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17991 >
(cherry picked from commit 290df95870
)
2022-09-14 15:08:47 -07:00
Mike Blumenkrantz
80c165d155
zink: don't call util_queue_fence_init in zink_screen_get_pipeline_cache()
...
this might accidentally clobber existing jobs
cc: mesa-stable
Reviewed-by: Dave Airlie <airlied@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18197 >
(cherry picked from commit 40878e212f
)
2022-09-14 15:08:44 -07:00
Marcin Ślusarz
3b11e41489
anv: disable task redistribution
...
If task redistribution is enabled, then some mesh shaders read
garbage from task payload.
It may be a hardware bug, or it may be our bug. Who knows :(
This change will probably negatively affect performance of task
shader-enabled workloads on multi-slice GPUs, because mesh shaders
will be executed only on the slice where task shader was spawned.
Fixes: ef04caea9b
("anv: Implement Mesh Shading pipeline")
Acked-by: Caio Oliveira <caio.oliveira@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16197 >
(cherry picked from commit 4eaecd7965
)
2022-09-14 15:08:38 -07:00
Chia-I Wu
6a936dc090
ir3: fix predicate splitting in scheduler
...
Fix up src->def->instr, not src->instr.
Cc: mesa-stable
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/7014
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18096 >
(cherry picked from commit b1cb764316
)
2022-09-14 15:08:24 -07:00
Rhys Perry
0e9cbac188
aco: don't expand vec3 VS input load to vec4 on GFX6
...
Removes the (small) possibility of invalid memory access.
fossil-db (pitcairn):
Totals from 35456 (26.15% of 135610) affected shaders:
MaxWaves: 259508 -> 260642 (+0.44%); split: +0.44%, -0.01%
Instrs: 7915383 -> 7965774 (+0.64%); split: -0.09%, +0.72%
CodeSize: 37163748 -> 37524804 (+0.97%); split: -0.04%, +1.01%
SGPRs: 1515128 -> 1513576 (-0.10%); split: -0.27%, +0.17%
VGPRs: 1218376 -> 1211160 (-0.59%); split: -0.71%, +0.12%
SpillSGPRs: 1152 -> 1144 (-0.69%)
Latency: 83777626 -> 83867137 (+0.11%); split: -0.61%, +0.72%
InvThroughput: 25722445 -> 25727745 (+0.02%); split: -0.23%, +0.25%
VClause: 232058 -> 230464 (-0.69%); split: -2.53%, +1.84%
SClause: 322579 -> 322108 (-0.15%); split: -0.76%, +0.61%
Copies: 547032 -> 547954 (+0.17%); split: -1.83%, +2.00%
Branches: 72538 -> 72542 (+0.01%)
PreVGPRs: 898453 -> 897584 (-0.10%); split: -0.13%, +0.03%
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18225 >
(cherry picked from commit 030d6f873e
)
2022-09-14 15:08:23 -07:00
Rhys Perry
064abf28b6
aco: fix 16-bit VS inputs
...
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Fixes: 3fba5bb9cc
("aco: implement 16-bit vertex fetches with tbuffer_load_format_d16_*")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18225 >
(cherry picked from commit 3260844448
)
2022-09-14 15:08:22 -07:00
Rhys Perry
3f3ecdccb1
radv: fix 16-bit support in radv_lower_vs_input
...
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Fixes: b366fef091
("radv: optimize the number of loaded components for VS inputs in NIR")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18225 >
(cherry picked from commit 9ae13a9bd3
)
2022-09-14 15:08:22 -07:00
Rhys Perry
70dcad3214
radv: remove claimed support for sRGB vertex buffer formats
...
These probably don't work.
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18225 >
(cherry picked from commit 82f9e40851
)
2022-09-14 15:08:21 -07:00
Samuel Pitoiset
8abdd60d1f
radv: re-emit viewports if negative one to one or depth clamp mode changed
...
The following sequence would be broken if we don't re-emit viewports.
vkCmdSetViewport()
VkCmdBindPipeline(negative_one_to_one = false)
vkCmdDraw()
VkCmdBindPipeline(negative_one_to_one = true)
vkCmdDraw()
Found by inspection.
Cc: mesa-stable
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18245 >
(cherry picked from commit 64045fcf7c
)
2022-09-14 15:08:21 -07:00
Erik Faye-Lund
88a188cc39
zink: wrap discard in a function
...
This makes discard less weird, and allows us to treat it as
control-flow. This makes things less bizarre for drivers.
Cc: mesa-stable
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/7070
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18244 >
(cherry picked from commit b7601dd27e
)
2022-09-14 14:37:01 -07:00
Erik Faye-Lund
ccac10eb5a
zink: add spirv_builder_function_call
...
It can be useful not just to create functions, but also being able to
call them. This adds the spirv_builder-helper for this.
Cc: mesa-stable
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18244 >
(cherry picked from commit 47d67912bd
)
2022-09-14 14:37:00 -07:00
Erik Faye-Lund
1ddca52324
zink: type_main -> type_void_func
...
This type will be reused later on, so let's have the name describe what
is *is*, not what it's *used for*.
Cc: mesa-stable
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18244 >
(cherry picked from commit 41dfed6e12
)
2022-09-14 14:37:00 -07:00