Colin Marc
2cf5ef37ba
vulkan/video: set HEVC nuh_temporal_id_plus1 and nal_unit_type correctly
...
This is only relevant for hierarchical coding using sub-layers.
Fixes: 72f52329cd ("vulkan/video: add a nal_unit lookup for hevc")
Reviewed-by: Hyunjun Ko <zzoon@igalia.com >
Reviewed-by: Dave Airlie <airlied@redhat.com >
Signed-off-by: Colin Marc <hi@colinmarc.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31303 >
2024-09-26 04:18:11 +00:00
Iván Briano
101a803858
vulkan: use standard sample locations if there's no VkPipelineSampleLocationsStateCreateInfoEXT
...
If the pipeline is created with no
VkPipelineSampleLocationsStateCreateInfoEXT, but
VK_DYNAMIC_STATE_SAMPLE_LOCATIONS_ENABLE_EXT is set, we end up
dereferencing a NULL pointer.
Fixes future dEQP-VK.pipeline.*.extended_dynamic_state.*.sample_locations_enable_no_create_info
Fixes: 1deb83fb86 ("vulkan: Add more dynamic multisample states")
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31377 >
2024-09-26 03:43:57 +00:00
Mike Blumenkrantz
c4d6d9254a
vk/image: fix view creation for planar video aspects
...
drivers do implement this
cc: mesa-stable
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Reviewed-by: Dave Airlie <airlied@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31318 >
2024-09-25 06:21:58 +00:00
Boris Brezillon
e171579f51
vk/meta: Make sure texel is 32-bit in build_buffer_to_image_cs()
...
Just like fragment stores, image stores expect 32-bit values (at least
that's the case of the Bifrost backend), so make sure the value passed
to write_img() is always 32-bit, even when convert_texel() doesn't touch
the texel because the image view format matches the buffer format.
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com >
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com >
Tested-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31227 >
2024-09-20 18:21:50 +00:00
Samuel Pitoiset
279b5ca10c
vulkan: skip the disk cache when disableInternalCache is true
...
The Vulkan spec says:
"disableInternalCache can be used to disable the driver’s internal
cache, allowing an application to take full control of both memory
and disk usage."
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30812 >
2024-09-10 08:19:52 +00:00
Caio Oliveira
ce9e2dbc62
vk/runtime: Allow "require full subgroups" for Mesh/Task
...
Per description of VkPipelineShaderStageCreateFlags
```
VK_PIPELINE_SHADER_STAGE_CREATE_REQUIRE_FULL_SUBGROUPS_BIT specifies
that the subgroup sizes must be launched with all invocations active in
the task, mesh, or compute stage.
```
Future CTS tests will use that.
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31023 >
2024-09-06 05:49:07 +00:00
Gurchetan Singh
1e84588887
vulkan/android: change vk_enum_defines.h path
...
To match everything else in vulkan/runtime.
Reviewed-by: Roman Stratiienko <r.stratiienko@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31030 >
2024-09-05 22:59:58 +00:00
Faith Ekstrand
9ba70bb1ed
vulkan: Expose a vk_cmd_set_rendering_attachment_locations() helper
...
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31033 >
2024-09-05 17:55:21 +00:00
Faith Ekstrand
ea783a96b8
vulkan: Allow pColorAttachmentLocations == NULL in CmdSetRenderingAttachmentLocationsKHR()
...
Fixes: fe19405c46 ("vulkan/runtime: handle new dynamic states for attachment remapping")
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31033 >
2024-09-05 17:55:21 +00:00
Faith Ekstrand
c626be82f4
vulkan: Add a helper for getting VkRenderingAttachmentLocaiontInfoKHR
...
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31033 >
2024-09-05 17:55:21 +00:00
Dave Airlie
af425a63f7
vulkan/video: fix vui encoding
...
This is a single bit field.
Fixes: d46162981a ("vulkan/video: add h264 headers encode")
Reviewed-by: Hyunjun Ko <zzoon@igalia.com >
Tested-by: Bernhard C. Schrenk <clemy@clemy.org >
Reviewed-by: Bernhard C. Schrenk <clemy@clemy.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30968 >
2024-09-02 21:15:13 +00:00
Faith Ekstrand
42114aa723
vulkan: Handle VIEW_INDEX_FROM_DEVICE_INDEX_BIT in the runtime
...
Reviewed-by: Ivan Briano <ivan.briano@intel.com >
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30876 >
2024-08-29 03:30:31 +00:00
Faith Ekstrand
8c60f1461b
vulkan: Take a VkPipelineCreateFlags2KHR in vk_pipeline_*shader_stage*()
...
Reviewed-by: Ivan Briano <ivan.briano@intel.com >
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Reviewed-by: Jesse Natalie <jenatali@microsoft.com >
Acked-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com >
Reviewed-by: Connor Abbott <cwabbott0@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30876 >
2024-08-29 03:30:31 +00:00
Faith Ekstrand
faf27a5989
dzn: Use vk_pipeline_shader_stage_to_nir()
...
Dozen is the last user so we can delete it now.
Reviewed-by: Jesse Natalie <jenatali@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30876 >
2024-08-29 03:30:31 +00:00
Faith Ekstrand
c0191b20de
vulkan/pipeline: Handle VIEW_INDEX_FROM_DEVICE_INDEX_BIT
...
The rehash we're doing here is a bit of a hack but it's a back-portable
hack. We'll fix it properly in following commits.
Fixes: 9308e8d90d ("vulkan: Add generic graphics and compute VkPipeline implementations")
Reviewed-by: Ivan Briano <ivan.briano@intel.com >
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30876 >
2024-08-29 03:30:31 +00:00
Jesse Natalie
03655dfda1
compiler, vk: Support subgroup size of 4
...
Relax the assert and assign it an enum value
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30876 >
2024-08-29 03:30:31 +00:00
Samuel Pitoiset
e57d3551da
vk/render_pass: add Mesa-specific flag for dynamic rendering
...
VK_KHR_dynamic_rendering_local_read allows the application to sample
from a subpass input attachment where this attachment is also the color
attachment (aka. feedback loop). With legacy RPs, it's easy to detect
that at RP creation time by looking at the input<->color indices but
with DRLR this needs to be determined dynamically.
This flag would help when legacy RPs are converted to dynamic rendering
because it's not possible to know if a subpass used input attachments.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30124 >
2024-08-23 12:20:02 +00:00
Constantine Shablia
07c6459cd8
vk/meta: Add copy/fill/update helpers
...
Add buffer copy/fill/update helpers using compute shaders. The driver
can select the optimal per-workgroup copy/fill/update size by specifying
a non-zero vk_meta_device::buffer_access::optimal_size_per_wg size.
If zero, the core will assume a 64-byte size (the usual cache-line size).
Buffer accesses will be done through SSBOs unless
vk_meta_device::buffer_access::use_global_address is true, in which
case the core will the buffer address using GetBufferDeviceAddress()
and pass that address as a push constant to the compute shader.
Image to buffer copies are always done through a compute shader. The
optimal workgroup size will be chosen based on
vk_meta_copy_image_properties::tile_size: the copy logic picks a
workgroup size matching the tile size, and aligns accesses on a tile.
The view format is selected by the driver. To optimize things on the
shader side, pick UINT formats (usually less work to do to pack data).
Buffer to image copies can be done done through the graphics pipeline
if needed (use_gfx_pipeline passed to vk_meta_copy_buffer_to_image()),
which is useful for vendor-specific compressed formats that can't be
written outside of the graphics pipeline. Drivers should normally prefer
compute-based copies when that's an option. Just like for image to buffer
copies, the workgroup size of compute shaders is picked based on the
image tile size, and the view format must be selected by the driver.
Image to image copies is just a mix of the above, with the driver being
able to select the pipeline type, as well as define the tile size and
view format to use. When using a compute pipeline, the workgroup size
will be MAX2(src_tile_sz, dst_tile_sz), and accesses will be aligned
on the selected reference image.
For compressed formats, the caller should pick an RGBA format matching
the compressed block size.
Co-developed-by: Boris Brezillon <boris.brezillon@collabora.com >
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com >
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29333 >
2024-08-20 15:11:14 +00:00
Boris Brezillon
dad5c1184f
vk/meta: Let meta users pass the color attachment write mask explicitly
...
Will be needed for partial interleaved depth/stencil copies where the
image is treated as a color image with some components assigned to the
depth and others assigned to the stencil. If only one aspect is copies
using a graphics pipeline, we need to preserve components assigned to
the other aspect, and an easy way to do that is to tweak the color
attachment write mask.
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com >
Suggested-by: Faith Ekstrand <faith.ekstrand@collabora.com >
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29333 >
2024-08-20 15:11:14 +00:00
Boris Brezillon
8ddc527ba4
vk/image: Fix the view extent of uncompressed views of compressed images
...
The view extent needs to be divided by the block width/height/depth in
that case.
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com >
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29333 >
2024-08-20 15:11:14 +00:00
Boris Brezillon
6ff9b8c36b
vk/image: Add a vk_image_buffer_range() helper
...
vk_image_buffer_range() returns the buffer range needed for an
image <-> buffer copy, which will help us initialize storage buffer
descriptors.
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com >
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29333 >
2024-08-20 15:11:14 +00:00
Boris Brezillon
2b2b66f497
vk/sync: Use the proper type in vk_filter_{src,dst}_access_flags2()
...
VkAccessFlags2 and VkPipelineStageFlags2 being both 64-bit bitmasks
the mistake is harmless, but let's fix that anyway to avoid any
confusion.
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com >
Reviewed-by: Konstantin Seurer <konstantin.seurer@gmail.com >
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30735 >
2024-08-20 14:33:52 +00:00
Lionel Landwerlin
eacb8f85a2
vulkan/runtime: fix GetBufferMemoryRequirements2 for maintenance4
...
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Fixes: 2649ee0724 ("vulkan/runtime: implement vkGetBufferMemoryRequirements2()")
Reviewed-by: Tapani Pälli <tapani.palli@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30714 >
2024-08-19 10:13:09 +00:00
Dave Airlie
1b4ae3d7af
vulkan/video: handle KHR_video_maintenance1 lack of profile list.
...
VK_KHR_video_maintenance1 allows no profile in which cases drivers
should just be pessimisitic.
Reviewed-by: Hyunjun Ko <zzoon@igalia.com >
Reviewed-by: Lynne <dev@lynne.ee >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30671 >
2024-08-16 13:31:41 +10:00
Faith Ekstrand
6ae401aa86
vulkan: Add null descriptor bits to vk_pipeline_robustness_state
...
Fixes: c9eac89da8 ("nvk: Advertise VK_EXT_robustness2")
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30663 >
2024-08-15 22:25:13 +00:00
Lucas Fryzek
cfd897bae0
vulkan/runtime: Use DMA_BUF to import anb
...
Switch to using DMA_BUF to import android native buffers instead of
opaque FDs since more drivers (like lavapipe) can support dma bufs.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29344 >
2024-08-08 09:04:47 +00:00
Surafel Assefa
979dc41558
vulkan: MESA_VK_ENABLE_SUBMIT_THREAD=0 disables threaded submit
...
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30492 >
2024-08-06 13:19:40 +00:00
Lionel Landwerlin
ae9a249dfe
vulkan/runtime: allow null/empty debug names
...
VkDebugUtilsObjectNameInfoEXT::pObjectName can be NULL [1] :
"Applications may change the name associated with an object simply
by calling vkSetDebugUtilsObjectNameEXT again with a new string. If
pObjectName is either NULL or an empty string, then any previously
set name is removed."
The current code will segfault.
[1] : https://registry.khronos.org/vulkan/specs/1.3-extensions/html/chap50.html#VkDebugUtilsObjectNameInfoEXT
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Fixes: 3b361b234a ("vulkan: Implement VK_EXT_debug_utils")
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30516 >
2024-08-05 21:12:59 +00:00
Hyunjun Ko
22abbb84b7
vulkan/video: adds a bitstream writer of h265 slice header
...
Signed-off-by: Hyunjun Ko <zzoon@igalia.com >
Reviewed-by: Dave Airlie <airlied@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27810 >
2024-08-02 07:15:59 +00:00
Hyunjun Ko
ff8de61907
vulkan/video: adds a bitstream writer of h264 slice header
...
Signed-off-by: Hyunjun Ko <zzoon@igalia.com >
Reviewed-by: Dave Airlie <airlied@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27810 >
2024-08-02 07:15:59 +00:00
dawnhan
6df5ace3a3
vulkan/android: Add missing AHB formats
...
Signed-off-by: dawnhan <dawnhan@google.com >
Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30310 >
2024-08-02 04:23:44 +00:00
Alyssa Rosenzweig
d0424eb63b
vk/meta: add VK_IMAGE_VIEW_CREATE_INTERNAL_MESA flag
...
honeykrisp to use, and hopefully common vk_meta will use this soon too
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Acked-by: Faith Ekstrand <faith.ekstrand@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30382 >
2024-07-26 18:40:47 +00:00
Alyssa Rosenzweig
0d66ba6e5d
vk/meta: add buffer view tracking
...
honeykrisp will use this, at least for now.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Acked-by: Faith Ekstrand <faith.ekstrand@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30382 >
2024-07-26 18:40:47 +00:00
Gurchetan Singh
7cc199502f
vulkan/runtime: introduce vk_meta_object_list
...
Code movement: Move the object list + destroy_object
function to separate files.
This allows vk_command_buffer.{h, c} to not depend on all
of vk_meta, which depends on vk_pipeline, which depends on
NIR.
Reviewed-by: Yonggang Luo <luoyonggang@gmail.com >
Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30355 >
2024-07-25 19:14:31 +00:00
C Stout
f6099903c1
vulkan/runtime: add spirv_info_h to vulkan_lite_runtime_header_gen_deps
...
spirv_info_h was added to idep_vulkan_lite_runtime_headers but it's also
needed for building libvulkan_lite_runtime. Without this patch, from
a clean meson setup (tested with: -Dvulkan-drivers=freedreno -Dgallium-drivers= -Dplatforms=wayland)
ninja -C build src/vulkan/runtime/libvulkan_lite_runtime.a
In file included from ../src/vulkan/runtime/vk_physical_device.c:24:
../src/vulkan/runtime/vk_physical_device.h:32:10: fatal error: compiler/spirv/spirv_info.h: No such file or directory
Fixes: 1759c0eba7 ("vulkan: add helper to fill out spirv caps automatically")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30189 >
2024-07-16 21:43:13 +00:00
Faith Ekstrand
4f89af3723
vulkan: Use u_cnd_monotonic for vk_sync_timeline
...
The code we had for handling this with c11 cnd_t was gross. Let's use a
primitive that actually works.
Reviewed-by: Derek Foreman <derek.foreman@collabora.com >
Reviewed-by: Tatsuyuki Ishi <ishitatsuyuki@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29924 >
2024-07-08 22:09:06 +00:00
Faith Ekstrand
6aaf6d090c
vulkan/wsi: Delete wsi_init_pthread_cond_monotonic
...
Reviewed-by: Derek Foreman <derek.foreman@collabora.com >
Reviewed-by: Tatsuyuki Ishi <ishitatsuyuki@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29924 >
2024-07-08 22:09:06 +00:00
Faith Ekstrand
37d58b816b
vulkan/meta: Use demote instead of discard
...
We don't have the NIR options when we go to create the shader so
nir_discard_if() will segfault.
Fixes: 9b1a748b5e ("nir: remove nir_intrinsic_discard")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30028 >
2024-07-03 20:33:27 +00:00
David Heidelberg
68215332a8
build: pass licensing information in SPDX form
...
Acked-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Acked-by: Dylan Baker <dylan.c.baker@intel.com >
Acked-by: Eric Engestrom <eric@igalia.com >
Acked-by: Daniel Stone <daniels@collabora.com >
Signed-off-by: David Heidelberg <david@ixit.cz >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29972 >
2024-06-29 12:42:49 -07:00
Konstantin Seurer
b0fa138c86
vulkan: Add vk_expand_(dst|src)_access_flags2
...
Those helpers do not filter out dead access bits to keep synchronization
conservative.
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29051 >
2024-06-28 10:41:49 +00:00
Erik Faye-Lund
18db05d3e6
vulkan/runtime: implementaiton -> implementation
...
Acked-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29890 >
2024-06-26 12:31:00 +00:00
Erik Faye-Lund
3967f8cd84
vulkan/runtime: multiesample -> multisample
...
Acked-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29890 >
2024-06-26 12:31:00 +00:00
Erik Faye-Lund
788d1b5a67
vulkan/runtime: abreviation -> abbreviation
...
Acked-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29890 >
2024-06-26 12:31:00 +00:00
Erik Faye-Lund
947446ade7
vulkan/runtime: initizlie -> initialize
...
Acked-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29890 >
2024-06-26 12:31:00 +00:00
Erik Faye-Lund
a966a11161
vulkan/runtime: tne -> the
...
This is clearly a typo.
Acked-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29890 >
2024-06-26 12:31:00 +00:00
Juan A. Suarez Romero
081555c58b
vulkan: do not access member of a NULL structure
...
Check if the structure is NULL before trying to get access to its
members.
This has been detected by the Undefined Behaviour Sanitizer (UBSan).
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Signed-off-by: Juan A. Suarez Romero <jasuarez@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29772 >
2024-06-21 21:07:05 +00:00
Alyssa Rosenzweig
da752ed7c1
treewide: use nir_def_replace sometimes
...
Two Coccinelle patches here. Didn't catch nearly as much as I would've liked but
it's a start.
Coccinelle patch:
@@
expression intr, repl;
@@
-nir_def_rewrite_uses(&intr->def, repl);
-nir_instr_remove(&intr->instr);
+nir_def_replace(&intr->def, repl);
Coccinelle patch:
@@
identifier intr;
expression instr, repl;
@@
nir_intrinsic_instr *intr = nir_instr_as_intrinsic(instr);
...
-nir_def_rewrite_uses(&intr->def, repl);
-nir_instr_remove(instr);
+nir_def_replace(&intr->def, repl);
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com >
Reviewed-by: Juan A. Suarez Romero <jasuarez@igalia.com > [broadcom]
Reviewed-by: Vasily Khoruzhick <anarsoul@gmail.com > [lima]
Reviewed-by: Christian Gmeiner <cgmeiner@igalia.com > [etna]
Reviewed-by: Pavel Ondračka <pavel.ondracka@gmail.com > [r300]
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29817 >
2024-06-21 15:36:56 +00:00
Alyssa Rosenzweig
a4fd4812fa
vulkan: handle enqueueing CmdPushDescriptorSet2KHR
...
implementation from lavapipe. again, no CTS for this...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Acked-by: Konstantin Seurer <konstantin.seurer@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28682 >
2024-06-20 16:43:56 +00:00
Alyssa Rosenzweig
b39efbc422
vulkan: handle enqueueing CmdPushConstants2KHR
...
implementation from lavapipe. there's no CTS coverage for this but hopefully
it works...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Acked-by: Konstantin Seurer <konstantin.seurer@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28682 >
2024-06-20 16:43:56 +00:00
Alyssa Rosenzweig
0ba7489243
vulkan: fix potential UAF with vk_cmd_enqueue_CmdPushDescriptorSetKHR
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Reported-by: Boris Brezillon <boris.brezillon@collabora.com >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Reviewed-by: Konstantin Seurer <konstantin.seurer@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28682 >
2024-06-20 16:43:56 +00:00