- Aug 14, 2024
-
-
Eric Engestrom authored
-
Eric Engestrom authored
-
Previously only `-mtls-dialect=gnu2` was probed, which was appropriate for arm, x86 and x86_64, but not for newer architectures such as aarch64, loongarch64 and riscv64 which all use `-mtls-dialect=desc` instead. Because the driver option is not consistent across architectures (and probably will not), try both variants and choose the first one working. While at it, rename "gnu2_*" variables to "tlsdesc_*" respectively, for clarity. Cc: mesa-stable Reviewed-by: Icenowy Zheng <uwu@icenowy.me> Reviewed-by: Yukari Chiba <i@0x7f.cc> Reviewed-by: David Heidelberg <david@ixit.cz> Signed-off-by: WANG Xuerui <git@xen0n.name> Part-of: <!30599> (cherry picked from commit cc2dbb8e)
-
Fixes a "regression" where comically large FPS tests regressed. Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no> Fixes: 19dba854 ("wsi/x11: Rewrite implementation to always use threads.") Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com> Part-of: <mesa/mesa!30638> (cherry picked from commit 5a97916f)
-
The `capture_not_overwritten` unit test captures and compares two backtraces -- one from inside a call to `func_c` and one outside -- and confirms that they are not identical. That is, that `func_c` is in the backtrace. On 32-bit x86, without `-fno-omit-frame-pointer`, the function will not emit a stack frame. As a result, the unit test fails. The fix is to compile `func_c` with the flag `-fno-omit-frame-pointer` to prevent the compiler from optimizing out the stack frame which is otherwise unneeded. Bug: https://bugs.gentoo.org/823774 Closes: #4091 Fixes: d0d14f3f ("util: Add unit test for stack backtrace caputure") Part-of: <!30622> (cherry picked from commit 05dc4eb5)
-
Part-of: <mesa/mesa!30622> (cherry picked from commit b3430a7b)
-
* the damage region was not being used correctly (this is a normal rect) * use_damage was never unset at frame boundary * original renderArea was never re-set Fixes: 3d38c959 ("zink: hook up KHR_partial_update") Acked-by: Daniel Stone <daniels@collabora.com> Part-of: <!30625> (cherry picked from commit a7f64c62)
-
When closest hit shader is called, the BVH object level brw_nir_rt_load_mem_ray origin/direction is 0. What we should be using is the ray origin/direction and apply the transform of the current instance. Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Fixes: 9ba7d459 ("intel/rt: Implement the new ray-tracing system values") Reviewed-by: Sagar Ghuge <sagar.ghuge@intel.com> Part-of: <mesa/mesa!30578> (cherry picked from commit aaff1913)
-
We need to double check that the source is indeed constant before looking at the constant type. Signed-off-by: Pavel Ondračka <pavel.ondracka@gmail.com> Fixes: 0508db91 Part-of: <mesa/mesa!29893> (cherry picked from commit 1cad3394)
-
the CL CTS added a new test being printf("\n", "foo"), but we ended up printing the new line twice. If we can't find a specifier anymore, ignore the argument as after the loop processing all arguments we'll print the remaining format string anyway. Cc: mesa-stable Reviewed-by: Jesse Natalie <jenatali@microsoft.com> Part-of: <mesa/mesa!30574> (cherry picked from commit 40802698)
-
Closes: mesa/mesa#8637 Closes: mesa/mesa#9240 Closes: mesa/mesa#9365 Fixes: 3e7f6c9a ("tu: implement wsi hook to decide if we can present directly on device") Signed-off-by: Valentine Burley <valentine.burley@gmail.com> Part-of: <mesa/mesa!29627> (cherry picked from commit 367191ff)
-
Make wsi_device_matches_drm_fd() a default helper that PCI based GPUs plug in to wsi_dev->can_present_on_device. This is needed for devices without libdrm, where wsi_device_matches_drm_fd was still being called causing an "undefined reference" build error. Suggested-by: Rob Clark <robdclark@chromium.org> Fixes: baa38c14 ("vulkan/wsi: Use VK_EXT_pci_bus_info for DRM fd matching") Reviewed-by: Mark Collins <mark@igalia.com> Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com> Signed-off-by: Valentine Burley <valentine.burley@gmail.com> Part-of: <!29627> (cherry picked from commit 47289ebc)
-
cc: mesa-stable Acked-by: Daniel Stone <daniels@collabora.com> Part-of: <!30479> (cherry picked from commit d120992e)
-
Eric Engestrom authored
-
RDNA2 ISA doc, 6.2.4. Wave64 Destination Restrictions: The first pass of a wave64 VALU instruction may not overwrite a scalar value used by the second half. Foz-DB Navi31: Totals from 5221 (6.58% of 79395) affected shaders: Instrs: 9751484 -> 9752179 (+0.01%); split: -0.01%, +0.01% CodeSize: 50624072 -> 50626088 (+0.00%); split: -0.00%, +0.01% Latency: 85646450 -> 85647419 (+0.00%); split: -0.00%, +0.00% InvThroughput: 15039160 -> 15039277 (+0.00%); split: -0.00%, +0.00% VClause: 200275 -> 200204 (-0.04%) SClause: 248645 -> 248607 (-0.02%); split: -0.03%, +0.01% Copies: 640802 -> 641413 (+0.10%); split: -0.01%, +0.11% PreSGPRs: 236297 -> 236735 (+0.19%) VALU: 5666449 -> 5666440 (-0.00%) SALU: 967482 -> 968111 (+0.07%); split: -0.01%, +0.07% Cc: mesa-stable Reviewed-by: Rhys Perry <pendingchaos02@gmail.com> Reviewed-by: Daniel Schürmann <daniel@schuermann.dev> Part-of: <mesa/mesa!30368> (cherry picked from commit 510f5e55)
-
Closes: mesa/mesa#11648 Fixes: 3cdcc5f0 ("glsl: implement ARB_bindless_texture conversions") Reviewed-by: Marek Olšák <marek.olsak@amd.com> Part-of: <mesa/mesa!30586> (cherry picked from commit 3da4b5ea)
-
Fixes: ce611935 ("llvmpipe: Silence "possibly uninitialized value" warning for ssbo_limit.") Signed-off-by: David Heidelberg <david@ixit.cz> Part-of: <mesa/mesa!30482> (cherry picked from commit 9c8e75e2)
-
Instead of aligning offsets, we just align the size every time we query it. This simplifies our offset and size calculations later since we can always just add up descriptor buffer sizes and know that we'll be okay. Acked-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com> Fixes: 7ab5c5d3 ("zink: use EXT_descriptor_buffer with ZINK_DESCRIPTORS=db") Part-of: <mesa/mesa!30580> (cherry picked from commit 0f8f407e)
-
Fixes: fc191730 ("nvk: Rework format features queries") Part-of: <mesa/mesa!30580> (cherry picked from commit 8244b878)
-
Fixes: 20d8d1e2 ("nvk: Add a more competent GetPhysicalDeviceImageFormatProperties") Part-of: <mesa/mesa!30580> (cherry picked from commit 08f6066e)
-
Using ior here is equivalent to using uadd_sat, but works for every driver and shouldn't hurt anywhere. I forgot to fix this up when fixing up some vvl errors with zink. Fixes crashes with the integer_ctz CL CTS tests in zink. Fixes: 39ec184d ("zink: lower 64 bit find_lsb, ufind_msb and bit_count") Reviewed-by: Karol Herbst <kherbst@redhat.com> Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io> Part-of: <mesa/mesa!30535> (cherry picked from commit 48acf9d3)
-
this should match all the other screen init functions cc: mesa-stable Reviewed-by: Marek Olšák <marek.olsak@amd.com> Reviewed-by: Adam Jackson <ajax@redhat.com> Part-of: <!30524> (cherry picked from commit d6ac254c)
-
* close(fd) requires also resetting the fd=-1 or else boom * checking just driver_name is broken because loader_get_driver_for_fd() uses MESA_LOADER_DRIVER_OVERRIDE, so there's no way to differentiate an inferred load Fixes: b907eb47 ("egl: don't bind zink under dri2/3") Acked-by: Dave Airlie <airlied@redhat.com> Part-of: <!30556> (cherry picked from commit 1a579552)
-
In utrace timestamp copy case cmd_buffer is NULL. Fixes: dbbcd5c3 ("anv: factor out generation kernel dispatch into helper") Signed-off-by: Tapani Pälli <tapani.palli@intel.com> Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Part-of: <!30475> (cherry picked from commit ff8953f6)
-
The CL CTS started to call this API, luckily we don't have to actually implement it, because we don't intent to support CL 1.0 only devices in the first place (probably). Cc: mesa-stable Part-of: <mesa/mesa!30575> (cherry picked from commit cd2dc4f7)
-
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Closes: mesa/mesa#11647 Fixes: fe1baa64 ("anv: reduce blorp dynamic state emissions") Reviewed-by: Tapani Pälli <tapani.palli@intel.com> Part-of: <mesa/mesa!30532> (cherry picked from commit 10533e7b)
-
For some purposes (e.g. advanced blending) we need a non-zero alpha value returned from reads. This is only guaranteed on Bifrost if we explicitly request RGB1 component ordering. The default is to use RGBA component ordering, which for R5G6B5 causes 0 to be read for alpha. A complication is that the Mali fixed function hardware requires four components (which implies RGBA rather than RGB1). If fixed function blending is in use, we modify the pixel format back to RGBA when building the blend descriptor. Cc: mesa-stable Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com> Reviewed-by: Mary Guillemard <mary.guillemard@collabora.com> Part-of: <mesa/mesa!29606> (cherry picked from commit 004e0eb3)
-
This reverts commit d6bb4ddc. Fixes: d6bb4ddc ("d3d12: Video Encode - Remove PIPE_VIDEO_PROFILE_MPEG4_AVC_BASELINE as not supported") PIPE_VIDEO_PROFILE_MPEG4_AVC_BASELINE is necessary for some scenarios like the example below described in https://github.com/microsoft/WSL/issues/11838 gst-launch-1.0 -v videotestsrc num-buffers=250 ! video/x-raw,width=1920,height=1200 ! vaapipostproc ! vaapih264enc ! filesink location=~/wsl_test.h264 Part-of: <mesa/mesa!30548> (cherry picked from commit a0f1a708)
-
This fixes clFillImage 1Dbuffer use_pitches CL CTS tests. Fixes: 7b22bc61 ("rusticl/memory: complete rework on how mapping is implemented") Part-of: <mesa/mesa!30528> (cherry picked from commit 012323a1)
-
This is more correct than the previous code and the CL CTS relies on edge case behavior here, e.g. for 1Dbuffer images. I think part of that is not actually required by the spec, but whatever. Fixes: 7b22bc61 ("rusticl/memory: complete rework on how mapping is implemented") Part-of: <mesa/mesa!30528> (cherry picked from commit 2484331e)
-
An application could map and unmap a host ptr allocation multiple times, but because how the refcounting works, we might never ended up syncing the written data to the mapped region. This moves the refcounting out of the event processing. Fixes: 7b22bc61 ("rusticl/memory: complete rework on how mapping is implemented") Part-of: <mesa/mesa!30528> (cherry picked from commit 1fa288b2)
-
Fixes: 4b8735cd ("ci: raise the log level threshold of spirv logs") Part-of: <mesa/mesa!30546> (cherry picked from commit b6d8459e)
-
Replicating what we do in genX_cmd_compute.c Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Fixes: 7ca5c848 ("anv: add support for simple internal compute shaders") Reviewed-by: Tapani Pälli <tapani.palli@intel.com> Part-of: <mesa/mesa!30539> (cherry picked from commit 4f093b2e)
-
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com> Reviewed-by: Georg Lehmann <dadschoorse@gmail.com> Fixes: 48461c0d ("aco: enable VOPD scheduler") Part-of: <mesa/mesa!30519> (cherry picked from commit e45035c8)
-
When we switch to the full nir based glsl linker in an upcomming merge request this is required for existing tests from 8fcf8e7f to continue to pass, this is because they never exercised glsl to nir so the missing support went unnoticed. Closes: mesa/mesa#11456 Fixes: 8fcf8e7f ("glsl: lower builtins to mediump that ignore precision of certain parameters ") Reviewed-by: Marek Olšák <marek.olsak@amd.com> Part-of: <mesa/mesa!30395> (cherry picked from commit 140ca7e5)
-
If TraceRay() is called with the TerminateOnFirstHit flag, we need to terminate the ray on the first confirmed intersection. This is handled by the lowering of accept_ray_intersection and it's working fine for the case of multiple instances of the intersection shader being called. But if the shader calls reportIntersection() more than once, we were handling them all and accepting the closest one regardless of the flag. Check for the flag on every confirmed intersection and, if set, accept it right there. The subsequent lowering will take care of terminating handling the ray termination if necessary. Fixes new test dEQP-VK.ray_tracing_pipeline.amber.flags-accept-first Cc: mesa-stable Reviewed-by: Ian Romanick <ian.d.romanick@intel.com> Part-of: <mesa/mesa!30418> (cherry picked from commit f8553f56)
-
The current code is not handling the potential NULL pointer in VkDebugUtilsObjectNameInfoEXT::pObjectName Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Fixes: e1b9a6e4 ("anv: initial RMV support") Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com> Part-of: <mesa/mesa!30516> (cherry picked from commit c6bf1f02)
-
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: 3b361b23 ("vulkan: Implement VK_EXT_debug_utils") Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com> Part-of: <mesa/mesa!30516> (cherry picked from commit ae9a249d)
-
this had a number of issues: * pipe_loader_get_driinfo_xml() frees driver_driconf immediately, except the driOptionCache struct string pointers are all just copied in merge_driconf instead of having the strings copied, which means any subsequent access of driver_driconf strings is invalid access * pipe_loader_drm_get_driconf_by_name() is a disaster that only happened to work because the dlopen here is the same lib that gets opened elsewhere by mesa and not closed. if the lib here is actually closed, then all the statically allocated strings become invalid, which means they need to be manually copied cc: mesa-stable Reviewed-by: Marek Olšák <marek.olsak@amd.com> Part-of: <mesa/mesa!30494> (cherry picked from commit 0c220741)
-