summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
* pvr: Fix cs corruption in pvr_pack_clear_vdm_state()Karmjit Mahil2023-05-165-54/+93
| | | | | | | | | | | | | | VDMCTRL_INDEX_LIST3 is packed conditionally which can cause the generation of a corrupted control stream as the function mandated the provided buffer to be of a fixed size always including the possibly unpacked word. This would leave a gap in the control stream when the caller ends up copying the buffer into the control stream. Reported-by: James Glanville <james.glanville@imgtec.com> Signed-off-by: Karmjit Mahil <Karmjit.Mahil@imgtec.com> Reviewed-by: Frank Binns <frank.binns@imgtec.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22918>
* tu: Use common GetPhysicalDeviceFeatures2Alyssa Rosenzweig2023-05-161-475/+305
| | | | | | | | | | | | | | Delete the code. This isn't quite as nice as for the C drivers, because we can't use a designated initializer in C++ without matching the order and this is an autogenerated struct where it may not necessarily make sense to fix an order. Not a big deal to workaround though. Tested by diff'ing vulkaninfo output before/after the patch and confirming no changes (other than the driverInfo git sha, the pipelineCacheUUID, the driverUUID, and slight fluctuation in the memory budget). Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23000>
* lvp: Use common GetPhysicalDeviceFeatures2Alyssa Rosenzweig2023-05-161-540/+313
| | | | | | | | | | This is a big delete-the-code win. Tested by diff'ing vulkaninfo output before/after the patch and confirming no changes (other than the driverInfo git sha and the pipelineCacheUUID). Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io> Acked-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23000>
* radv/ci: document more flakes for navi21Martin Roukala (né Peres)2023-05-161-0/+1
| | | | | | | | | | | | | The following flakes were found in the latest stress run: * dEQP-VK.dynamic_rendering.primary_cmd_buff.basic.2_cmdbuffers_resuming * dEQP-VK.dynamic_rendering.primary_cmd_buff.basic.contents_secondary_primary_cmdbuffers_resuming Rather than documenting them directly, let's use a broad regular expression, to match the already-existing `dEQP-VK.dynamic_rendering.basic.*`. Signed-off-by: Martin Roukala (né Peres) <martin.roukala@mupuf.org> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23014>
* zink: Move the workaround before the EDS setting.MrRobbin2023-05-161-3/+3
| | | | | | | | Then we can guarantee the settings correct, otherwise the 'screen->info.have_EXT_extended_dynamic_state3 = false' and 'screen->info.have_EXT_vertex_input_dynamic_state = false' will be enable, but actually we should disable it when 'have_EXT_extended_dynamic_state2 = false'. Fixes: d5cf6f7d2f9 ("zink: disable dynamic state exts if the previous ones aren't present") Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23046>
* crocus: fix scratch_bos memory leakPatrick Lerda2023-05-161-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change is inspired from iris_destroy_context(). For instance, this issue is triggered with "piglit/bin/glsl-1.50-gs-max-output -scan 1 20 -auto -fbo": Direct leak of 320 byte(s) in 2 object(s) allocated from: #0 0x7f34fc769987 in calloc (/usr/lib64/libasan.so.6+0xb1987) #1 0x7f34f4fa168a in bo_calloc ../src/gallium/drivers/crocus/crocus_bufmgr.c:288 #2 0x7f34f4fa168a in alloc_fresh_bo ../src/gallium/drivers/crocus/crocus_bufmgr.c:350 #3 0x7f34f4fa168a in bo_alloc_internal ../src/gallium/drivers/crocus/crocus_bufmgr.c:419 #4 0x7f34f4fe50a9 in crocus_get_scratch_space ../src/gallium/drivers/crocus/crocus_program.c:2678 #5 0x7f34f55e8954 in crocus_upload_dirty_render_state ../src/gallium/drivers/crocus/crocus_state.c:6871 #6 0x7f34f55e8954 in crocus_upload_render_state ../src/gallium/drivers/crocus/crocus_state.c:7812 #7 0x7f34f5d9f680 in crocus_simple_draw_vbo ../src/gallium/drivers/crocus/crocus_draw.c:332 #8 0x7f34f5d9f680 in crocus_draw_vbo ../src/gallium/drivers/crocus/crocus_draw.c:438 #9 0x7f34f1d2eeba in tc_call_draw_single ../src/gallium/auxiliary/util/u_threaded_context.c:3735 #10 0x7f34f1d12e03 in batch_execute ../src/gallium/auxiliary/util/u_threaded_context.c:394 #11 0x7f34f1d12e03 in tc_batch_execute ../src/gallium/auxiliary/util/u_threaded_context.c:445 #12 0x7f34f1d22c9a in _tc_sync ../src/gallium/auxiliary/util/u_threaded_context.c:680 #13 0x7f34f1d238f8 in tc_texture_map ../src/gallium/auxiliary/util/u_threaded_context.c:2754 #14 0x7f34f120b9d9 in pipe_texture_map_3d ../src/gallium/auxiliary/util/u_inlines.h:579 #15 0x7f34f120b9d9 in st_ReadPixels ../src/mesa/state_tracker/st_cb_readpixels.c:530 #16 0x7f34f10d7355 in read_pixels ../src/mesa/main/readpix.c:1178 #17 0x7f34f10d7355 in _mesa_ReadnPixelsARB ../src/mesa/main/readpix.c:1195 #18 0x7f34f10d7e10 in _mesa_ReadPixels ../src/mesa/main/readpix.c:1210 Fixes: f3630548f1da ("f3630548f1da crocus: initial gallium driver for Intel gfx 4-7") Signed-off-by: Patrick Lerda <patrick9876@free.fr> Reviewed-by: Filip Gawin <filip.gawin@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23019>
* pvr: switch pvr_spm to use pvr_bo_suballocLuigi Santivetti2023-05-162-30/+22
| | | | | | Signed-off-by: Luigi Santivetti <luigi.santivetti@imgtec.com> Reviewed-by: Karmjit Mahil <Karmjit.Mahil@imgtec.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22940>
* pvr: switch pvr_clear to use pvr_bo_suballocLuigi Santivetti2023-05-165-43/+38
| | | | | | Signed-off-by: Luigi Santivetti <luigi.santivetti@imgtec.com> Reviewed-by: Karmjit Mahil <Karmjit.Mahil@imgtec.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22940>
* pvr: switch pvr_descriptor_set_create to use pvr_bo_suballocLuigi Santivetti2023-05-163-16/+15
| | | | | | Signed-off-by: Luigi Santivetti <luigi.santivetti@imgtec.com> Reviewed-by: Karmjit Mahil <Karmjit.Mahil@imgtec.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22940>
* pvr: switch pvr_cmd_buffer_alloc_mem to use pvr_bo_suballocLuigi Santivetti2023-05-167-130/+129
| | | | | | Signed-off-by: Luigi Santivetti <luigi.santivetti@imgtec.com> Reviewed-by: Karmjit Mahil <Karmjit.Mahil@imgtec.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22940>
* pvr: switch pvr_gpu_upload_* to use pvr_bo_suballocLuigi Santivetti2023-05-1615-235/+275
| | | | | | Signed-off-by: Luigi Santivetti <luigi.santivetti@imgtec.com> Reviewed-by: Karmjit Mahil <Karmjit.Mahil@imgtec.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22940>
* pvr: introduce suballocator for internal allocationsLuigi Santivetti2023-05-162-1/+270
| | | | | | | | | Add implementation for a simple sub-allocator in order to save memory when doing internal driver allocations. Signed-off-by: Luigi Santivetti <luigi.santivetti@imgtec.com> Reviewed-by: Karmjit Mahil <Karmjit.Mahil@imgtec.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22940>
* radv: small fix for VkDescriptorSetVariableDescriptorCountLayoutSupportGeorge Ouzounoudis2023-05-161-1/+1
| | | | | | | | The VkDescriptorSetVariableDescriptorCountLayoutSupport structure should be in the pNext chain of VkDescriptorSetLayoutSupport. Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23009>
* mesa: set a type for depth fallback textureTapani Pälli2023-05-161-1/+1
| | | | | | | | | | | Otherwise we will later attempt to figure out format with type GL_NONE which is not handled by _mesa_format_from_format_and_type. Fixes: 0c6e56c391a ("mesa: (more) correctly handle incomplete depth textures") Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/9012 Signed-off-by: Tapani Pälli <tapani.palli@intel.com> Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23013>
* drm-shim: Use anonymous file for file overrideJoshua Watt2023-05-161-5/+5
| | | | | | | | | Using a pipe might mean that either the read or write call can block, most likely deadlocking the calling process. Instead, write the contents in an anonymous file when the file is opened to be read back. Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18341>
* drm-shim: Set file type in readdir()Joshua Watt2023-05-161-0/+2
| | | | | | | | | Some programs (in particular, older QEMU) will check the type of the rendernode returned in readdir() to see if it is a character device before opening it. Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18341>
* ac/llvm: remove redundant nir_lower_legacy_atomicsQiang Yu2023-05-161-5/+0
| | | | | | | | | | Now both radeonsi and radv call it in driver. Reviewed-by: Timur Kristóf <timur.kristof@gmail.com> Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io> 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/23018>
* radeonsi: fix aco compile for atomic opsQiang Yu2023-05-162-42/+9
| | | | | | | | | | | LLVM path will do this in ac_nir_translate(), ACO path need driver to handle it. Reviewed-by: Timur Kristóf <timur.kristof@gmail.com> Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io> 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/23018>
* ac/llvm: remove the double frcp special handlingQiang Yu2023-05-162-11/+2
| | | | | | | | | KHR-GL45.gpu_shader_fp64.builtin.mod_* relaxed precision requirement. 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/23012>
* ci/freedreno: add recent a630 flakeDavid Heidelberg2023-05-161-0/+3
| | | | | Signed-off-by: David Heidelberg <david.heidelberg@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23044>
* ci/venus: add recent flakesDavid Heidelberg2023-05-161-0/+2
| | | | | Signed-off-by: David Heidelberg <david.heidelberg@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23043>
* anv: enable the GPL feature based on whether the extension is supportedIván Briano2023-05-161-1/+1
| | | | | | | | | | Instead of checking if the very same bit we want to enable is already enabled, which obviously doesn't work. Fixes: fbc0e74bdac ("anv: enable graphics pipeline libraries by default") Acked-by: Nanley Chery <nanley.g.chery@intel.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23039>
* zink: flag batch usage on swapchain imagesMike Blumenkrantz2023-05-163-1/+36
| | | | | | | | | | | | | | while swapchains themselves are protected against early deletion during presentation, there is nothing protecting them from deletion while they are rendering if a swapchain updates while rendering but before presentation to address this, add batch usage to swapchains which can be checked during pruning to ensure a rendering swapchain isn't pruned Fixes: dc8c9d20568 ("zink: prune old swapchains on present") Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22962>
* zink: set higher prio on dedicated memory allocationsMike Blumenkrantz2023-05-161-0/+8
| | | | | | | this should guarantee that e.g., swapchain type images aren't paged out Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22855>
* zink: hook up some memory extensionsMike Blumenkrantz2023-05-161-0/+2
| | | | | | | | enabling VK_EXT_pageable_device_local_memory guarantees that host memory allocations will not consume device-local memory and enables overallocation of device memory when paging can be done Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22855>
* zink: slightly simplify bda allocation chainingMike Blumenkrantz2023-05-161-4/+3
| | | | Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22855>
* ci/broadcom: skip timeouting ssbo.layout.3_level_array.std430.mat4 on RPi4David Heidelberg2023-05-151-0/+1
| | | | | Signed-off-by: David Heidelberg <david.heidelberg@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23042>
* lavapipe: EXT_attachment_feedback_loop_layout_dynamic_stateMike Blumenkrantz2023-05-153-1/+11
| | | | | | Reviewed-by: Konstantin Seurer <konstantin.seurer@gmail.com> Reviewed-by: Dave Airlie <airlied@redhat.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22964>
* zink: only add feedback loop usage bit if extension is supportedMike Blumenkrantz2023-05-151-2/+3
| | | | | | cc: mesa-stable Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22960>
* zink: ignore no-op image copiesMike Blumenkrantz2023-05-151-1/+9
| | | | | | | | | rare, but it happens and is illegal affects: GTF-GL46.gtf30.GLCoverage.CoverageGL30 Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22960>
* zink: reorder some image copy codeMike Blumenkrantz2023-05-151-2/+3
| | | | | | no functional changes, just making other fixes easier to see Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22960>
* zink: reject blits where src/dst is 3D and dst/src z!=0Mike Blumenkrantz2023-05-151-0/+6
| | | | | | | | | this is technically illegal even though it works everywhere, though future spec changes may make it legal affects KHR-GLES3.copy_tex_image_conversions.required.texture3d_cubemap_negz Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22960>
* zink: reorder some native blit codeMike Blumenkrantz2023-05-151-19/+20
| | | | | | | no functional changes, but this will make it more convenient to reject certain blits Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22960>
* zink: destroy current batch state after all other batch statesMike Blumenkrantz2023-05-151-4/+4
| | | | | | | | | | | some resources may not be destroyed immediately and may instead be queued for deletion onto the current batch state, so ensure that the current state is the last one to be destroyed so that all deferred resources are also destroyed cc: mesa-stable Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23033>
* zink: don't leak swapchain readback semaphoresMike Blumenkrantz2023-05-151-0/+3
| | | | | | | | these are considered usable after the queue goes idle, so add them back into the cache Fixes: e9f18f64b9e ("zink: also cache swapchain semaphores") Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23033>
* r600: Use unified atomicsAlyssa Rosenzweig2023-05-154-134/+61
| | | | | | Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io> Reviewed-by: Gert Wollny <gert.wollny@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23026>
* iris: Init CCS_E to COMPRESSED_NO_CLEAR for XeHPNanley Chery2023-05-151-7/+20
| | | | | | | | | | | | | | | Use COMPRESSED_NO_CLEAR for the initial CCS aux state instead of COMPRESSED_CLEAR. This removes a dependency on the initial clear color, meaning that some resolves related to clear color management are now avoided. In the Car Chase benchmark, this avoids all 50 CCS resolves. These only happen during the warm-up phase of the benchmark, so I'm not sure there is an impact on FPS. This was tested on a DG2 in small-BAR mode. Reviewed-by: Jianxun Zhang <jianxun.zhang@intel.com> Reviewed-by: Sagar Ghuge <sagar.ghuge@intel.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22857>
* intel/blorp: Assert an 8bpp fast clear restrictionNanley Chery2023-05-151-0/+25
| | | | | | | | | | | | | We can't do fast clear operations on some LODs of 8bpp surfaces. Add an assertion to BLORP to protect against drivers attempting to do this. This assertion was successfully hit with some local modifications to iris and with the piglit test case, "generatemipmap-base-change format". Ref: https://gitlab.freedesktop.org/mesa/mesa/-/issues/7301 Reviewed-by: Sagar Ghuge <sagar.ghuge@intel.com> Reviewed-by: Jianxun Zhang <jianxun.zhang@intel.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22857>
* docs: Update list of extensions implemented by dznJesse Natalie2023-05-151-39/+39
| | | | | | | | I hadn't been keeping this up-to-date as development was rapid but now that we're starting to stabilize and new work is largely going to be new extensions, it makes sense to start tracking this better. Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23038>
* venus: drop unused sem_feedback_count from vn_queue_bind_sparse_submit_batchDavid Heidelberg2023-05-151-8/+0
| | | | | | | | | | | | | | | The values isn't used later. Resolves gcc warning: ``` ../src/virtio/vulkan/vn_queue.c:1006:13: error: variable 'sem_feedback_count' set but not used [-Werror,-Wunused-but-set-variable] uint32_t sem_feedback_count = 0; ``` Fixes: a55d26b566f1 ("venus: add back sparse binding support") Signed-off-by: David Heidelberg <david.heidelberg@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23034>
* intel/isl: Fix map between sRGB and linear formatsZhang, Jianxun2023-05-151-1/+3
| | | | | | | | | | | | | | | | | Some SRGB formats don't get the expected linear counterparts in isl_format_srgb_to_linear() in the generated isl_format_layout.c. The replace() of string in python returns the unchanged input string when no replacement occurred, so the first rule ('_SRGB', '') returns the original SRGB format name that passes the following check unintendedly. Another quirk is needed for a pair of formats not following the patterns of other formats. Signed-off-by: Zhang, Jianxun <jianxun.zhang@intel.com> Reviewed-by: Nanley Chery <nanley.g.chery@intel.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22247>
* rusticl: implement cl_khr_pci_bus_infonorablackcat2023-05-153-0/+26
| | | | Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23022>
* spirv: fix argument to ray query intrinsicLionel Landwerlin2023-05-151-1/+1
| | | | | | | Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Fixes: 0cf22f9af3 ("nir: Make rq_load committed src an index") Reviewed-by: Konstantin Seurer <konstantin.seurer@gmail.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23032>
* dzn: Hook up fd semaphore import/exportJesse Natalie2023-05-152-0/+34
| | | | Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22879>
* dzn: Hook up win32 semaphore import/exportJesse Natalie2023-05-152-2/+73
| | | | Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22879>
* dzn: External Fd memory extensionJesse Natalie2023-05-151-7/+37
| | | | Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22879>
* dzn: External Win32 memory extensionJesse Natalie2023-05-154-56/+421
| | | | Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22879>
* dzn: Dedicated resource cleanupJesse Natalie2023-05-155-155/+163
| | | | | | | | | | Vulkan's concept of dedicated resources is dangerously close to D3D12's concept of a "committed" resource, where the memory and resource are inextricably tied. This is a minor optimization, but will start to be more important going forward with external memory. Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22879>
* dzn: Finish implementing KHR_synchronization2Jesse Natalie2023-05-152-22/+13
| | | | | | | | | This was already mostly implemented. Without this, the synchronization2 sharing tests will crash, because there's a CTS bug that's missing a skip check for Windows. Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22879>
* dzn: Don't zero an output struct that can have pNextJesse Natalie2023-05-151-3/+1
| | | | Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22879>