summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
5 hoursvenus: enable sparse only queue family along with feedbackHEADmainYiwei Zhang1-21/+2
Now that both ffb and sfb support feedback suspend and resume, we no longer need to filter out sparse only queue family. Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38049>
5 hoursvenus: allow timeline semaphore feedback to suspend and resumeYiwei Zhang3-13/+70
Similar idea with fence feedback, but a bit tricky in the resume condition. See comments for details. Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38049>
5 hoursvenus: rename async_wait_mtx to counter_mtxYiwei Zhang2-7/+7
The lock scope will be extended to support semaphore feedback suspend and resume later. So give it a general name. Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38049>
5 hoursvenus: update sfb cmd lookup to follow ffbYiwei Zhang1-3/+6
Now sfb cmd can be VK_NULL_HANDLE on incompatible queues. Avoid passing that to set cmd, and explicitly assert below. Test: dEQP-VK.synchronization2.basic.timeline_semaphore.multi_queue can properly assert on the driver side when assert is enabled. Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38049>
5 hoursvenus: allow fence feedback to suspend and resumeYiwei Zhang4-5/+29
Previously, we either have to filter out incompatible queue or disable fence feedback. Now we track whether the queue can do feedback, and will mark the fence feedback not pollable if the fence is submitted on an incompatible queue. Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38049>
5 hoursvenus: add vn_queue_family_can_feedback helperYiwei Zhang2-11/+18
No behavior change. This is to prepare for better feedback compatibility support. Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38049>
6 hoursradeonsi: mostly fix NGG streamout overflow queries when XFB is disabledMarek Olšák6-37/+66
When XFB was disabled, we were incrementing primitives_generated but not primitives_emitted, which caused the overflow query to return true, but it should have returned false because XFB was disabled. This disables counting primitives_generated when there is no primitives_generated query. When both primitives_generated and the overflow query are enabled simultaneously and XFB is disabled, it will be incorrect again, but that had been equally incorrect with the non-NGG codepath too, just not discovered because of the lack of tests. This commit just changes NGG streamout queries to behave the same as legacy. Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37849>
6 hoursradeonsi: cosmetic changes for queriesMarek Olšák2-10/+8
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37849>
6 hoursradeonsi: allow queries to return more than UINT32_MAXMarek Olšák1-1/+1
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37849>
6 hoursradeonsi: return false from si_update_ngg early on gfx11+Marek Olšák1-1/+7
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37849>
6 hoursradeonsi: rename num_active_shader_queries -> streamout.num_ngg_queriesMarek Olšák2-5/+5
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37849>
6 hoursradeonsi: rename si_get_strmout_en -> si_get_streamout_enable_stateMarek Olšák3-10/+10
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37849>
6 hoursasahi: Update CI expectationsMary Guillemard1-315/+1
Signed-off-by: Mary Guillemard <mary@mary.zone> Reviewed-by: Eric Engestrom <eric@igalia.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38060>
6 hourshk: Allocate the temp tile buffer in copy_image_to_image_cpuMary Guillemard1-7/+8
We may require a bigger more than 16KiB to handle the image copy. We now always allocate a buffer to handle it properly fixing the remaining failures on VKCTS 1.4.4.0 for HIC. Fixes: 5bc828481630 ("hk: add Vulkan driver for Apple GPUs") Signed-off-by: Mary Guillemard <mary@mary.zone> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38060>
6 hourshk: Make width and height per block in HICMary Guillemard1-0/+14
We were assuming that every formats used for HIC had a block widgh and height of 1x1. This is wrong for compressed formats like BC5, ASTC, ect. Fixes: 5bc828481630 ("hk: add Vulkan driver for Apple GPUs") Signed-off-by: Mary Guillemard <mary@mary.zone> Reviewed-by: Eric Engestrom <eric@igalia.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38060>
8 hoursradv: Report smaller bvh sizes when possibleKonstantin Seurer1-2/+18
Reviewed-by: Konstantin Seurer <konstantin.seurer@gmail.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37830>
8 hoursradv: Always use compact bvh encodingKonstantin Seurer3-49/+27
The compact encoding will make it possible to allocate less space for internal nodes Reviewed-by: Konstantin Seurer <konstantin.seurer@gmail.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37830>
8 hoursmesa/st: add a warning if can't set SoftFP64Alejandro Piñeiro1-0/+2
Without this warning, if a driver try to use the nir_lower_fp64_full_software option, would get a crash without any message pointing that the problem is that doesn't fulfill the requirements of current mesa fp64 sw implementation. Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@intel.com> Reviewed-by: Marek Ol¨ák <marek.olsak@amd.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38025>
9 hoursd3d12: Video Encode - Flush the pipe context async while submitting encodeSilvio Vilerino2-12/+33
Reviewed-by: Pohsiang (John) Hsu <pohhsu@microsoft.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38057>
9 hoursd3d12: Video Encode - Remove redundant buffer barriersSilvio Vilerino1-33/+3
Reviewed-by: Pohsiang (John) Hsu <pohhsu@microsoft.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38057>
9 hoursd3d12: Video Encode - Remove unnecessary resource waits and syncs since we ↵Silvio Vilerino1-38/+0
sync batch fence Reviewed-by: Pohsiang (John) Hsu <pohhsu@microsoft.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38057>
9 hoursd3d12: Remove redundant d3d12_promote_to_permanent_residency overloadSilvio Vilerino5-34/+4
Reviewed-by: Pohsiang (John) Hsu <pohhsu@microsoft.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38057>
9 hoursd3d12: Use EnqueueMakeResident with GPU Wait for video permanent residency ↵Silvio Vilerino4-18/+85
promotions Reviewed-by: Pohsiang (John) Hsu <pohhsu@microsoft.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38057>
9 hoursmediafoundation: Remove unused AllocatePipeResourceFromAllocatorSilvio Vilerino2-60/+0
Reviewed-by: Pohsiang (John) Hsu <pohhsu@microsoft.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38057>
9 hoursmediafoundation: Cleanup MaxL1References variablesSilvio Vilerino6-20/+4
Reviewed-by: Pohsiang (John) Hsu <pohhsu@microsoft.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38057>
9 hoursmediafoundation: Optimize STL usage in reference_frames_tracker_hevc.cppSilvio Vilerino1-42/+21
Reviewed-by: Pohsiang (John) Hsu <pohhsu@microsoft.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38057>
9 hoursmediafoundation: encode.cpp: Remove redundant lock() and memset()Silvio Vilerino1-11/+9
Reviewed-by: Pohsiang (John) Hsu <pohhsu@microsoft.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38057>
9 hoursmediafoundation: Fix width/height typo in alignment calculationSilvio Vilerino1-1/+1
Reviewed-by: Pohsiang (John) Hsu <pohhsu@microsoft.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38057>
9 hoursd3d12: Fix d3d12_promote_to_permanent_residency always making residentSilvio Vilerino1-1/+1
Reviewed-by: Pohsiang (John) Hsu <pohhsu@microsoft.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38057>
9 hoursd3d12: d3d12_video_encoder_references_manager_hevc remove double resize() ↵Silvio Vilerino2-3/+20
and add reserve() to cached vectors Reviewed-by: Pohsiang (John) Hsu <pohhsu@microsoft.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38057>
9 hoursd3d12_video_encoder_nalu_writer_h264: Reuse per frame scratch allocationsSilvio Vilerino2-157/+104
Reviewed-by: Pohsiang (John) Hsu <pohhsu@microsoft.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38057>
9 hoursd3d12_video_encoder_nalu_writer_hevc: Reuse per frame scratch allocationsSilvio Vilerino2-26/+23
Reviewed-by: Pohsiang (John) Hsu <pohhsu@microsoft.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38057>
9 hoursmediafoundation: fix sporadic build failure with u_inlines.h not found on ↵Pohsiang (John) Hsu1-1/+1
test target Reviewed-by: Sil Vilerino <sivileri@microsoft.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38057>
10 hoursanv: Call brw_nir_lower_rt_intrinsics_pre_trace lowering passSagar Ghuge1-0/+1
Call this pass before nir_lower_shader_calls(). Fixes: d39e443e ("anv: add infrastructure for common vk_pipeline") Cc: mesa-stable Signed-off-by: Sagar Ghuge <sagar.ghuge@intel.com> Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38041>
11 hoursutil/dynarray: infer type in appendAlyssa Rosenzweig158-416/+394
Most of the time, we can infer the type to append in util_dynarray_append using __typeof__, which is standardized in C23 and support in Jesse's MSMSVCV. This patch drops the type argument most of the time, making util_dynarray a little more ergonomic to use. This is done in four steps. First, rename util_dynarray_append -> util_dynarray_append_typed bash -c "find . -type f -exec sed -i -e 's/util_dynarray_append(/util_dynarray_append_typed(/g' \{} \;" Then, add a new append that infers the type. This is much more ergonomic for what you want most of the time. Next, use type-inferred append as much as possible, via Coccinelle patch (plus manual fixup): @@ expression dynarray, element; type type; @@ -util_dynarray_append_typed(dynarray, type, element); +util_dynarray_append(dynarray, element); Finally, hand fixup cases that Coccinelle missed or incorrectly translated, of which there were several because we can't used the untyped append with a literal (since the sizeof won't do what you want). All four steps are squashed to produce a single patch changing every util_dynarray_append call site in tree to either drop a type parameter (if possible) or insert a _typed suffix (if we can't infer). As such, the final patch is best reviewed by hand even though it was tool-assisted. No Long Linguine Meals were involved in the making of this patch. Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@intel.com> Acked-by: Faith Ekstrand <faith.ekstrand@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38038>
11 hoursutil: require typeof supportAlyssa Rosenzweig1-12/+0
It is in C23 and Jesse reports that his MSMSVCV has it. Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@intel.com> Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com> Acked-by: Jesse Natalie <jenatali@microsoft.com> [over IRC] Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38038>
12 hoursiris: Enable GL_KHR_shader_subgroup_* extensions for Gfx >= 9 when possibleCaio Oliveira2-1/+15
For platforms that don't have native float64 support, skip the arithmetic and clustered ops. While they would work, the lowering for float64 for those increase significantly the shader for some of those operations. Reviewed-by: Kenneth Graunke <kenneth@whitecape.org> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35844>
12 hoursbrw: Consolidate late lowering of int64 operationsCaio Oliveira1-27/+26
Instead of doing selectively and with different supporting passes, just run the complete set (special algebraic before and cleanup optimizations after) at the end of brw_postprocess_nir_opts(). No changes to fossil-db on ICL, TGL, ACM and BMG. Reviewed-by: Kenneth Graunke <kenneth@whitecape.org> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35844>
13 hoursspirv: Update the JSON and headersSamuel Pitoiset2-8/+61
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com> Acked-by: Faith Ekstrand <faith.ekstrand@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38042>
13 hoursvulkan: exclude non-existant Shader64BitIndexingEXT SPIR-V capabilitySamuel Pitoiset1-0/+3
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com> Acked-by: Faith Ekstrand <faith.ekstrand@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38042>
13 hoursvulkan: update spec to 1.4.330Samuel Pitoiset4-2616/+3157
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com> Acked-by: Faith Ekstrand <faith.ekstrand@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38042>
13 hourszink: Disable building the zink_check_requirements tool for nowFaith Ekstrand1-1/+1
The vulkan header update is going to break it. We'll re-enable as soon as LunarG does a header update in Vulkan-profiles. Until then, I've filed a tracker issue: https://gitlab.freedesktop.org/mesa/mesa/-/issues/14176 Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38042>
13 hourshk: Remove unused allocation in queue_submitMary Guillemard1-5/+0
Unused and leaking memory, found with address sanitizer. Fixes: c64a2bbff5a3 ("asahi: port to stable uAPI") Signed-off-by: Mary Guillemard <mary@mary.zone> Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@intel.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38054>
13 hourshk: Disable 1x in sampleLocationsSampleCountsMary Guillemard2-1010/+1
We don't support it, everyone dropped support for that, let's not expose it. Fixes: 5bc828481630 ("hk: add Vulkan driver for Apple GPUs") Signed-off-by: Mary Guillemard <mary@mary.zone> Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@intel.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38054>
13 hourshk: Fix maxVariableDescriptorCount with inline uniform blockMary Guillemard4-24/+30
Same problem as NVK on VKCTS 1.4.4.0 Fixes: 5bc828481630 ("hk: add Vulkan driver for Apple GPUs") Signed-off-by: Mary Guillemard <mary@mary.zone> Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@intel.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38054>
14 hoursintel/compiler/brw: Add assert that we don't have a negative valueDylan Baker1-0/+1
Coverity notices that `nir_get_io_index_src_number` could return -1, and that we use it to index an array. It cannot understand that -1 only happens for unhandled enum values, but all of these are handled. Add an assert to help it out. CID: 1667234 Fixes: 37a9c5411f4 ("brw: serialize messages on Gfx12.x if required") Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38007>
14 hoursintel/compiler/brw: fix potential unsigned overflowDylan Baker1-1/+1
Coverity notices that if `util_last_bit()` returns 0, and we subtract 1, then the unsigned will overflow before being converted. We could cast to eliminate that error, but the entire optimization function would do nothing if tex->required_params == 0 (the way that we would get here), so let's just not do work if we know we don't need to *and* avoid this overflow. CID: 1667241 Fixes: efcba73b49a ("brw: switch to new sampler payload description scheme") Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38009>
15 hourspanvk: Enable the disk cacheFaith Ekstrand1-0/+37
Assuming disk I/O isn't painfully slow compared to running the whole compiler (OS file system caching should help), this should massively reduce the number of shaders compiled. Acked-by: Eric R. Smith <eric.smith@collabora.com> Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38019>
15 hourspanvk: Use the build SHA for the pipeline/binary cache UUIDsFaith Ekstrand1-16/+16
This way we get the same cache UUIDs for identical sources and build environments, even if they're built at different times. Acked-by: Eric R. Smith <eric.smith@collabora.com> Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38019>
15 hourspanvk: Add an in-memory shader cacheFaith Ekstrand1-2/+14
This one just hangs out and prevents unnecessary duplicate compilation. We set .weak_ref = true so it doesn't actually hold references forever. It just hangs onto any shaders that exist in some VkPipeline or VkShader somewhere. But if an app compiles a pipeline it already has, it will let us avoid a duplicate compile, even if the app doesn't provide a pipeline cache. Acked-by: Eric R. Smith <eric.smith@collabora.com> Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38019>