-
a7cfd251
by Dylan Baker
at 2022-03-29T12:56:25-07:00
docs: add sah256 sum for mesa 22.0.1
-
b6e25103
by Dylan Baker
at 2022-04-21T16:10:21-07:00
.pick_status.json: Update to 5a459b8f6b0b59814865bc5869a868269f8f7ebf
-
e238597c
by Dylan Baker
at 2022-04-21T16:10:21-07:00
pick/core: have update_commits return the commit list
-
fbaf4e84
by Dylan Baker
at 2022-04-21T16:10:21-07:00
bin/auto-pick: Add a script that automates applying commits
This attempts to apply each commit, one-by-one, and then pushes it to
gitlab for CI results, then if the CI succeeds it considers the commit a
success, otherwise it reverts it and continues.
-
ff2ecc72
by Kai Wasserbäch
at 2022-04-21T16:10:22-07:00
fix(FTBFS): clover: work around removal of PointerType::getElementType()
`PointerType::getElementType()` was deprected and is gone now [0]. The
*temporary* workaround is using `Type::getPointerElementType()`,
longterm this needs to use [1].
This commit fixes an FTBFS.
[0] <https://github.com/llvm/llvm-project/commit/d593cf79458a59d37e75c886a4fc3ac6a02b484d>
[1] <https://llvm.org/docs/OpaquePointers.html>
Closes: #6042
Cc: mesa-stable
Signed-off-by: Kai Wasserbäch <kai@dev.carbon-project.org>
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15091>
(cherry picked from commit 948ad5ac230c5434350fc988c147e28e1b9506ab)
-
a825e59d
by Mike Blumenkrantz
at 2022-04-21T16:10:22-07:00
draw: fix gs vertex stream counting
this can't be determined from pipe_shader_state::stream_output,
as this only contains xfb info, which is not the same as the vertex
stream info, and may break primitives generated queries
cc: mesa-stable
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15506>
(cherry picked from commit 32f117f5f8d746bdafb9a62cd01b0878df4f0e81)
-
c5431e70
by Kai Wasserbäch
at 2022-04-21T16:10:22-07:00
fix(clover): FTBFS: Added missing include for ConstantInt for LLVM 15
With LLVM 15 the include of llvm/IR/Constants.h is required for
ConstantInt.
This commit fixes an FTBFS.
Cc: mesa-stable
Signed-off-by: Kai Wasserbäch <kai@dev.carbon-project.org>
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15232>
(cherry picked from commit a5884df949e6c33329add11d606b3287dd497293)
-
6f19b9c7
by Georg Lehmann
at 2022-04-21T16:10:22-07:00
nir/fold_16bit_sampler_conversions: Don't fold dest upcasts.
This is not a valid optimization.
Fixes: fb29cef8dda ("nir: add many passes that lower and optimize 16-bit input/outputs and samplers")
Signed-off-by: Georg Lehmann <dadschoorse@gmail.com>
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14895>
(cherry picked from commit 798e47be511ade4218158ab36178ed62dd45a47c)
-
a19f40e2
by Pierre-Eric Pelloux-Prayer
at 2022-04-21T16:10:22-07:00
glsl/nir/linker: update shader_storage_blocks_write_access for SPIR-V
Most of the code inside the "!prog->data->spirv" blocks shouldn't be
executed for SPIR-V except the part updating the writable mask.
See https://gitlab.freedesktop.org/mesa/mesa/-/issues/6184
Cc: mesa-stable
Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15552>
(cherry picked from commit 61ee560bc596f2349be3a63371ba57b41d754f11)
-
5c9bdd59
by Georg Lehmann
at 2022-04-21T16:10:22-07:00
radv: Add a vkCmdBuildAccelerationStructuresIndirectKHR stub.
Since this entry point is provided by VK_KHR_acceleration_structure, radv has
to implement it even if it doesn't support the indirect build feature.
Helps Doom Eternal.
Fixes: 82de184c3a2 ("radv: Enable VK_KHR_acceleration_structure with RADV_PERFTEST=rt.")
Signed-off-by: Georg Lehmann <dadschoorse@gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15573>
(cherry picked from commit b8c8e3d97538350908968ff53cb380359dc24ece)
-
c5da1584
by Georg Lehmann
at 2022-04-21T16:10:22-07:00
radv: Add more RT pipeline stubs.
Entry points have to be provided even if the features are not supported.
Helps Doom Eternal.
Fixes: f1095260a41 ("radv: Experimentally enable RT extensions.")
Signed-off-by: Georg Lehmann <dadschoorse@gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15573>
(cherry picked from commit 37c0f68500bb6e79239433139a7ef39792ea8100)
-
67ba608c
by Mike Blumenkrantz
at 2022-04-21T16:10:22-07:00
radv: fix CmdSetColorWriteEnableEXT(attachmentCount==MAX_RTS)
cc: mesa-stable
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15508>
(cherry picked from commit e23f88131110b7b647a037a76dbd77982c71e79f)
-
6210e69e
by Danylo Piliaiev
at 2022-04-21T16:10:22-07:00
turnip: Fix the lack of WFM before indirect draws
We have to add WFM to pending bits when we are flushing into CP
for indirect draw to know when they should apply WFM workaround.
Fixes CTS tests:
dEQP-VK.draw.renderpass.indirect_draw.*_data_from_compute.indirect_draw_count*
Fixes: abf0ae014a878d063132a4bf2f2515dc7052f069
("tu: Properly handle waiting on an earlier pipeline stage")
Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15577>
(cherry picked from commit 37939e9c5462b871b0b9b00a43c5c9bec1e10e9d)
-
c717dad4
by Emma Anholt
at 2022-04-21T16:10:22-07:00
r600: Update the PS state before checking for cb_misc update.
The update_ps_state updates ps_shader->current->ps_color_export_mask, so
we could miss statechanges.
Cc: mesa-stable
Acked-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14427>
(cherry picked from commit e0429d9fef932eaa80b9c06feabb6e9aa02156b1)
-
9fe662e5
by Pavel Ondračka
at 2022-04-21T16:10:22-07:00
r300: respect output_semantic_index when writing colors
Right now we don't explicitly check it and we expect that the
output_semantic_index array is always ordered. Unfortunately,
this is not the case since 74c02d99b224fbc02132b54bf23e6ac1e117d805
Fixes corruption in Amnesia: the Dark Descent.
cc: mesa-stable
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/6179
Signed-off-by: Pavel Ondračka <pavel.ondracka@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15523>
(cherry picked from commit f82a0d10cd1aeba2917b5d4edb1bb830385084b5)
-
daf69709
by Emma Anholt
at 2022-04-21T16:10:22-07:00
r600: Fix ordering of SSBO loads versus texturing.
The two types of instructions get added to the same CF list, but not the
same instr list within the CF list. So, if you SSBO fetched your
texcoord, the emission of the SSBO fetch would come *after* the texcoord
fetch.
Avoids regressions when NIR-to-TGSI starts optimizing more.
Cc: mesa-stable
Reviewed-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14429>
(cherry picked from commit ef151d24abd2e7bb89c99bc366edf20b7cc85a18)
-
569baa11
by Emma Anholt
at 2022-04-21T16:10:22-07:00
r600: Add a workaround and explanation for shadowcubearray TG4.
With the NIR-to-TGSI transition, we had fewer other immediates and would
end up dereffing past the end of the literals array.
Cc: mesa-stable
Reviewed-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14429>
(cherry picked from commit 955883cf0aab6d955e6255cfba3a4dad5d7fda3e)
-
7e6e35e6
by Danylo Piliaiev
at 2022-04-21T16:10:22-07:00
turnip: enable has_ccu_flush_bug workaround for a660
It seems that a660 has the same bug. Without the workaround there
are a lot of flakes with depth-stencil tests, e.g. in:
dEQP-VK.pipeline.extended_dynamic_state.*
dEQP-VK.renderpass.depth_stencil_write_conditions.*
dEQP-VK.pipeline.stencil.format.d24_unorm_s8_uint.states.*
Or guaranteed failures like of:
dEQP-VK.pipeline.render_to_image.core.2d.huge.width.r8g8b8a8_unorm_d32_sfloat_s8_uint
Enabling the workaround fixes all of them.
cc: mesa-stable
Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15548>
(cherry picked from commit 10734fb7482ac10d7085eff5184467fe93354564)
-
bae16fd7
by Jason Ekstrand
at 2022-04-21T16:10:22-07:00
v3dv/queue: Rework multisync_free
Thix fixes two bugs. First, we stop leaking in/out fences with
multisync. Because the in_syncs and out_syncs parameters to
set_multisync were arrays and not pointers to arrays, the caller's
in_syncs and out_syncs pointers never got set and remained NULL so
multisync_free() always sees to NULL pointers and does nothing, leaking
both arrays. Not sure how this isn't showing up in the dEQP leak check
tests.
Second, the struct drm_v3d_multi_sync was in the scope of the then
clause of the `if (device->pdevice->caps.multisync)` so it goes out of
scope before the ioctl. This is, effectively, a use-after-free and,
depending on stack allocation details, may result in the multisync
extension struct getting stompped before the ioctl.
Fixes: ff8586c34524 ("v3dv: enable multiple semaphores on cl submission")
Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15512>
(cherry picked from commit 688d4780451580e5de1a89e98f5cafd8ffff325a)
-
9dba497f
by Dylan Baker
at 2022-04-21T16:10:22-07:00
.pick_status.json: Mark 3ef093f697ad9027ba514c7a4a6a10b7bd95bd47 as denominated
-
b668ccaf
by Emma Anholt
at 2022-04-21T16:10:22-07:00
vulkan: Make sure we've loaded our connectors when querying plane props.
If you hadn't already called wsi_GetPhysicalDeviceDisplayProperties2KHR or
wsi_GetDrmDisplayEXT before calling
GetPhysicalDeviceDisplayPlaneProperties2KHR, then the connectors list
wouldn't be populated and you'd get no plane properties. Fixes failure of
dEQP-VK.wsi.display.get_display_plane_capabilities when run on its own.
Fixes: #4575
Cc: mesa-stable
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15353>
(cherry picked from commit da834a12cf2b334baf5c366c34cbbffb61803650)
-
4b0aa1ea
by Mike Blumenkrantz
at 2022-04-21T16:11:03-07:00
draw: fix nonzero stream primitives generated queries
the fastpath here can only be taken if there is exactly one stream active,
as this will otherwise break nonzero stream primitives generated queries
in truth, this num_vertex_streams thing should be a bitmask so that the case
of num_streams=1,stream_id!=0 could also be fastpathed, but the complexity
probably isn't worth it given the infrequency of use
cc: mesa-stable
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15506>
(cherry picked from commit 36373e8e1e4f236fab1fb40863f125fb250b6ba2)
-
8fb354fa
by Dylan Baker
at 2022-04-21T16:11:05-07:00
core: don't pass the ui back into commit.apply
-
c59e9004
by Lionel Landwerlin
at 2022-04-21T16:11:05-07:00
anv: fix variable shadowing
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Fixes: 83fee30e8596 ("anv: allow multiple command buffers in anv_queue_submit")
Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15425>
-
40594009
by Lionel Landwerlin
at 2022-04-21T16:11:06-07:00
anv: zero-out anv_batch_bo
anv_batch_bo has a length field that we use to flush cachelines. Not
having that field initialized properly leads us to access out of bound
memory.
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Cc: mesa-stable
Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15425>
-
e23a7c05
by Georg Lehmann
at 2022-04-21T16:11:26-07:00
radv: Don't hash ycbcr sampler base object.
Stops gamescope from recompiling pipelines on every start.
Cc: mesa-stable
Signed-off-by: Georg Lehmann <dadschoorse@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15454>
-
bbd7f4ff
by Samuel Pitoiset
at 2022-04-21T16:11:27-07:00
radv,drirc: move RADV workarounds to 00-radv-defaults.conf
Because we have to maintain two different packages of Mesa, one
specific to RADV and another one for RadeonSI and such, it's a bit
annoying to have to synchronize the drirc entries. Currently, only our
Mesa package installs 00-mesa-defaults.conf which means we have to
backport the drirc RADV changes.
This splits 00-mesa-defaults.conf in two to move the drirc RADV entries
to src/amd/vulkan/00-radv-defaults.conf. Meson will install the file
only if RADV is built.
There is still a caveat for common drirc workarounds like for WSI but
they are rare enough and we could still duplicate them if needed.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15152>
(cherry picked from commit 53ca85ac2a1acf1476c4b494f5fdfa2cc39c644c)
-
7efdfaa2
by Samuel Pitoiset
at 2022-04-21T16:11:27-07:00
radv: disable DCC for Fable Anniversary, Dragons Dogma, GTA IV and more
Also Starcraft 2 and The Force Unleashed II.
These games are known to be affected by the feedback loop issue. We will
fix this properly soon but as a hotfix disabling DCC should be enough.
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/4424
Cc: mesa-stable
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15203>
(cherry picked from commit 4380916b761d2ebbe5b1d36b9162810b66a727fc)
-
25255343
by Samuel Pitoiset
at 2022-04-21T16:11:27-07:00
radv: enable radv_disable_aniso_single_level for DXVK/vkd3d
It seems the default D3D behavior and it's complicated to emulate this
in DXVK/vkd3d. Enable it by default to prevent rendering issues in
other games not listed here.
Cc: 22.0 mesa-stable
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15368>
(cherry picked from commit 174d086e8c818db4522731e845bd259e2baa8830)
-
592155a2
by Alyssa Rosenzweig
at 2022-04-21T21:03:03-07:00
panfrost: Process scissor state earlier
Otherwise, if batch->scissor_culls_everything is set for a single draw,
every draw after it in the batch will be skipped because the new
scissor/viewport state will never be processed. Process scissor state
early in draw_vbo to fix this interaction.
We do need to be careful: setting something on the batch can only happen when
we've decided on a batch. If we have to select a fresh batch due to too many
draws, that must happen first. This is pretty clear in the code but worth noting
for the diff.
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com>
Reported-by: Icecream95 <ixn@disroot.org>
Reviewed-by: Icecream95 <ixn@disroot.org>
Fixes: 79356b2e ("panfrost: Skip rasterizer discard draws without side effects")
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/5839
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/6136
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15365>
(cherry picked from commit d2fb6879a2934de03323b9c72b2f4987b2bc38d9)
-
6b46d858
by Lionel Landwerlin
at 2022-04-21T21:03:03-07:00
anv: implement EXT_tooling_info
This is required by 1.3. Fixes CTS with newer loader :
dEQP-VK.api.tooling_info.validate_getter
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Fixes: df8ac77af809 ("anv: Advertise Vulkan 1.3")
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/15491>
(cherry picked from commit dc8c77cc8fc12467e9d31ee23f11ce3680a1f02f)
-
162dccc1
by Georg Lehmann
at 2022-04-21T21:03:04-07:00
nir/fold_16bit_sampler_conversions: Fix dest type mismatches.
Gitlab: https://gitlab.freedesktop.org/mesa/mesa/-/issues/5996
Fixes: fb29cef8dda ("nir: add many passes that lower and optimize 16-bit input/outputs and samplers")
Signed-off-by: Georg Lehmann <dadschoorse@gmail.com>
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14895>
(cherry picked from commit 88ec73e5e8384a7671838518c987889ffb02ad3e)
-
ec60ee3b
by Georg Lehmann
at 2022-04-21T21:03:04-07:00
nir/fold_16bit_sampler_conversions: Fix src type mismatches.
Gitlab: https://gitlab.freedesktop.org/mesa/mesa/-/issues/5996
Fixes: fb29cef8 ("nir: add many passes that lower and optimize 16-bit input/outputs and samplers")
Signed-off-by: Georg Lehmann <dadschoorse@gmail.com>
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14895>
(cherry picked from commit b5fe1187ecaecdfdb5a9a3448725a54054b6e217)
-
e2ea8c32
by Lionel Landwerlin
at 2022-04-21T21:03:04-07:00
iris: don't synchronize BO for batch decoding
We don't need to go to the kernel to synchronize the BO we want to
decode with INTEL_DEBUG=bat, mostly because we'll decode what was
written by the driver in the batch.
This also works around an issue in the simulation environment.
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Fixes: 9ac81f189050 ("iris: decoder fixes")
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15517>
(cherry picked from commit a55cc061fd08a5d7a02e27accdeca98193fa2468)
-
1eab0732
by Dylan Baker
at 2022-04-21T21:03:04-07:00
.pick_status.json: Update to 33c800bf913771ddadb5bd632df46582f4d1c9f3
-
5a3785dd
by Dylan Baker
at 2022-04-21T21:03:04-07:00
.pick_status.json: Update to 837f781c9a4f909ac1ee0b3b8331af87301b5fc3
-
26d695c5
by Mike Blumenkrantz
at 2022-04-21T21:03:04-07:00
lavapipe: enforce monotonic timeline incrementing
maybe just being overly paranoid, but make sure that the timeline id
gets compared while the lock is held in every scenario
cc: mesa-stable
Reviewed-by: Omar Akkila <omar.akkila@collabora.com>
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15453>
(cherry picked from commit 5461a1cbaa40731e82e2a1751cf4e862463aeb8e)
-
1928268f
by Mike Blumenkrantz
at 2022-04-21T21:03:04-07:00
zink: force push descriptors cache update if hashing detects changes
this was previously only forced if the program pointer changed,
but programs can be freed and reused, and these are definite cases
where the last set cannot be reused, so jam it in
cc: mesa-stable
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15591>
(cherry picked from commit d415c28e64dd5f281067130b39e5e6b22bc2e963)
-
59a7dc5a
by Mike Blumenkrantz
at 2022-04-21T21:03:04-07:00
llvmpipe: handle sampling from 2d views of 3d images
this is seldom used but is required by KHR_gl_texture_3D_image
cc: mesa-stable
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15583>
(cherry picked from commit fe7c3eba335db0d510364281bc2875a9171796ac)
-
5e06bd06
by Georg Lehmann
at 2022-04-21T21:03:04-07:00
radv: Enable global bo list if 1.2 features are used.
These features require the global bo list and the existing code only checked
if the extensions which were promoted to 1.2 are enabled.
Found by inspection.
Cc: mesa-stable
Signed-off-by: Georg Lehmann <dadschoorse@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15701>
(cherry picked from commit 80a7ed273a32c35fe3bdd9a8aec881a554b8bbfe)
-
af9047ff
by Samuel Pitoiset
at 2022-04-21T21:03:04-07:00
radv: fix cleaning the image view for CmdCopyImageToBuffer()
Fixes: f07e67272e8 ("radv: fix vk_object_base_init/finish for internal image views")
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15707>
(cherry picked from commit 41ece97afb072931a71cf908970e88927dd5a09b)
-
c41ecec5
by Benjamin Cheng
at 2022-04-21T21:03:04-07:00
vulkan/queue: Destroy wait temps if they are skipped
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/6223
Fixes: 8a11d2a31bf9 ("vulkan: Add a dummy sync type")
Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com>
Tested-by: Jakob Bornecrantz <jakob@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15727>
(cherry picked from commit 4489933842168df2e8705b4461ba0636ad670faf)
-
67f0ffdd
by Mike Blumenkrantz
at 2022-04-21T21:03:04-07:00
zink: unset resource layout+access when doing storage setup
the previous access info is transferred to the staging resource for the copy,
and the new image has no access info
cc: mesa-stable
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15716>
(cherry picked from commit f05d0f123881116e8ecbc20130bdc5818db0e5dc)
-
b239f3b4
by Danylo Piliaiev
at 2022-04-21T21:03:04-07:00
turnip: Correctly store separate stencil in gmem store
- When resolving d32s8 to s8 we stored stencil with a wrong format.
- For unaligned multi-sample store we used wrong gmem offset for stencil.
If unaligined store is forced this change fixes a hang in:
dEQP-VK.renderpass2.depth_stencil_resolve.image_2d_32_32.samples_2.d32_sfloat_s8_uint_separate_layouts.compatibility_depth_zero_stencil_zero_testing_stencil
Fixes: b157a5d0d68ee8a1b4cb862a56b97bd881841413
("tu: Implement non-aligned multisample GMEM STORE_OP_STORE")
Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15532>
(cherry picked from commit 72716993b2e0db9a6bbf1543d435cd2f7489961e)
-
e73ac543
by Lionel Landwerlin
at 2022-04-21T21:03:04-07:00
anv: disable preemption on 3DPRIMITIVE on gfx12
To workaround a push constant corruption issue.
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/5963
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/5662
Cc: mesa-stable
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15753>
(cherry picked from commit 88f77aa811befffd931571216bb4d6978a1fb155)
-
a6be548f
by Dylan Baker
at 2022-04-21T21:03:04-07:00
.pick_status.json: Update to 7478b00c7cc7f7ec8cbe224ce600362f7fdb9411
-
b9e5c6da
by Ian Romanick
at 2022-04-21T21:03:04-07:00
intel/compiler: Fix sample_d messages on DG2
DG2 can only do sample_d and sample_d_c on 1D and 2D surfaces. The
maximum number of gradient components and coordinate components should
be 2. In spite of this limitation, the Bspec lists a mysterious R
component before the min_lod, so the maximum coordinate components is 3.
Fixes the following Vulkan CTS failures on DG2:
dEQP-VK.glsl.texture_functions.texturegradclamp.isampler1d_fragment
dEQP-VK.glsl.texture_functions.texturegradclamp.isampler2d_fragment
dEQP-VK.glsl.texture_functions.texturegradclamp.sampler1d_fixed_fragment
dEQP-VK.glsl.texture_functions.texturegradclamp.sampler1d_float_fragment
dEQP-VK.glsl.texture_functions.texturegradclamp.sampler2d_fixed_fragment
dEQP-VK.glsl.texture_functions.texturegradclamp.sampler2d_float_fragment
dEQP-VK.glsl.texture_functions.texturegradclamp.usampler1d_fragment
dEQP-VK.glsl.texture_functions.texturegradclamp.usampler2d_fragment
The Fixes: tag below is a bit misleading. This commit fixes some test
cases similar to ones fixed by the Fixes: commit. I just want to make
sure this commit gets applied everywhere that commit was also applied.
Fixes: 635ed58e527 ("intel/compiler: Lower txd for 3D samplers on XeHP.")
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15781>
(cherry picked from commit c08302670bd737baf9c4503e09ce91c647a42531)
-
b84eb303
by Jason Ekstrand
at 2022-04-21T21:03:04-07:00
nir: Dont set coord_components on txs
Fixes: e1fc23265f9f ("nir: Add a pass for lowering CL-style image ops to texture ops")
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15758>
(cherry picked from commit 4cd260590c67333ceb84b164b77231b57d6430d3)
-
78ba93cc
by Mike Blumenkrantz
at 2022-04-21T21:03:04-07:00
zink: adds refs to user index buffers when tc is not active
there are no ref tricks to abuse in this case, so add our own ref
fixes #6273
cc: mesa-stable
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15807>
(cherry picked from commit fde2c1db88b0d221c67de2b510222abd483859ab)
-
286f8818
by Timothy Arceri
at 2022-04-21T21:03:04-07:00
glsl: fix needs_lowering() call in varying packing pass
Here we remove the outer arrays on geom and tess shaders where
needed. Without this the pass can sometimes attempt to pack a
varying on only one side of the shader interface where it is not
actually needed. The result can be mismatching varying types.
Fixes: d6b9202873f0 ("glsl: disable varying packing when its not safe")
Tested-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Acked-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15761>
(cherry picked from commit 7d216f296afde47513b5f7f12e6675229e4adfd4)
-
9f8b840f
by Dave Airlie
at 2022-04-21T21:03:04-07:00
radv: use flush vgt streamout like PAL does.
This uses WRITE_DATA on the ME engine to reset the register, to match what
PAL does on GFX9+.
This fixes
KHR-GL45.transform_feedback_overflow_query_ARB.multiple-streams-one-buffer-per-stream
on zink/radv.
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15812>
(cherry picked from commit 165b016bbeedd4e8d1517a5e95949871cc55a123)
-
1dcb9e30
by Emma Anholt
at 2022-04-21T21:03:04-07:00
st/glsl-to-tgsi: Fix handling of csel(bool, vec, vec).
We were throwing an assertion failure across shader-db on nv92. I'm
guessing this is a regression from !14573.
Cc: mesa-stable
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15540>
(cherry picked from commit 00e9c4f3c92752438b47dd926fdf3795773d16bc)
-
b6b0117c
by Mike Blumenkrantz
at 2022-04-21T21:03:04-07:00
zink: handle 0 ubos and 0 ssbos in pipeline layout
this is the number of types needed, and it can be zero
cc: mesa-stable
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15853>
(cherry picked from commit 23c758807e76183cd2dbd5ee97f296bde167c93b)
-
fb2af272
by Mike Blumenkrantz
at 2022-04-21T21:03:04-07:00
zink: create pipeline layout if only bindless descriptor set is used
bindless descriptors are descriptors too.
cc: mesa-stable
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15853>
(cherry picked from commit d637eee212cc27bc35fe784aeee2d33105c36a34)
-
7137e81b
by Rohan Garg
at 2022-04-21T21:03:04-07:00
iris: set a default EDSC flag
anv sets the default EDSC flag, do the same for iris too
Fixes: 5ae278da18b6 ("iris: use vtbl to avoid multiple symbols, fix state base address")
Signed-off-by: Rohan Garg <rohan.garg@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Acked-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15905>
(cherry picked from commit 581035b3a9db28cfcd2fac3e1ed1bae259c61fed)
-
8ef376be
by Timur Kristóf
at 2022-04-21T21:03:04-07:00
aco: Fix VOP2 instruction format in visit_tex.
There was a v_or_b32 that accidentally used SOP2.
It should use VOP2.
Issue found by looking at a gfxreconstruct trace posted by a user
in this bug: https://gitlab.freedesktop.org/mesa/mesa/-/issues/5838
Cc: mesa-stable
Fixes: 93c8ebfa780ebd1495095e794731881aef29e7d3 "aco: Initial commit of independent AMD compiler"
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15923>
(cherry picked from commit b874a2ed61b056fd69fc2aa4cbf2291d95177b23)
-
9ff23e0d
by Timur Kristóf
at 2022-04-21T21:03:04-07:00
nir: Handle out of bounds access in nir_vectorize_tess_levels.
Replace out of bounds loads with undef.
Then, delete instructions with out of bounds access.
Fixes: f5adf27fb926a330a13af716f0a03da1a224656d "nir,radv: add and use nir_vectorize_tess_levels()"
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/6264
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/15775>
(cherry picked from commit a7147ef1e86af5dbc39371885664f05030b3b418)
-
6ad668b6
by Timur Kristóf
at 2022-04-21T21:03:04-07:00
radv: Fix gs_vgpr_comp_cnt for NGG VS without passthrough mode.
When not in passthrough mode, the NGG shader needs to calculate the
primitive export value from the input primitive's vertex indices.
So, GS vertex offset 2 is needed when NGG has triangles
and isn't in passthrough mode.
Fixes: 7ad69e2f7ee10c0e7afc302b9324e7a320424dcb "radv: stop loading invocation ID for NGG vertex shaders"
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15837>
(cherry picked from commit e02c71d6c53fda3fee295f93009c0e5f656e5f8b)
-
78e231bf
by Dylan Baker
at 2022-04-21T21:03:04-07:00
.pick_status.json: Update to c7eaf0306876df53d3608ae3bf67afc272dcdf20
-
8e7e4a69
by Mike Blumenkrantz
at 2022-04-21T21:03:04-07:00
zink: fix xfb analysis variable finding for arrays
this fixes clipdistance exports
cc: mesa-stable
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15224>
(cherry picked from commit 3f7da0c58447979976eb2928625b1f93154f6c57)
Conflicts:
src/gallium/drivers/zink/zink_compiler.c
Changes for stable:
- Add `have_psiz` as an argument to `find_var_with_locations_frac`
-
406192a5
by Dylan Baker
at 2022-04-21T21:03:04-07:00
.pick_status.json: Mark 94706601fa2f52605d6e488f30fad9a0e2440612 as denominated
-
7192b548
by Dylan Baker
at 2022-04-21T21:03:04-07:00
.pick_status.json: Mark 174d086e8c818db4522731e845bd259e2baa8830 as denominated
-
9e926d1f
by Ian Romanick
at 2022-04-21T21:03:04-07:00
intel/fs: Force destination types on DP4A instructions
Most of the time, this doesn't matter. On the versions with _sat, if
the destination type is incorrect, the clamping will not happen
correctly.
Fixes the following CTS tests:
dEQP-VK.spirv_assembly.instruction.compute.opudotaccsatkhr.all_packed_ss_v4i8_out32
dEQP-VK.spirv_assembly.instruction.compute.opudotaccsatkhr.all_packed_su_v4i8_out32
dEQP-VK.spirv_assembly.instruction.compute.opudotaccsatkhr.all_packed_us_v4i8_out32
dEQP-VK.spirv_assembly.instruction.compute.opudotaccsatkhr.all_packed_uu_v4i8_out32
dEQP-VK.spirv_assembly.instruction.compute.opudotaccsatkhr.all_ss_v4i8_out32
dEQP-VK.spirv_assembly.instruction.compute.opudotaccsatkhr.all_su_v4i8_out32
dEQP-VK.spirv_assembly.instruction.compute.opudotaccsatkhr.all_us_v4i8_out32
dEQP-VK.spirv_assembly.instruction.compute.opudotaccsatkhr.all_uu_v4i8_out32
dEQP-VK.spirv_assembly.instruction.compute.opudotaccsatkhr.limits_packed_ss_v4i8_out32
dEQP-VK.spirv_assembly.instruction.compute.opudotaccsatkhr.limits_packed_su_v4i8_out32
dEQP-VK.spirv_assembly.instruction.compute.opudotaccsatkhr.limits_packed_us_v4i8_out32
dEQP-VK.spirv_assembly.instruction.compute.opudotaccsatkhr.limits_packed_uu_v4i8_out32
dEQP-VK.spirv_assembly.instruction.compute.opudotaccsatkhr.limits_ss_v4i8_out32
dEQP-VK.spirv_assembly.instruction.compute.opudotaccsatkhr.limits_su_v4i8_out32
dEQP-VK.spirv_assembly.instruction.compute.opudotaccsatkhr.limits_us_v4i8_out32
dEQP-VK.spirv_assembly.instruction.compute.opudotaccsatkhr.limits_uu_v4i8_out32
dEQP-VK.spirv_assembly.instruction.compute.opudotaccsatkhr.small_packed_ss_v4i8_out32
dEQP-VK.spirv_assembly.instruction.compute.opudotaccsatkhr.small_packed_su_v4i8_out32
dEQP-VK.spirv_assembly.instruction.compute.opudotaccsatkhr.small_packed_us_v4i8_out32
dEQP-VK.spirv_assembly.instruction.compute.opudotaccsatkhr.small_packed_uu_v4i8_out32
dEQP-VK.spirv_assembly.instruction.compute.opudotaccsatkhr.small_ss_v4i8_out32
dEQP-VK.spirv_assembly.instruction.compute.opudotaccsatkhr.small_su_v4i8_out32
dEQP-VK.spirv_assembly.instruction.compute.opudotaccsatkhr.small_us_v4i8_out32
dEQP-VK.spirv_assembly.instruction.compute.opudotaccsatkhr.small_uu_v4i8_out32
v2: Update anv-tgl-fails.txt.
Reviewed-by: Ivan Briano <ivan.briano@intel.com>
Fixes: 0f809dbf404 ("intel/compiler: Basic support for DP4A instruction")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15417>
(cherry picked from commit 19330eeb1d65c631ce11a0be1cb13437c6c28491)
Conflicts:
src/intel/ci/anv-tgl-fails.txt
-
0da7dafa
by Dylan Baker
at 2022-04-21T21:03:04-07:00
.pick_status.json: Mark 8b71118aa066ab125b7440912ed1e14da79c9451 as backported
-
837986db
by Dylan Baker
at 2022-04-21T21:03:05-07:00
.pick_status.json: Mark 4e30da7874e6586c7ac94cd34560c782d0f9678d as backported
-
db475d5a
by Dylan Baker
at 2022-04-21T21:03:05-07:00
.pick_status.json: Mark 7da211e24fe14d8b107461bdfcb3b8d67212f88a as backported
-
df29399d
by Dylan Baker
at 2022-04-21T21:03:05-07:00
.pick_status.json: Mark 8294d454245d4318befac7c8915e55db3d47cefd as backported
-
3e8aa4d8
by Mike Blumenkrantz
at 2022-04-21T21:03:05-07:00
zink: track internal conditional render state
this allows no-oping redundant calls
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15018>
(cherry picked from commit 082b42fbda231f54c366f44f3b263ba3a77d2cef)
-
2ad8dfeb
by Mike Blumenkrantz
at 2022-04-21T21:03:05-07:00
zink: flag sample locations for re-set on batch flush
this needs to be re-set any time the cmdbuf changes
cc: mesa-stable
Tested-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15397>
(cherry picked from commit efa724133f6e454b209837713ad4218ade6eb7d0)
Conflicts:
src/gallium/drivers/zink/zink_context.c
-
c070449d
by Cristian Ciocaltea
at 2022-04-21T21:03:05-07:00
ci: Avoid altering EXTRA_CARGO_ARGS environment variable
Use a dedicated DEQP_RUNNER_CARGO_ARGS variable instead of
EXTRA_CARGO_ARGS in build-deqp-runner.sh to pass custom arguments when
invoking 'cargo install'.
This is to avoid modifications of EXTRA_CARGO_ARGS which might have
negative side-effects in the scripts which rely on this variable and
import build-deqp-runner.sh instead of executing it in a subshell.
Fixes: 8729c6e9818 ("ci: Support building and installing deqp-runner from source")
Signed-off-by: Cristian Ciocaltea <cristian.ciocaltea@collabora.com>
Reviewed-by: Guilherme Gallo <guilherme.gallo@collabora.com>
Reviewed-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15208>
(cherry picked from commit e7ab2ba94e6306d4620453d57651474ed02414a7)
Conflicts:
.gitlab-ci/container/build-deqp-runner.sh
-
0d0ab22b
by Pierre-Eric Pelloux-Prayer
at 2022-04-21T21:03:05-07:00
gallium/u_threaded: late alloc cpu_storage
Instead of allocating cpu_storage in threaded_resource_init, defer the
allocation to first use (in tc_buffer_map).
This avoids needless memory allocation if tc_buffer_disable_cpu_storage is
called before tc_buffer_map.
map_buffer_alignment is stored and serves as a "can cpu_storage be used" flag.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15074>
(cherry picked from commit cd0ef9b3f420bc0ee70a16f720786b174e78bb78)
-
6937dd93
by Pierre-Eric Pelloux-Prayer
at 2022-04-21T21:03:05-07:00
gallium/tc: warn if an app is incompatible with cpu_storage
Instead of silently ignoring unmap calls.
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15074>
(cherry picked from commit 52ceb9dcb6f161295c28d37fa17dfe06d838fcaa)
-
3f582780
by Pierre-Eric Pelloux-Prayer
at 2022-04-21T21:03:05-07:00
gallium/tc: zero alloc transfers
Otherwise this causes trouble with unitialized memory, eg with:
struct si_transfer {
struct threaded_transfer b;
struct si_resource *staging;
};
'staging' will not be initialized and this causes #6109.
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/6109
Cc: mesa-stable
Acked-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Reviewed-by: Rob Clark <robdclark@chromium.org>
Reviewed-by: Christian Gmeiner <christian.gmeiner@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15298>
(cherry picked from commit 3c3a8f853dd8b43bfd51794f2a7d632feda396c4)
-
e9eef1f8
by Jason Ekstrand
at 2022-04-21T21:03:05-07:00
lavapipe: Use VK_OUTARRAY for GetPhysicalDeviceQueueFamilyProperties[2]
This fixes bugs with lavapipe's hand-rolled pCount handling. The driver
is supposed to set *pCount to the number of queues actually written in
the case where it's initialized to a value that's too large. It's also
supposed to handle *pCount being too small.
Fixes: b38879f8c5f5 ("vallium: initial import of the vulkan frontend")
Acked-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15459>
(cherry picked from commit dc8fdab71efdc3e516f2a8abdfdc2dec05fce448)
-
14aed6ca
by Mike Blumenkrantz
at 2022-04-21T21:03:05-07:00
lavapipe: fix typo in set_event execution
Fixes: eb7eccc76f0 ("lavapipe: Use generated command queue code")
Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com>
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15413>
(cherry picked from commit 256e4d7949aed1b3618cf1083cd08ab5013f97ec)
-
cab809af
by Dave Airlie
at 2022-04-21T21:03:05-07:00
gallivm/sample: detect if rho is inf or nan and flush to zero.
When using cubemaps and the u/v values are 0, then this point
can be arrived at with rho = nan, and if rho is NaN, then lod
calculations end up at the max lod, whereas the spec suggests
they should end up at the most negative lod.
This fixes
dEQP-VK.glsl.texture_functions.query.texturequerylod.samplercube_float_zero_uv_width_fragment
Acked-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15335>
(cherry picked from commit 3bbd404457e6e3278afd78f6721be9e174c6b777)
-
101e9513
by Boris Brezillon
at 2022-04-21T21:03:05-07:00
lavapipe: Don't use VK_OUTARRAY_MAKE()/vk_outarray_append()
MSVC doesn't support typeof(). If we want to keep compiling radv on
windows we need to use the typed variants of those macros.
Fixes: dc8fdab71efd ("lavapipe: Use VK_OUTARRAY for GetPhysicalDeviceQueueFamilyProperties[2]")
Acked-by: Daniel Stone <daniels@collabora.com>
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15518>
(cherry picked from commit aa0c54353387d2b41034614e44c58272964f079c)
Conflicts:
src/gallium/frontends/lavapipe/lvp_device.c
Stable changes:
- Also convert GetPhysicalDeviceQueueFamilyProperties, which was
removed in the main branch, but still exists in 22.0
-
910950ee
by Dylan Baker
at 2022-04-21T21:03:05-07:00
.pick_status.json: Update to e509598470c000498c3e1328e012142d9047e292
-
b6dc01f4
by Qiang Yu
at 2022-04-21T21:03:05-07:00
nir/linker: disable varying from uniform lowering by default
This fixes performance regression for Specviewperf/Energy
on AMD GPU. Other GPUs passing varying by memory may choose
to re-enable it as need.
Fixes: 26046250437 ("nir/linker: support uniform when optimizing varying")
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15341>
(cherry picked from commit 2617e6c028a3823c600b16dbffa5702a68b1cfa7)
Conflicts:
src/compiler/nir/nir.h
-
0fe11aaa
by Mike Blumenkrantz
at 2022-04-21T21:03:05-07:00
mesa/st: add special casing for pointsize constant updating during validate
the previous method of using affected_states to trigger constant updates
was ineffectual in the scenario where a ubo pointsize was needed on
the first time a non-precompiled shader was used after being the not-last
vertex stage:
* have vs+gs -> gs precompiles with pointsize lowering -> gs constants get updated
* remove gs -> vs was precompiled without pointsize lowering -> vs constants broken
now just do a quick check as in st_atom_shader.c and set the flag manually to
ensure the update is done correctly every time
cc: mesa-stable
fixes #6207
fixes (radv):
KHR-GL46.texture_cube_map_array.image_op_fragment_sh
KHR-GL46.texture_cube_map_array.sampling
KHR-GL46.texture_cube_map_array.texture_size_fragment_sh
KHR-GL46.constant_expressions*
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15570>
(cherry picked from commit eaf3c72a8371a0a83261b1b1e1b0d68147314a99)
Conflicts:
src/gallium/drivers/zink/ci/zink-radv-fails.txt
src/mesa/state_tracker/st_program.c
-
fff921ab
by Caio Oliveira
at 2022-04-21T21:03:05-07:00
intel/fs: Initialize the sample mask in flags register when using demote
Without this change, a check for "is helper invocation" could read
uninitialized values.
Fixes: 45f5db5a84a ("intel/fs: Implement "demote to helper invocation"")
Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15400>
(cherry picked from commit bb311c22dfb7627111cf76cd2fb619c4c6fe8b79)
-
a3b7186c
by Caio Oliveira
at 2022-04-21T21:03:05-07:00
intel/fs: Fix IsHelperInvocation for the case no discard/demote are used
Use emit_predicate_on_sample_mask() helper that does check where to
get the correct mask depending on whether discard/demote was used or
not.
Fixes: 45f5db5a84a ("intel/fs: Implement "demote to helper invocation"")
Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15400>
(cherry picked from commit f82731d0d7ada7bbca4a6742568925b6f97c91aa)
Conflicts:
src/intel/compiler/brw_fs.cpp
-
97c38930
by Daniel Schürmann
at 2022-04-21T21:03:05-07:00
aco/optimizer: fix call to can_use_opsel() in apply_insert()
The definition index is -1.
Fixes: 54292e99c7844500314bfd623469c65adef954c5 ('aco: optimize 32-bit extracts and inserts using SDWA ')
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15551>
(cherry picked from commit b98a9dcc36b4fb3c7184eaf4a00d9f35314dc5ef)
-
064420f8
by Pierre-Eric Pelloux-Prayer
at 2022-04-21T21:03:05-07:00
glsl/nir/linker: fix shader_storage_blocks_write_access
shader_storage_blocks_write_access was computed using the buffer indices
in the program but ShaderStorageBlocksWriteAccess is used with the shader
buffers.
So if a VS had 3 SSBOs and a FS had 4, the mask for VS was 0x3 (correct) but
the mask for the FS was 0x78 instead of 0x15.
Fix this by substracting the index of the first shader buffer in the program's
buffers.
Fixes: 79127f8d5be ("glsl: set ShaderStorageBlocksWriteAccess in the nir linker")
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/6184
Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15552>
(cherry picked from commit 2bc933f7d5852df4aaf3c2d59b153a85ced111c2)
-
ca0afb5f
by Emma Anholt
at 2022-04-21T21:03:05-07:00
r600: Disable SB in the presence of indirection on temp arrays.
Prevents several regressions when NIR-to-TGSI is enabled where it was
allocating arrays on top of each other.
Fixes vec3 fails on RV770,
dEQP-GLES3.functional.shaders.metamorphic.bubblesort_flag.variant_1 and 2
in general, and fixes another piglit but breaks two others. Still, this
seems to be a win.
Cc: mesa-stable
Reviewed-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14429>
(cherry picked from commit f315ea9eff6d8479b995355647ec297d5d9a5651)
Conflicts:
src/gallium/drivers/r600/ci/r600-rv770-fails.txt
src/gallium/drivers/r600/ci/r600-turks-fails.txt
-
66eb8005
by Emma Anholt
at 2022-04-21T21:03:05-07:00
r600: Disable SB when INTERP_SAMPLE is used.
Avoids an assertion failure in the SB scheduler.
Cc: mesa-stable
Reviewed-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14429>
(cherry picked from commit 991a95a352996cac75aed1c4cca7cea78a425f40)
Conflicts:
src/gallium/drivers/r600/ci/r600-turks-fails.txt
src/gallium/drivers/r600/r600_shader.c
-
ce65f27e
by Emma Anholt
at 2022-04-21T21:03:05-07:00
r600: Implement memoryBarrier() in the non-SFN path.
Previously we were just doing a group barrier for both membar and barrier..
This sometimes worked out, because atomics and reads waited for ack
already, but writes were not waiting for ack. Use the need_wait_ack
pattern that scratch writes used, with a little refactoring for
reusability.
The refactor also incidentally fixes the atomics waiting for outstanding
acks to be > 1 instead of > 0.
Cc: mesa-stable
Fixes: #6028
Reviewed-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14429>
(cherry picked from commit b8324a7387d5282454e8635cde2d362c873b8a2d)
Conflicts:
src/gallium/drivers/r600/ci/r600-turks-fails.txt
-
0356d86f
by Timur Kristóf
at 2022-04-21T21:03:05-07:00
radv: Use correct buffer offset for conditional rendering.
Cc: mesa-stable
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15615>
(cherry picked from commit 2132d4278d413351e042153187285c50d78ef215)
Conflicts:
src/gallium/drivers/zink/ci/zink-radv-fails.txt
-
439a59ae
by Kenneth Graunke
at 2022-04-21T21:03:05-07:00
intel/compiler: Call inst->resize_sources before setting the sources
You should probably resize the sources array before accessing entries
that might be out of bounds. inst->resize_sources() always allocates
enough space for at least 3 sources, so this is really only an issue
when there are 4+ sources.
Fixes: a920979d4f3 ("intel/fs: Use split sends for surface writes on gen9+")
Fixes: 4f86a70599a ("intel/fs: Lower DW untyped r/w messages to LSC when available")
Fixes: d372abe3973 ("intel/fs: Add surface OWORD BLOCK opcodes")
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Rohan Garg <rohan.garg@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15632>
(cherry picked from commit 1967fd3b1018c8c609b388f4dc49afc641f501c5)
-
f04e60f4
by Mike Blumenkrantz
at 2022-04-21T21:03:05-07:00
intel/isl: fix 2d view of 3d textures
according to KHR_gl_texture_3D_image:
If <target> is EGL_GL_TEXTURE_3D_KHR, <buffer> must be the name of a
complete, nonzero, GL_TEXTURE_3D (or equivalent in GL extensions) target
texture object, cast
into the type EGLClientBuffer. <attr_list> should specify the mipmap
level (EGL_GL_TEXTURE_LEVEL_KHR) and z-offset (EGL_GL_TEXTURE_ZOFFSET_KHR)
which will be used as the EGLImage source; the specified mipmap level must
be part of <buffer>, and the specified z-offset must be smaller than the
depth of the specified mipmap level.
thus a 2d view of a 3d surface is not only legal, it's part of the spec and
must be supported when available
cc: mesa-stable
Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15584>
(cherry picked from commit 65ec846f777a8a112510d9d7a2da2f225880a0e6)
-
f0f82063
by Lionel Landwerlin
at 2022-04-21T21:03:05-07:00
anv: fix dynamic sample locations on Gen7/7.5
3DSTATE_MULTISAMPLE should be baked into the pipeline if not dynamic.
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Fixes: 27ee40f4c9d8 ("anv: Add support for sample locations")
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15310>
(cherry picked from commit 6f5f817c0fa414d23b7e843fc27237053b072a2c)
-
f6d46116
by Pierre-Eric Pelloux-Prayer
at 2022-04-21T21:03:05-07:00
drirc: enable radeonsi_zerovram for Black Geyser
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/6180
Cc: mesa-stable
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15559>
(cherry picked from commit 9c2605ae4270005b33303acb38955fe3ab6c8a51)
-
87a3c6ea
by Samuel Pitoiset
at 2022-04-21T21:03:05-07:00
radv: save/restore the stencil write mask during internal driver operations
The slow depth/stencil clear path would overwrite the stencil write
mask otherwise.
This fixes few Zink failures.
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/15667>
(cherry picked from commit b784910ac78ff067b4dd8bb3113738be8c2e8183)
Conflicts:
src/gallium/drivers/zink/ci/zink-radv-fails.txt
-
b928a28c
by Erik Faye-Lund
at 2022-04-21T21:03:05-07:00
vbo/dlist: do not try to pad an empty draw
In the case where u_index_generator returns zero new vertices, we never
filled tmp_indices before trying to duplicate the last veretx. This
causes us to read unitialized memory.
This fixes a Valgrind issue triggering in glxgears on Zink:
---8<---
==296461== Invalid read of size 2
==296461== at 0x570F335: compile_vertex_list (vbo_save_api.c:733)
==296461== by 0x570FEFB: wrap_buffers (vbo_save_api.c:1021)
==296461== by 0x571050A: upgrade_vertex (vbo_save_api.c:1134)
==296461== by 0x571050A: fixup_vertex (vbo_save_api.c:1251)
==296461== by 0x57114D1: _save_Normal3f (vbo_attrib_tmp.h:315)
==296461== by 0x10B750: ??? (in /usr/bin/glxgears)
==296461== by 0x10A2CC: ??? (in /usr/bin/glxgears)
==296461== by 0x4B3F30F: (below main) (in /usr/lib/libc.so.6)
==296461== Address 0x11ca23de is 2 bytes before a block of size 1,968 alloc'd
==296461== at 0x4845899: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==296461== by 0x570E647: compile_vertex_list (vbo_save_api.c:604)
==296461== by 0x570FEFB: wrap_buffers (vbo_save_api.c:1021)
==296461== by 0x571050A: upgrade_vertex (vbo_save_api.c:1134)
==296461== by 0x571050A: fixup_vertex (vbo_save_api.c:1251)
==296461== by 0x57114D1: _save_Normal3f (vbo_attrib_tmp.h:315)
==296461== by 0x10B750: ??? (in /usr/bin/glxgears)
==296461== by 0x10A2CC: ??? (in /usr/bin/glxgears)
==296461== by 0x4B3F30F: (below main) (in /usr/lib/libc.so.6)
---8<---
Fixes: dcbf2423d28 ("vbo/dlist: add vertices to incomplete primitives")
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15633>
(cherry picked from commit 83ed40cdcd54996b12eb78824f469ae8e44eb6fe)
-
ee6d869e
by Samuel Pitoiset
at 2022-04-21T21:03:05-07:00
radv: suspend/resume queries during internal driver operations
Pipeline statistics and occlusion queries shouldn't be enabled for
internal driver operations like clears. Transform feedback queries
don't have to be suspended because the driver doesn't use streamout.
This fixes a bunch of Zink failures.
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/15660>
(cherry picked from commit 738a6760e3723978877bc6ffc02a3792d4c4b3d6)
Conflicts:
src/gallium/drivers/zink/ci/zink-radv-fails.txt
-
64c2afe7
by Ian Romanick
at 2022-04-21T21:03:06-07:00
nir: intel/compiler: Lower TXD on array surfaces on DG2+
DG2 can only do sample_d and sample_d_c on 1D and 2D surfaces. Cube
maps and 3D surfaces were already handled, but 1D array and 2D array
surfaces were not.
Fixes the following Vulkan CTS failures on DG2:
dEQP-VK.glsl.texture_functions.texturegradclamp.isampler1darray_fragment
dEQP-VK.glsl.texture_functions.texturegradclamp.isampler2darray_fragment
dEQP-VK.glsl.texture_functions.texturegradclamp.sampler1darray_fixed_fragment
dEQP-VK.glsl.texture_functions.texturegradclamp.sampler1darray_float_fragment
dEQP-VK.glsl.texture_functions.texturegradclamp.sampler2darray_fixed_fragment
dEQP-VK.glsl.texture_functions.texturegradclamp.sampler2darray_float_fragment
dEQP-VK.glsl.texture_functions.texturegradclamp.usampler1darray_fragment
dEQP-VK.glsl.texture_functions.texturegradclamp.usampler2darray_fragment
The Fixes: tag below is a bit misleading. This commit adds another
lowering, similar to the one in the Fixes: commit, that probably should
have been added at the same time. I just want to make sure this commit
gets applied everywhere that commit was also applied.
Fixes: 635ed58e527 ("intel/compiler: Lower txd for 3D samplers on XeHP.")
Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15681>
(cherry picked from commit 7fd1955412e252957486e0430b2e5a6e7c755364)
-
0c834a03
by Dave Airlie
at 2022-04-21T21:03:06-07:00
llvmpipe: fix nr_sampler_view in key creation.
This was doing MAX2() but nr_sampler_views hasn't been initialised
yet.
Fixes: 690cc3bb803a ("llvmpipe: overhaul fs/cs variant keys to be simpler.")
Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Reviewed-by: Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15603>
(cherry picked from commit dcadeb9a4778b12447dd5c37c80731df1fb1d78f)
-
1df74113
by Samuel Pitoiset
at 2022-04-21T21:03:06-07:00
radv: save/restore the stencil reference during internal driver operations
I think I should improve this to be more robust.
Gitlab: https://gitlab.freedesktop.org/mesa/mesa/-/issues/6243
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/15700>
(cherry picked from commit c439735a91aef2f26f2233825db1f68183283678)
Conflicts:
src/gallium/drivers/zink/ci/zink-radv-fails.txt
-
449a4eb0
by Jason Ekstrand
at 2022-04-21T21:03:06-07:00
anv: Disallow blending on swizzled formats
Fixes: c20f78dc5d7e ("anv: Support swizzled formats.")
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15624>
(cherry picked from commit 54509d27d9cf7f85db30111a3b74bbdd031f2d9b)
-
5a9d7c8d
by Mike Blumenkrantz
at 2022-04-21T21:03:06-07:00
zink: fix max geometry input component advertising
forgot to divide by 4 somehow
cc: mesa-stable
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15716>
(cherry picked from commit c5f44e51fb3a8e2cfc786e4682d8a0193f8e060a)
-
c70adca8
by Erik Faye-Lund
at 2022-04-21T21:03:06-07:00
d3d12: fix return-code without dxcompiler.dll
When we don't have a good dxcompiler.dll that we can load IDxcLibrary
from to help with diagnostics, we currently return true for validation
even if the validation actually failed.
Let's fix that, and also add a debug-message explaining what went wrong
for those who are debugging and wondering what's up.
Fixes: 2ea15cd661c ("d3d12: introduce d3d12 gallium driver")
Reviewed-by: Jesse Natalie <jenatali@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15744>
(cherry picked from commit 837f781c9a4f909ac1ee0b3b8331af87301b5fc3)
-
ee46e64a
by Lionel Landwerlin
at 2022-04-21T21:03:06-07:00
blorp: disable depth bounds
Otherwise the driver setting interacts with it.
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Fixes: 939ddccb7a54 ("anv: Add support for depth bounds testing.")
Fixes: 1df871f8ff75 ("iris: Add support for depth bounds testing.")
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15763>
(cherry picked from commit 56ef501e3aa4b12f41c0520bbc5fa920b0efa0f8)
Conflicts:
src/intel/ci/anv-tgl-fails.txt
-
3c0ba49a
by Mike Blumenkrantz
at 2022-04-21T21:03:06-07:00
nir/lower_tex: avoid adding invalid LOD to RECT textures
this is illegal
Fixes: 74ec2b12be1 ("nir/lower_tex: Rework invalid implicit LOD lowering")
Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15804>
(cherry picked from commit 6cfcf891c1d5baa1e5e073b875831884ed049b5a)
-
7148f7d0
by Emma Anholt
at 2022-04-21T21:03:06-07:00
nir_to_tgsi: Fix emitting the sample number for non-array MSAA image access.
It's always in .w, rather than being the next component after the
x/y/array index.
Fixes: c6d3fd8c21e0 ("gallium/ntt: Emit sample index when necessary for image load/store.")
Reviewed-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15825>
(cherry picked from commit 949bc15ea510be9ad6d1565fa3dd069c0140950b)
Conflicts:
src/gallium/auxiliary/nir/nir_to_tgsi.c
-
81441ed1
by Emma Anholt
at 2022-04-21T21:03:06-07:00
nir_to_tgsi: Fix the address reg mapping for images and SSBOs to match G-T-T.
I missed these in the previous fix to mimic GLSL-to-TGSI address reg
behavior, which r600 relies on.
Fixes: 4bb9c0a28a5f ("nir_to_tgsi: Use the same address reg mappings as GLSL-to-TGSI did.")
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15824>
(cherry picked from commit e15154a735d8507f45117471f854107442e8a339)
Conflicts:
src/gallium/auxiliary/nir/nir_to_tgsi.c
-
c5546720
by Francisco Jerez
at 2022-04-21T21:03:06-07:00
intel/perf: Fix OA report accumulation on Gfx12+.
The intel_perf_query path used for performance queries on GL was
passing a bogus "end" pointer to intel_perf_query_result_accumulate(),
causing it to accumulate garbage values. This was causing the values
of many performance counters to be corrupted.
The "end" pointer was incorrect because the current code was assuming
that different OA reports were located TOTAL_QUERY_DATA_SIZE bytes
apart, which is a hard-coded preprocessor define. However recent
(Gfx12+) hardware generations use a variable query size determined by
the query layout. Use the size derived from it instead, and remove
the stale define.
Fixes: 3c513250255d6a ("intel/perf: switch query code to use query layout")
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15783>
(cherry picked from commit e858da39e54ed34712ae044d80bcc23c398b53f3)
-
9cd5c779
by Emma Anholt
at 2022-04-21T21:03:06-07:00
turnip: Stop allocating unused pvtmem space in the pipeline CS.
The pvtmem was split off to a separate read/write BO.
Fixes: 931ad19a1817 ("turnip: make cmdstream bo's read-only to GPU")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15038>
(cherry picked from commit e0fbdd3eda951d8589a2ea8f3a46fe032fcf1646)
-
0c3ed4b2
by Dave Airlie
at 2022-04-21T21:03:06-07:00
draw: handle tess eval shader when getting num outputs
This tripped up some pointsize/prim id interactions with zink.
Acked-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15872>
(cherry picked from commit 60c61d7b68803ac7ea783f720bf91920ba966226)
-
4a7765e9
by Marcin Ślusarz
at 2022-04-21T21:03:06-07:00
anv: fix push constant lowering for task/mesh
Fixes: a6031cd9bd4 ("anv: fix push constant lowering with bindless shaders")
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15850>
(cherry picked from commit f844ce66c8afc9104a6bd7c451afb02a8b9da5a8)
-
5ab0185c
by Dylan Baker
at 2022-04-21T21:03:06-07:00
.pick_status.json: Mark 2b688942c1b1f5ca4f3e4d33231579149aeb8fdb as denominated
-
c1346ca6
by Jason Ekstrand
at 2022-04-21T21:03:06-07:00
nir/lower_int64: Fix [iu]mul_high handling
e551040c602d, which added a new mechanism for 64-bit imul which is more
efficient on BDW and later Intel hardware also introduced a bug where we
weren't properly walking both X and Y. No idea how testing didn't find
this.
Fixes: e551040c602d ("nir/glsl: Add another way of doing lower_imul64 for gen8+"
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/6306
Reviewed-by: Matt Turner <mattst88@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15829>
(cherry picked from commit d0ace287902b1fac4a8ddcb91fac65c99218f01b)
-
ba171ded
by Kenneth Graunke
at 2022-04-21T21:03:06-07:00
iris: Add pre-draw flushing for stream output targets
When stream output is active, we need to let the cache tracker know
about any SO buffers, which we access via IRIS_DOMAIN_OTHER_WRITE.
In particular, we may have written to those buffers via another
mechanism, such as BLORP buffer copies. In that case, previous writes
happened via IRIS_DOMAIN_RENDER_WRITE, in which case we'd need to flush
both the render cache and the tile cache to make that data globally-
observable before we begin writing via streamout, which is incoherent
with the earlier mechanism.
Fixes misrendering in Ryujinx.
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/6085
Fixes: d8cb76211c5 ("iris: Fix MOCS for buffer copies")
Reviewed-by: Francisco Jerez <currojerez@riseup.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15275>
(cherry picked from commit 9c8874b9ab3705f6474c1b02de0700ab356ffb18)
-
c3b8e592
by Mike Blumenkrantz
at 2022-04-21T21:03:06-07:00
zink: use the calculated last struct member idx for ssbo size in ntv
this may or may not be 1
cc: mesa-stable
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15894>
(cherry picked from commit ff4dcb76d91daa8dcd5389ca9552695e81687e95)
-
16a25a5a
by Mike Blumenkrantz
at 2022-04-21T21:03:06-07:00
zink: avoid creating ssbo variable types with multiple runtime arrays
this is illegal
affects:
KHR-GL46.shader_storage_buffer_object.advanced-unsizedArrayLength-cs-packed-matC
cc: mesa-stable
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15894>
(cherry picked from commit fcd6b2a47a9bff248a35edbeef5ae27a3ca643e0)
-
4f038076
by Jason Ekstrand
at 2022-04-21T21:03:06-07:00
iris: Don't leak scratch BOs
Fixes: 4d219b0eb3d6 ("iris: implement scratch space!")
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15897>
(cherry picked from commit 6ca328988f8bb56c8085ebb92dad6439bdced623)
-
8b14b9dc
by Mike Blumenkrantz
at 2022-04-21T21:03:06-07:00
nir/lower_tex: fix rect queries with lower_rect set
queries still need the sampler_dim changed
Fixes: 682e14d3eae ("nir: lower_tex: Don't normalize coordinates for TXF with RECT")
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15895>
(cherry picked from commit 5b0634d7353017464c0bdb9e009f4b2d98948187)
-
c327d444
by Mike Blumenkrantz
at 2022-04-21T21:03:06-07:00
mesa/st: set normalized coords for RECT samplers if rects are unsupported
the shaders will never see these, so set the expected value for 2D
cc: mesa-stable
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15895>
(cherry picked from commit 2058ae7b430457dd5dcc2a2e7eaf742981bfbf4f)
-
45e9ab29
by Jason Ekstrand
at 2022-04-21T21:03:06-07:00
nir/opcodes: fisfinite32 should return bool32
Otherwise constant-folding will fold it to 0/1 instead of 0/~0.
Fixes: 330e28155f79 ("nir: add 32-bit bool of fisfinite")
Reviewed-by: Alyssa Rosenzweig <alyssa@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15984>
(cherry picked from commit 5c9e4d400a66a0d139ebacab9ec9d0e135116812)
-
ed3b3226
by Icecream95
at 2022-04-21T21:03:06-07:00
panfrost: Stop overallocating compressed textures
The line stride uses the number of bytes in the entire block, so both
the width and height need to be reduced for compressed textures so
that the surface stride is calculated correctly.
Fixes: 051d62cf041 ("panfrost: Add a pan_image_layout_init() helper")
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/6286
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15989>
(cherry picked from commit f267000240b629c48d4935ff38bbe70fe85435ce)
-
4deeb4b5
by Emma Anholt
at 2022-04-21T21:03:06-07:00
nir: Add lowering for fround_even on r300.
When we put NIR in the compiler stack for r300, indirect addressing broke
for gallium nine. DX's array indirects round the float value, so the DX
shader gets mapped to a TGSI "ARR ADDR[0] src.x" instruction. Translating
that to NIR maps to r0[f2i32(fround(src.x))]. While we might hope that in
translation back using nir-to-tgsi after optimization we would recognize
the construct and emit ARR again, that's going to be error prone (think
"what if src.x is in a NIR register?") so we need a fallback plan. r300
will be able to handle this lowering, so get it in place first to fix the
regression.
Fixes: #6297
Fixes: 7d2ea9b0edef ("r300: Request NIR shaders from mesa/st and use NIR-to-TGSI.")
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15870>
(cherry picked from commit 6947016b468417f60203db68c34e0961e4ac7845)
-
58bc50bb
by Lionel Landwerlin
at 2022-04-21T21:03:06-07:00
intel: fix URB programming for GT1s
We're missing a programming restriction.
Hopefully fixing
dEQP-VK.spirv_assembly.instruction.graphics.float16.arithmetic_1.* on
Gfx9atoms
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Cc: mesa-stable
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/6216
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Caio Oliveira <caio.oliveira@intel.com>.
Tested-by: Mark Janes <markjanes@swizzler.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15596>
(cherry picked from commit b07c215c353fbbf12f9a1cb154f0a46b52451b6a)
-
b40e15c0
by Samuel Pitoiset
at 2022-04-21T21:03:06-07:00
radv: fix initializing pipeline_key::topology for GFX9 and older
This is used to determine the geometry shader info on GFX9, and it
looks like it was broken for topologies that use adjacency.
This is also used to remove PSIZ from shaders that don't need it.
Found by inspection.
fossils-db (Polaris10):
Totals from 140 (0.10% of 135960) affected shaders:
SGPRs: 10448 -> 9696 (-7.20%)
VGPRs: 4376 -> 4264 (-2.56%)
CodeSize: 164316 -> 161028 (-2.00%)
Instrs: 26449 -> 25767 (-2.58%)
Latency: 184448 -> 180468 (-2.16%)
InvThroughput: 80772 -> 79092 (-2.08%)
VClause: 337 -> 328 (-2.67%); split: -2.97%, +0.30%
SClause: 859 -> 813 (-5.36%); split: -5.70%, +0.35%
Copies: 1027 -> 790 (-23.08%)
PreSGPRs: 2751 -> 2331 (-15.27%)
PreVGPRs: 3887 -> 3836 (-1.31%)
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/15948>
(cherry picked from commit ed7d831525436ef63092b47f465a184fff4eff74)
-
1163e9a8
by Sviatoslav Peleshko
at 2022-04-21T21:03:06-07:00
mesa: flush bitmap caches when changing scissors or window rects state
If we change the sate without flushing the bitmap cache, the cache might be
rendered with the new scissor, which excludes some parts that should've
been rendered with the old state, and vice versa.
Cc: mesa-stable
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/6233
Signed-off-by: Sviatoslav Peleshko <sviatoslav.peleshko@globallogic.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15881>
(cherry picked from commit dd7278aa10af21b8622cb5721253eb90c3c0752f)
-
1c054c8a
by Mike Blumenkrantz
at 2022-04-21T21:03:06-07:00
zink: reject resource creation if format features don't match attachment
if a rendertarget-specified image can't be a rendertarget or a blit dst
then it can't be used for the designated functionality and must be rejected
cc: mesa-stable
fixes hangs on various nv driver versions:
dEQP-GLES2.functional.texture.mipmap.2d.generate.rgba5551_fastest
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15960>
(cherry picked from commit 37ac8647fca4ab8aa1be6879fa810def7404449c)
-
c96f9f66
by Mike Blumenkrantz
at 2022-04-21T21:03:06-07:00
zink: unconditionally set line width on rasterizer state change
the pipe cap is used for gating wideline support, so this will always
be 1.0 when not supported
furthermore, the previous code wasn't accurately checking line width
for tess shaders, breaking tests
cc: mesa-stable
fixes (nv):
KHR-GL46.tessellation_shader.tessellation_control_to_tessellation_evaluation.gl_PatchVerticesIn
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15960>
(cherry picked from commit d8b66fcbf9aba2ad2f69de8e45af4c3c8f2a8323)
-
59525ce7
by Mike Blumenkrantz
at 2022-04-21T21:03:06-07:00
zink: support restart with PIPE_PRIM_LINES_ADJACENCY if ext is available
cc: mesa-stable
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15978>
(cherry picked from commit cd9424d93f3da62397c0cdaf70076512e217b464)
-
4e20a87a
by Erik Faye-Lund
at 2022-04-21T21:03:06-07:00
vulkan: explicitly cast object-type enum
VkObjectType and VkDebugReportObjectTypeEXT has the same enum-values.
Why the Vulkan WG thought this was a good idea, beats me. But it's what
we have to live with now.
Anyway, instead of having a statement that implicitly casts two
different values from the former to the latter, let's fully relsove the
type as the former, and cast the value when using it instead.
Fixes: 41318a58196 ("vulkan: Use vk_object_base::type for debug_report")
Acked-by: Alyssa Rosenzweig <alyssa@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15547>
(cherry picked from commit b27a2ba4fcb07d0d55e237f6d62c8dd69e0f1380)
-
73bdb8a9
by Lionel Landwerlin
at 2022-04-21T21:03:06-07:00
anv: allow getting the address of the beginning of the batch
There is no reason not to be able to get it.
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Fixes: 34a0ce58c7f8 ("anv: add a new execution mode for secondary command buffers")
Reviewed-by: Marcin Ślusarz <marcin.slusarz@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15968>
(cherry picked from commit 184084e21c096e10d958372c8745facdf7367396)
-
d2a21641
by Marcin Ślusarz
at 2022-04-21T21:03:06-07:00
anv: invalidate all metadata in anv_nir_lower_ubo_loads
lower_ubo_load_instr may insert "if" blocks.
Fixes: 61749b5a151 ("anv: Add a pass for lowering A64 UBO access")
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15924>
(cherry picked from commit 5bd3ba5b67f4a51bf21ea30b0a4f1c8d1551568e)
-
abc89d4f
by Marcin Ślusarz
at 2022-04-21T21:03:07-07:00
intel/compiler: invalidate all metadata in brw_nir_lower_intersection_shader
New "if" blocks were inserted.
Fixes: 303378e1dd4 ("intel/rt: Add lowering for combined intersection/any-hit shaders")
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15924>
(cherry picked from commit 4fddef33d5912c09677d92085911dadd60720072)
-
393180a1
by Emma Anholt
at 2022-04-21T21:03:07-07:00
nouveau/nir: Fix the inverted sense of usesSampleMaskIn.
Fixes: 9f3d5e99ea60 ("compiler: Use util/bitset.h for system_values_read")
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Reviewed-by: Karol Herbst <kherbst@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16063>
(cherry picked from commit af718674ab50eebd2a97b85455214bda3864fb1b)
-
e3f21dbc
by Dylan Baker
at 2022-04-21T21:03:07-07:00
.pick_status.json: Mark dd783d7144932d79ef761810d46e45c3df7148cf as denominated
-
febfe471
by Mike Blumenkrantz
at 2022-04-21T21:03:07-07:00
zink: handle device-local unsynchronized maps
this is only possible when tc determines the buffer is not in use
and decides to return a pointer immediately, so just give back a staging
buffer
cc: mesa-stable
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15979>
(cherry picked from commit d7256043b3ac3652a070ed0384db80effc99ed96)
-
340e0425
by Mike Blumenkrantz
at 2022-04-21T21:03:07-07:00
util/draw: fix map size of indirect buffer in util_draw_indirect_read
this was incorrectly calculating too small of a map region if
the stride was less than the size of the struct
Fixes: 3eb99323172 ("aux/draw: add a util function for reading back indirect draw params")
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15963>
(cherry picked from commit efca37d4154496f9318064ff40e931233a4e5748)
-
93a264f7
by Mike Blumenkrantz
at 2022-04-21T21:03:07-07:00
util/draw: handle draw_count=0 when reading indirect parameters
Fixes: 3eb99323172 ("aux/draw: add a util function for reading back indirect draw params")
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15963>
(cherry picked from commit 07437fa3bdd88a51c497aeaa7ee4dce8c2724579)
-
5d9d7059
by Mike Blumenkrantz
at 2022-04-21T21:03:07-07:00
util/draw: fix indirect draw count readback
if there is an indirect count, always use it
Fixes: 3eb99323172 ("aux/draw: add a util function for reading back indirect draw params")
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15963>
(cherry picked from commit ec124916206fbae63ee9e3c2c73de8255c807c98)
-
c057710c
by Michael Olbrich
at 2022-04-21T21:03:07-07:00
crocus: export GEM handle with RDWR access rights
Without this, it is impossible to export gem handles with write access.
This was fixed the same way for
i965 (https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10850) and
iris (https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10851).
Cc: mesa-stable
Reviewed-by: Dave Airlie <airlied@redhat.com>`
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16057>
(cherry picked from commit 5c4906dc0f0b9609760dc0a18805045e568b2d0b)
-
05296c5f
by Jordan Justen
at 2022-04-21T21:03:07-07:00
intel/dev: Add device info for RPL-P
Cc: mesa-stable
Ref: https://patchwork.freedesktop.org/series/102701/
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/16054>
(cherry picked from commit d257494ec4d826aec8841845479215820e612917)
-
04881310
by Dave Airlie
at 2022-04-21T21:03:07-07:00
u_blitter/stencil: take dstbox x/y into accounts for dst fb width
When setting the dst framebuffer width height, it might be silly
to constrain this beyond the dst resource, but at least constrain
it correctly to take account of x/y offsets.
This fixes some uses of this as a fallback for zink with
GTF-GL46.gtf30.GL3Tests.framebuffer_blit.framebuffer_blit_functionality_stencil_blit
Fixes: b4c07a8a87d0 ("gallium/util: allow scaling blits for stencil-fallback")
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Acked-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16069>
(cherry picked from commit dbc264f50418306650e9ec5a0b8613fe0aabb228)
-
fd7b604d
by Dave Airlie
at 2022-04-21T21:03:07-07:00
util/stencil: fix stencil fallback blit shader texture types.
src/gallium/auxiliary/tgsi/tgsi_scan.c:287: scan_src_operand: Assertion `info->sampler_targets[index] == target' failed.
assert was being triggered by
GTF-GL46.gtf30.GL3Tests.framebuffer_blit.framebuffer_blit_functionality_multisampled_to_singlesampled_blit
using the stencil fallback with zink.
Fixes: f05dfddeb1ad ("u_blitter: fix stencil blit fallback for crocus.")
Acked-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16069>
(cherry picked from commit 4b7ba3869be3f706efc717d40535c61d5c7a20c7)
-
e697e5df
by Alexey Bozhenko
at 2022-04-21T21:03:07-07:00
spirv: fix OpBranchConditional when both branches are the same
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/6246
Signed-off-by: Bozhenko Alexey <oleksii.bozhenko@globallogic.com>
Fixes: 64cb143b922 ("spirv: Fix handling of OpBranchConditional with same THEN and ELSE")
Reviewed-by: Caio Oliveira <caio.oliveira@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15929>
(cherry picked from commit 25acf1d8697ae62a2eead1bca9e5f8ca6eb2b372)
-
434b24f6
by Dylan Baker
at 2022-04-21T21:03:09-07:00
.pick_status.json: Update to 9f44a264623461c98368185b023d99446676e039
-
6992aa3e
by Dylan Baker
at 2022-04-21T21:03:38-07:00
docs: add release notes for 22.0.2
-
f1d9e66a
by Dylan Baker
at 2022-04-21T21:04:00-07:00
VERSION: bump for 22.0.2 release
-
c37095da
by Timo Aaltonen
at 2022-04-22T08:24:40+03:00
Merge branch 'upstream-unstable' into debian-unstable
-
248c51ed
by Timo Aaltonen
at 2022-04-22T08:25:30+03:00
version bump
-
d8af261a
by Timo Aaltonen
at 2022-04-22T08:54:52+03:00
release to sid