Patrick Lerda
24a5165cdf
r300: fix constants_remap_table memory leak related to the dummy shader path
...
A last memory leak related to constants_remap_table is happening.
This memory leak is triggered by two deqp-gles2 tests.
For instance, this issue is triggered with
"deqp-gles2 --deqp-case=dEQP-GLES2.functional.uniform_api.random.13":
Direct leak of 336 byte(s) in 1 object(s) allocated from:
#0 0x7f1b4a5de7ef in __interceptor_malloc (/usr/lib64/libasan.so.6+0xb17ef)
#1 0x7f1b401a2cdf in rc_remove_unused_constants ../src/gallium/drivers/r300/compiler/radeon_remove_constants.c:101
#2 0x7f1b40185386 in rc_run_compiler_passes ../src/gallium/drivers/r300/compiler/radeon_compiler.c:476
#3 0x7f1b40185625 in rc_run_compiler ../src/gallium/drivers/r300/compiler/radeon_compiler.c:498
#4 0x7f1b401c14d2 in r3xx_compile_fragment_program ../src/gallium/drivers/r300/compiler/r3xx_fragprog.c:172
#5 0x7f1b401b669a in r300_translate_fragment_shader ../src/gallium/drivers/r300/r300_fs.c:516
#6 0x7f1b401baf73 in r300_pick_fragment_shader ../src/gallium/drivers/r300/r300_fs.c:592
#7 0x7f1b40128db7 in r300_create_fs_state ../src/gallium/drivers/r300/r300_state.c:1071
#8 0x7f1b3e67799d in st_create_fp_variant ../src/mesa/state_tracker/st_program.c:1073
#9 0x7f1b3e680285 in st_get_fp_variant ../src/mesa/state_tracker/st_program.c:1119
#10 0x7f1b3e6812fa in st_precompile_shader_variant ../src/mesa/state_tracker/st_program.c:1284
#11 0x7f1b3e6812fa in st_finalize_program ../src/mesa/state_tracker/st_program.c:1363
#12 0x7f1b3f13d501 in st_link_glsl_to_nir ../src/mesa/state_tracker/st_glsl_to_nir.cpp:754
#13 0x7f1b3f13d501 in st_link_shader ../src/mesa/state_tracker/st_glsl_to_nir.cpp:990
#14 0x7f1b3efeef75 in link_program ../src/mesa/main/shaderapi.c:1336
#15 0x7f1b3efeef75 in link_program_error ../src/mesa/main/shaderapi.c:1445
Fixes: 29df85788a ("r300: fix constants_remap_table memory leak")
Signed-off-by: Patrick Lerda <patrick9876@free.fr >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28522 >
2024-04-03 08:28:42 +00:00
Erik Faye-Lund
dfc6330b85
panvk: use integers instead of strings
...
There's no good reason to use strings here instead of integers.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28533 >
2024-04-03 08:08:00 +00:00
Mike Blumenkrantz
3352803510
zink: fix shaderdb pipeline compile
...
this assert is always triggered with shaderdb, but it's not relevant there
Fixes: 0ebd6f52a2 ("zink: reuse rast_prim for line-rasterization check")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28525 >
2024-04-03 06:37:31 +00:00
Mike Blumenkrantz
18fbe63ff2
zink: make descriptor pool creation more robust
...
cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28467 >
2024-04-03 05:48:19 +00:00
Mike Blumenkrantz
c2e0c2c67f
zink: don't use set_foreach_remove with dmabuf_exports
...
foreach_remove cannot be used if the set ever has members deleted,
and this set may have deleted members
Fixes: 7b7a581a52 ("zink: prune dmabuf export tracking when adding resource binds")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28464 >
2024-04-03 05:22:43 +00:00
Yonggang Luo
3114917986
util: Turn futex_wake parameter to int32_t for consistence across platforms
...
Signed-off-by: Yonggang Luo <luoyonggang@gmail.com >
Reviewed-by: Jesse Natalie <jenatali@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28473 >
2024-04-03 00:55:24 +00:00
Yonggang Luo
ca9738cd7a
util: futex_wait use TIME_MONOTONIC on win32 for consistence with other platform
...
Signed-off-by: Yonggang Luo <luoyonggang@gmail.com >
Reviewed-by: Jesse Natalie <jenatali@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28473 >
2024-04-03 00:55:24 +00:00
Yonggang Luo
54e3fde5ca
util: Fixes futex_wait on win32
...
The timeout compute is invalid
Fixes: 095dfc6caa ("util: Move the implementation of futex_wake and futex_wait from futex.h to futex.c")
Signed-off-by: Yonggang Luo <luoyonggang@gmail.com >
Reviewed-by: Jesse Natalie <jenatali@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28473 >
2024-04-03 00:55:24 +00:00
Timur Kristóf
8a24610477
nir/recompute_io_bases: Sort per-primitive PS inputs last.
...
Some hardware requires that per-primitive FS inputs are
sorted last, and nir_assign_io_var_locations can already
take care of this.
Add the same consideration to nir_recompute_io_bases.
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28489 >
2024-04-02 23:00:01 +00:00
Timur Kristóf
ecbf3464f6
nir: Record per-primitive inputs without variables.
...
Previously, this information would have been lost when the
shader has no I/O variables.
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28489 >
2024-04-02 23:00:01 +00:00
Timur Kristóf
b085248819
nir/gather_info: Record per-primitive outputs without variables.
...
Previously, this information would have been lost when the
shader has no I/O variables.
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28489 >
2024-04-02 23:00:01 +00:00
Samuel Pitoiset
a535425fb6
radv: enable radv_zero_vram for Red Dead Redemption 2
...
This fixes some very rare glitches that are unrelated to DCC.
Cc: mesa-stable
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/8719
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28393 >
2024-04-02 21:31:46 +00:00
Samuel Pitoiset
89182faee8
radv: add radv_device_generated_commands.h
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28510 >
2024-04-02 21:04:53 +00:00
Samuel Pitoiset
c4e83026af
radv: add radv_perfcounter.h
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28510 >
2024-04-02 21:04:53 +00:00
Samuel Pitoiset
bccaeab503
radv: add radv_query.h
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28510 >
2024-04-02 21:04:53 +00:00
Samuel Pitoiset
bbb2e82e9a
radv: add radv_image_view.h
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28510 >
2024-04-02 21:04:53 +00:00
Samuel Pitoiset
d7141bbf79
radv: add radv_image.h
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28510 >
2024-04-02 21:04:53 +00:00
Samuel Pitoiset
ce54440af3
radv: add radv_video.h
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28510 >
2024-04-02 21:04:53 +00:00
Samuel Pitoiset
c925f03712
radv: add radv_buffer.h
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28510 >
2024-04-02 21:04:53 +00:00
Samuel Pitoiset
4ba5ba8017
radv: add radv_buffer_view.h
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28510 >
2024-04-02 21:04:53 +00:00
Samuel Pitoiset
9a09954637
radv: add radv_event.h
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28510 >
2024-04-02 21:04:53 +00:00
Samuel Pitoiset
0c8f0c3918
radv: add radv_sampler.h
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28510 >
2024-04-02 21:04:53 +00:00
Eric Engestrom
e4aa095c6e
ci/deqp: backport fix for dEQP-VK.pipeline.*.render_to_image.*.huge.*
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28498 >
2024-04-02 19:49:09 +00:00
Georg Lehmann
80652de67b
aco/ra: use SDWA for 16bit instructions when the second byte is blocked
...
Found by inspection, I think this can happen with pack_32_4x8(f2u8(a@16)),
which will use v_cvt_u16_f16 (a 16bit instruction) with a v1b definition.
No Foz-DB changes on Navi21.
Cc: mesa-stable
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28443 >
2024-04-02 19:03:14 +00:00
Eric Engestrom
ff37f68740
meson: add VK_DRIVER_FILES to devenv, alongside the old VK_ICD_FILENAMES
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28516 >
2024-04-02 18:08:52 +00:00
Eric Engestrom
96e8648b32
docs: replace references to the deprecated VK_INSTANCE_LAYERS with the new VK_LOADER_LAYERS_ENABLE
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28516 >
2024-04-02 18:08:52 +00:00
Eric Engestrom
4b8735cd4e
ci: raise the log level threshold of spirv logs
...
Avoid the wall of "Unsupported SPIR-V capability" warnings in CI job
log, hiding away useful output:
ERROR - dEQP error: SPIR-V WARNING:
ERROR - dEQP error: In file ../src/compiler/spirv/spirv_to_nir.c:4779
ERROR - dEQP error: Unsupported SPIR-V capability: SpvCapabilityDrawParameters (4427)
ERROR - dEQP error: 28 bytes into the SPIR-V binary
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28503 >
2024-04-02 17:25:42 +00:00
Timur Kristóf
3223650bad
radv: Reuse TCS offchip layout between TCS and TES.
...
Using the same SGPR bitfield in TCS and TES will simplify driver
code and make RADV consistent with RadeonSI.
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/28490 >
2024-04-02 16:54:09 +00:00
Timur Kristóf
4b0b0e675c
radv: Include output patch size in TCS offchip layout.
...
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/28490 >
2024-04-02 16:54:09 +00:00
Timur Kristóf
2a76f821af
radv: Change number of patches in TCS offchip layout to match RadeonSI.
...
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/28490 >
2024-04-02 16:54:09 +00:00
Timur Kristóf
820370ca08
radv: Change input patch size in TCS offchip layout to match RadeonSI.
...
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/28490 >
2024-04-02 16:54:08 +00:00
Timur Kristóf
d116272689
radv: Add number of LS and HS outputs to tcs_offchip_layout.
...
And calculate the LS-HS per-vertex stride in shader code.
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/28490 >
2024-04-02 16:54:08 +00:00
Rob Clark
5a45077d84
egl/android: Fix gl_config dereference
...
Fixes: 273e54391a ("egl/android: Remove hard-coded color-channel data")
Signed-off-by: Rob Clark <robdclark@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28509 >
2024-04-02 15:52:23 +00:00
Samuel Pitoiset
eb4036a4be
radv: move some VK_DEFINE_NONDISP_HANDLE_CASTS to radv_descriptor_set.h
...
Use that right after the structures are declared.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28519 >
2024-04-02 13:55:52 +00:00
Samuel Pitoiset
964f1ed023
radv: move radv_device_supports_etc() to radv_physical_device.c
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28519 >
2024-04-02 13:55:52 +00:00
Samuel Pitoiset
57dd6691df
radv: pass a radv_physical_device to radv_use_llvm_for_stage()
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28519 >
2024-04-02 13:55:52 +00:00
Samuel Pitoiset
1a48e57a3d
radv: declare format related functions in radv_formats.h
...
They are all defined in radv_formats.c.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28519 >
2024-04-02 13:55:52 +00:00
Samuel Pitoiset
20963fbba5
radv: declare radv_cmd_update_descriptor_xxx() in radv_descriptor_set.h
...
They are defined in radv_descriptor_set.c.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28519 >
2024-04-02 13:55:52 +00:00
Joshua Ashton
5f7a5a27ef
wsi: Implement linux-drm-syncobj-v1
...
This implements explicit sync with linux-drm-syncobj-v1 for the
Wayland WSI.
Signed-off-by: Joshua Ashton <joshua@froggi.es >
Reviewed-by: Hans-Kristian Arntzen <post@arntzen-software.no >
Reviewed-by: Erik Kurzinger <ekurzinger@nvidia.com >
Reviewed-by: Sebastian Wick <sebastian.wick@redhat.com >
Reviewed-by: Eric Engestrom <eric@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25709 >
2024-04-02 13:09:38 +00:00
Joshua Ashton
59813ae468
wsi: Add common infrastructure for explicit sync
...
Signed-off-by: Joshua Ashton <joshua@froggi.es >
Reviewed-by: Hans-Kristian Arntzen <post@arntzen-software.no >
Reviewed-by: Erik Kurzinger <ekurzinger@nvidia.com >
Reviewed-by: Sebastian Wick <sebastian.wick@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25709 >
2024-04-02 13:09:37 +00:00
Joshua Ashton
4bf8f96b3e
wsi: Get timeline semaphore exportable handle types
...
We need to know this for explicit sync
Signed-off-by: Joshua Ashton <joshua@froggi.es >
Reviewed-by: Hans-Kristian Arntzen <post@arntzen-software.no >
Reviewed-by: Erik Kurzinger <ekurzinger@nvidia.com >
Reviewed-by: Sebastian Wick <sebastian.wick@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25709 >
2024-04-02 13:09:37 +00:00
Joshua Ashton
6a72ea01d3
wsi: Track CPU side present ordering via a serial
...
We will use this in our hueristics to pick the most optimal buffer in AcquireNextImageKHR
Signed-off-by: Joshua Ashton <joshua@froggi.es >
Reviewed-by: Hans-Kristian Arntzen <post@arntzen-software.no >
Reviewed-by: Erik Kurzinger <ekurzinger@nvidia.com >
Reviewed-by: Sebastian Wick <sebastian.wick@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25709 >
2024-04-02 13:09:37 +00:00
Joshua Ashton
7467f29af1
wsi: Add acquired member to wsi_image
...
Tracks whether this wsi_image has been acquired by the app
Signed-off-by: Joshua Ashton <joshua@froggi.es >
Reviewed-by: Hans-Kristian Arntzen <post@arntzen-software.no >
Reviewed-by: Erik Kurzinger <ekurzinger@nvidia.com >
Reviewed-by: Sebastian Wick <sebastian.wick@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25709 >
2024-04-02 13:09:37 +00:00
Joshua Ashton
a50ce3df71
wsi: Track if timeline semaphores are supported
...
This will be needed before we expose and use explicit sync.
Even if the host Wayland compositor supports timeline semaphores, in the
case of Venus, etc the underlying driver may not.
Signed-off-by: Joshua Ashton <joshua@froggi.es >
Reviewed-by: Hans-Kristian Arntzen <post@arntzen-software.no >
Reviewed-by: Erik Kurzinger <ekurzinger@nvidia.com >
Reviewed-by: Sebastian Wick <sebastian.wick@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25709 >
2024-04-02 13:09:37 +00:00
Joshua Ashton
efa6fac0d7
build: Add linux-drm-syncobj-v1 wayland protocol
...
Signed-off-by: Joshua Ashton <joshua@froggi.es >
Reviewed-by: Hans-Kristian Arntzen <post@arntzen-software.no >
Reviewed-by: Erik Kurzinger <ekurzinger@nvidia.com >
Reviewed-by: Sebastian Wick <sebastian.wick@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25709 >
2024-04-02 13:09:37 +00:00
Joshua Ashton
72240780f2
wsi: Add explicit_sync to wsi_drm_image_params
...
Allow the WSI frontend to request explicit sync buffers.
Signed-off-by: Joshua Ashton <joshua@froggi.es >
Reviewed-by: Hans-Kristian Arntzen <post@arntzen-software.no >
Reviewed-by: Erik Kurzinger <ekurzinger@nvidia.com >
Reviewed-by: Sebastian Wick <sebastian.wick@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25709 >
2024-04-02 13:09:37 +00:00
Joshua Ashton
c30c969c24
wsi: Add explicit_sync to wsi_image_info
...
Will be used in future for specifying explicit sync for Vulkan WSI when supported.
Additionally cleans up wsi_create_buffer_blit_context, etc..
Signed-off-by: Joshua Ashton <joshua@froggi.es >
Reviewed-by: Hans-Kristian Arntzen <post@arntzen-software.no >
Reviewed-by: Erik Kurzinger <ekurzinger@nvidia.com >
Reviewed-by: Sebastian Wick <sebastian.wick@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25709 >
2024-04-02 13:09:37 +00:00
Joshua Ashton
eae948332a
wsi: Pass wsi_drm_image_params to wsi_configure_prime_image
...
Signed-off-by: Joshua Ashton <joshua@froggi.es >
Reviewed-by: Hans-Kristian Arntzen <post@arntzen-software.no >
Reviewed-by: Erik Kurzinger <ekurzinger@nvidia.com >
Reviewed-by: Sebastian Wick <sebastian.wick@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25709 >
2024-04-02 13:09:37 +00:00
Joshua Ashton
d6345250ca
wsi: Pass wsi_drm_image_params to wsi_configure_native_image
...
No need to split this out into function parameters, it's just less clean.
Signed-off-by: Joshua Ashton <joshua@froggi.es >
Reviewed-by: Hans-Kristian Arntzen <post@arntzen-software.no >
Reviewed-by: Erik Kurzinger <ekurzinger@nvidia.com >
Reviewed-by: Sebastian Wick <sebastian.wick@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25709 >
2024-04-02 13:09:37 +00:00
Kai Wasserbäch
50783351bc
fix(FTBFS): clover: adapt to new LLVM 19 DiagnosticHandlerTy
...
LLVM 19 changed DiagnosticHandlerTy. Adapt to that.
Reference: https://github.com/llvm/llvm-project/commit/44d037cc258dcf179d2c48c93996bb406ecd0fae
Signed-off-by: Kai Wasserbäch <kai@dev.carbon-project.org >
Reviewed-by: Karol Herbst <kherbst@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28520 >
2024-04-02 11:27:31 +00:00