Timo Aaltonen pushed to branch debian-experimental at X Strike Force / lib / mesa
Commits: a53a394d by Christian Gmeiner at 2023-10-25T10:35:47+02:00 ci: Bump PyYAML to 6.0.1 Fixes an issue I am seeing on Fedora 39. For more details about the upstream fix see https://github.com/yaml/pyyaml/pull/702 Signed-off-by: Christian Gmeiner <cgmei...@igalia.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25878> - - - - - 471942e0 by Christian Gmeiner at 2023-10-25T09:46:37+00:00 etnaviv: Don't leak disk_cache Fixes: 77af1ca690f ("etnaviv: add disk cache") Signed-off-by: Christian Gmeiner <cgmei...@igalia.com> Reviewed-by: Tomeu Vizoso <to...@tomeuvizoso.net> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25877> - - - - - 3de5da7a by Lionel Landwerlin at 2023-10-25T11:47:40+00:00 anv: fixup 32bit build of internal shaders Signed-off-by: Lionel Landwerlin <lionel.g.landwer...@intel.com> Fixes: 11b4c23d19 ("anv: add ring buffer mode to generated draw optimization") Fixes: db335d9b73 ("anv: factor out host/gpu internal shaders interfaces") Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/10037 Reviewed-by: Tapani Pälli <tapani.pa...@intel.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25870> - - - - - c7e522a9 by Tapani Pälli at 2023-10-25T12:37:30+00:00 egl: fix leaking drmDevicePtr in _eglFindDevice Fixes: 3a9e1014e13 ("egl: Rename _eglAddDevice() to _eglFindDevice()") Signed-off-by: Tapani Pälli <tapani.pa...@intel.com> Reviewed-by: Lionel Landwerlin <lionel.g.landwer...@intel.com> Reviewed-by: Jordan Justen <jordan.l.jus...@intel.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25524> - - - - - 6012bde0 by Louis-Francis Ratté-Boulianne at 2023-10-25T14:25:30+00:00 panfrost: Fix error in comment "linear" -> "tiled" Signed-off-by: Louis-Francis Ratté-Boulianne <l...@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25012> - - - - - 39efd7c2 by Louis-Francis Ratté-Boulianne at 2023-10-25T14:25:30+00:00 panfrost: Add methods to determine slice and body alignment Those methods are needed to have the same alignment everywhere without hard-coding the values Signed-off-by: Louis-Francis Ratté-Boulianne <l...@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25012> - - - - - 9f3a79a6 by Louis-Francis Ratté-Boulianne at 2023-10-25T14:25:30+00:00 panfrost: Add method to get size of AFBC subblocks Each AFBC superblock is subdivised into subblocks that are compressed individually. For all formats that we currently support, the subblocks are 4x4 pixels. Signed-off-by: Louis-Francis Ratté-Boulianne <l...@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25012> - - - - - 113d88f9 by Louis-Francis Ratté-Boulianne at 2023-10-25T14:25:31+00:00 panfrost: Precalculate stride and nr of blocks for AFBC layouts For AFBC packing, we will need to have the stride of the resource in terms of superblocks and the total number of blocks. It is easier to pre-calculate once when initializing the resource layout. Signed-off-by: Louis-Francis Ratté-Boulianne <l...@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25012> - - - - - 542c44ff by Louis-Francis Ratté-Boulianne at 2023-10-25T14:25:31+00:00 panfrost: Add panfrost_batch_write_bo Needed when writing to a BO from a compute shader when the BO isn't assigned to a resource yet. Signed-off-by: Louis-Francis Ratté-Boulianne <l...@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25012> - - - - - 91514e70 by Louis-Francis Ratté-Boulianne at 2023-10-25T14:25:31+00:00 panfrost: Make panfrost_resource_create_with_modifier public It allows creating a resource when we already know which modifier we're gonna use. Signed-off-by: Louis-Francis Ratté-Boulianne <l...@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25012> - - - - - c1429a31 by Louis-Francis Ratté-Boulianne at 2023-10-25T14:25:31+00:00 panfrost: Split out internal of `panfrost_launch_grid` For an upcoming feature (AFBC packing), we're gonna run internal compute shaders on resources. This commit just split the internal of `panfrost_launch_grid` so we can run the shader on a given batch. Signed-off-by: Louis-Francis Ratté-Boulianne <l...@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25012> - - - - - ae3fb308 by Louis-Francis Ratté-Boulianne at 2023-10-25T14:25:31+00:00 panfrost: Add infrastructure for internal AFBC compute shaders A few compute shaders are needed to support AFBC-packing. Here is just the boilerplate to create, compile and retrieve the shaders. Signed-off-by: Louis-Francis Ratté-Boulianne <l...@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25012> - - - - - 32fbd388 by Louis-Francis Ratté-Boulianne at 2023-10-25T14:25:31+00:00 panfrost: Add method to get size of AFBC superblocks valid data The compute shader is going through all the AFBC header blocks and calculating the size of valid data by summing up the subblock sizes (and taking into account solid color, uncompressed mode and copy blocks). The result is written into the given buffer (array of `pan_afbc_block_info`). The size is rounded up to the alignment parameter directly in the shader. Signed-off-by: Louis-Francis Ratté-Boulianne <l...@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25012> - - - - - bc55d150 by Louis-Francis Ratté-Boulianne at 2023-10-25T14:25:31+00:00 panfrost: Add support for AFBC packing When the GPU is converting a texture from linear/tiled to compressed AFBC, it uses a sparse memory layout. That means that the superblocks are stored starting at intervals equal to the size of an uncompressed superblock. When memory usage needs to be optimized, it is possible to pack the resource by trimming each superblock as much as possible. The GPU will still be able to read from these packed textures, but won't be able to write directly to them. If the layout is AFBC-tiled, the packing process will also de-tile as tiled+packed is not supported by Mali GPUs. No new modifier flag has been added as the absence of the `AFBC_FORMAT_MOD_SPARSE` flag means the resource will be packed. Signed-off-by: Louis-Francis Ratté-Boulianne <l...@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25012> - - - - - e9d523bb by Louis-Francis Ratté-Boulianne at 2023-10-25T14:25:31+00:00 panfrost: Legalize resource when attaching to a batch Make sure we don't convert the texture for nothing by only legalizing when creating a batch instead of on surface creation. Also, to avoid recursive blit, we need to legalize the destination resource before blitting. Finally, make sure the resource has a sparse memory layout if AFBC compressed. The GPU doesn't support rendering to a AFBC-packed texture. Signed-off-by: Louis-Francis Ratté-Boulianne <l...@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25012> - - - - - bc91af80 by Louis-Francis Ratté-Boulianne at 2023-10-25T14:25:31+00:00 panfrost: Don't force constant modifier after converting After converting a texture from one modifier to another, there is no reason to force the modifier to stay constant afterwards. Set back `modifier_constant` to false because it is changed by `resource_setup` as it is causing issues when implementing AFBC packing. Signed-off-by: Louis-Francis Ratté-Boulianne <l...@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25012> - - - - - 33b48a55 by Louis-Francis Ratté-Boulianne at 2023-10-25T14:25:31+00:00 panfrost: Add debug flag to force packing of AFBC textures on upload Add `forcepack` flag that will force conversion to AFBC-packed right after a texture is uploaded when possible. We only pack 2D resources larger than 32x32 as of now. Signed-off-by: Louis-Francis Ratté-Boulianne <l...@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25012> - - - - - 888d7c8e by Louis-Francis Ratté-Boulianne at 2023-10-25T14:25:31+00:00 panfrost: Add some debug utility methods for resources Add a method to dump a specific superblock given its index (header and few first bytes from the body) and a method to dump a resource to a ppm file. Signed-off-by: Louis-Francis Ratté-Boulianne <l...@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25012> - - - - - 5a928f75 by Louis-Francis Ratté-Boulianne at 2023-10-25T14:25:31+00:00 panfrost: Add env variable for max AFBC packing ratio Add `PAN_MAX_AFBC_PACKING_RATIO` variable. If the ratio (size of the packed resource) / (size of the sparse resource) * 100 is above that value, we don't care about packing it. Signed-off-by: Louis-Francis Ratté-Boulianne <l...@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25012> - - - - - 6bbbdd5c by Seppo Yli-Olli at 2023-10-25T15:03:43+00:00 zink: Fix SyntaxWarning in zink_extensions script Fix regex pattern in zink_extensions to use proper escaping. While the original code works, it relies on Python ignoring incorrect syntax and fallbacking to passing through the escape. Current behaviour results in SyntaxWarning whenever the code is used. Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25881> - - - - - 1b0fbcbe by Samuel Pitoiset at 2023-10-25T15:29:22+00:00 radv: remove outdated RADV_DEBUG=vmfaults support It's been a very long time since this was useless because dmesg required sudo access for a while. This will be replaced by the new GPUVM fault interface which allows to query from the kernel directly instead of trying to parse dmesg. Signed-off-by: Samuel Pitoiset <samuel.pitoi...@gmail.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23238> - - - - - 37462ce7 by Samuel Pitoiset at 2023-10-25T15:29:22+00:00 amd: update amdgpu_drm.h Signed-off-by: Samuel Pitoiset <samuel.pitoi...@gmail.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23238> - - - - - bdc62108 by Samuel Pitoiset at 2023-10-25T15:29:22+00:00 amd: add has_gpuvm_fault_query Whether the kernel allows to query the last GPUVM fault. Signed-off-by: Samuel Pitoiset <samuel.pitoi...@gmail.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23238> - - - - - 5eb8b3e9 by Samuel Pitoiset at 2023-10-25T15:29:22+00:00 radv/amdgpu: add support quering the last GPUVM fault Signed-off-by: Samuel Pitoiset <samuel.pitoi...@gmail.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23238> - - - - - 5a6208ad by Samuel Pitoiset at 2023-10-25T15:29:22+00:00 radv: query and report the last GPUVM fault with RADV_DEBUG=hang Tested with a small use-after-free Vulkan test. It's pretty basic for now but I think I will add status decoding support to report more useful information. Signed-off-by: Samuel Pitoiset <samuel.pitoi...@gmail.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23238> - - - - - 1febb6f7 by Samuel Pitoiset at 2023-10-25T15:29:23+00:00 radv: report the last GPUVM fault when a device lost is detected Signed-off-by: Samuel Pitoiset <samuel.pitoi...@gmail.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23238> - - - - - 6aef22af by Karol Herbst at 2023-10-25T16:23:55+00:00 docs/features: remove empty lines confusing mesamatrix Signed-off-by: Karol Herbst <kher...@redhat.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25886> - - - - - 9a6c20e6 by Alyssa Rosenzweig at 2023-10-25T16:34:47+00:00 nir/trivialize_registers: Handle obscure load hazard Somebody less tired than me would add a unit test for this. Offending snippet: 32 %58 = @load_reg (%55) (base=0, legacy_fabs=0, legacy_fneg=0) 32 %57 = @load_reg (%55) (base=0, legacy_fabs=0, legacy_fneg=0) 32 %21 = iadd %57, %15 (0x1) @store_reg (%21, %55) (base=0, wrmask=x, legacy_fsat=0) 32 %56 = @load_reg (%55) (base=0, legacy_fabs=0, legacy_fneg=0) 32 %22 = i2f32 %56 32 %23 = load_const (0x41000000 = 8.000000) 32 %24 = fdiv %22, %23 (8.000000) 32 %90 = mov %24 @store_reg_indirect (%90, %78, %58) (base=0, wrmask=x, legacy_fsat=0) Closes: #10031 Fixes: d313eba94ef ("nir: Add pass for trivializing register access") Signed-off-by: Alyssa Rosenzweig <aly...@rosenzweig.io> Reported-by: Timothy Arceri <tarc...@itsqueeze.com> Reviewed-by: Faith Ekstrand <faith.ekstr...@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25865> - - - - - f9289dfd by Rhys Perry at 2023-10-25T17:27:47+00:00 nir/serialize: fix signed integer overflow Fixes UBSan error: src/compiler/nir/nir_serialize.c:1277:70: runtime error: left shift of 524287 by 13 places cannot be represented in type 'int' Signed-off-by: Rhys Perry <pendingchao...@gmail.com> Reviewed-by: Timur Kristóf <timur.kris...@gmail.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25853> - - - - - 1afd0878 by Rhys Perry at 2023-10-25T17:27:47+00:00 nir/lower_shader_calls: skip zero-sized qsort Fixes UBSan: src/compiler/nir/nir_lower_shader_calls.c:1681:7: runtime error: null pointer passed as argument 1, which is declared to never be null Signed-off-by: Rhys Perry <pendingchao...@gmail.com> Reviewed-by: Timur Kristóf <timur.kris...@gmail.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25853> - - - - - 477b310d by Rhys Perry at 2023-10-25T17:27:47+00:00 util: skip zero-sized SHA1Update Fixes UBSan error: src/util/sha1/sha1.c:140:8: runtime error: null pointer passed as argument 2, which is declared to never be null Signed-off-by: Rhys Perry <pendingchao...@gmail.com> Reviewed-by: Timur Kristóf <timur.kris...@gmail.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25853> - - - - - ff093f52 by Mike Blumenkrantz at 2023-10-25T18:23:16+00:00 zink: use weston for anv ci gotta get those juicy modifiers Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25299> - - - - - 1c3db3e3 by Mike Blumenkrantz at 2023-10-25T18:23:16+00:00 zink: blow up broken xservers more reliably only certain drivers can successfully run an xserver with implicit modifier handling, and the rest will have broken rendering until such time that a vk extension emerges to handle this more widely, break this interop for drivers where it's already broken fixes #9819 Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25299> - - - - - 99ff88cb by Mike Blumenkrantz at 2023-10-25T18:23:16+00:00 zink: delete some dead modifier handling this is no longer hit Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25299> - - - - - d0f775e5 by Mike Blumenkrantz at 2023-10-25T18:23:17+00:00 ci: skip implicit modifier piglits for zink these may work coincidentally but not uniformly Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25299> - - - - - 84001ea4 by Iago Toral Quiroga at 2023-10-25T19:11:37+00:00 v3dv: fix confusing nomenclature about DRM nodes We have been using drm_render_device to refer to the render device and drm_primary_device to refer to the display device, but that is confusing because the render device also has a primary node (for legacy reasons), so don't use primary to refer to the display device. Reviewed-by: Alejandro Piñeiro <apinhe...@igalia.com> Acked-by: Erico Nunes <nunes.er...@gmail.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25748> - - - - - a97065ad by Lionel Landwerlin at 2023-10-25T19:27:23+00:00 anv: fix uninitialized use of compute initialization batch We sometimes fail initialization. Signed-off-by: Lionel Landwerlin <lionel.g.landwer...@intel.com> Fixes: 09d12e6727 ("anv: Add support for I915_ENGINE_CLASS_COMPUTE in init_device_state()") Reviewed-by: Jordan Justen <jordan.l.jus...@intel.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25891> - - - - - c8c90eb4 by Eric Engestrom at 2023-10-25T21:29:33+01:00 VERSION: bump for rc1 - - - - - cce98d86 by Timo Aaltonen at 2023-10-26T12:20:48+03:00 Merge branch 'upstream-experimental' into debian-experimental - - - - - 777e50de by Timo Aaltonen at 2023-10-26T12:21:09+03:00 version bump - - - - - b19d46d8 by Timo Aaltonen at 2023-10-26T14:28:21+03:00 control: Drop python3-minimal from -vulkan-drivers Depends. - - - - - 0b7c70f8 by Timo Aaltonen at 2023-10-26T14:28:44+03:00 release to experimental - - - - - 30 changed files: - VERSION - bin/ci/requirements.txt - debian/changelog - debian/control - debian/control.in - docs/envvars.rst - docs/features.txt - include/drm-uapi/amdgpu_drm.h - src/amd/common/ac_gpu_info.c - src/amd/common/ac_gpu_info.h - src/amd/vulkan/radv_debug.c - src/amd/vulkan/radv_debug.h - src/amd/vulkan/radv_device.c - src/amd/vulkan/radv_instance.c - src/amd/vulkan/radv_private.h - src/amd/vulkan/radv_radeon_winsys.h - src/amd/vulkan/winsys/amdgpu/radv_amdgpu_winsys.c - src/broadcom/vulkan/v3dv_device.c - src/compiler/nir/nir_lower_shader_calls.c - src/compiler/nir/nir_serialize.c - src/compiler/nir/nir_trivialize_registers.c - src/egl/main/egldevice.c - src/gallium/drivers/etnaviv/etnaviv_compiler.c - src/gallium/drivers/panfrost/meson.build - + src/gallium/drivers/panfrost/pan_afbc_cso.c - + src/gallium/drivers/panfrost/pan_afbc_cso.h - src/gallium/drivers/panfrost/pan_blit.c - src/gallium/drivers/panfrost/pan_cmdstream.c - src/gallium/drivers/panfrost/pan_context.c - src/gallium/drivers/panfrost/pan_context.h The diff was not included because it is too large. View it on GitLab: https://salsa.debian.org/xorg-team/lib/mesa/-/compare/c7fe80d27e983d8fa0f3ce42cd0328dc5e7a8a79...0b7c70f8a5d0316ec00a005e8cccc873493bd4a1 -- View it on GitLab: https://salsa.debian.org/xorg-team/lib/mesa/-/compare/c7fe80d27e983d8fa0f3ce42cd0328dc5e7a8a79...0b7c70f8a5d0316ec00a005e8cccc873493bd4a1 You're receiving this email because of your account on salsa.debian.org.