[Git][xorg-team/lib/mesa][upstream-unstable] 56 commits: docs: add sha sum for 26.0.4
"Timo Aaltonen (@tjaalton)" <[email protected]>
| Newsgroups | gmane.linux.debian.devel.x |
|---|---|
| Message-ID | <[email protected]> |
Timo Aaltonen pushed to branch upstream-unstable at X Strike Force / lib / mesa Commits: bbc23bed by Eric Engestrom at 2026-04-03T11:31:41+02:00 docs: add sha sum for 26.0.4 - - - - - 41ca0dd7 by Eric Engestrom at 2026-04-14T15:27:44+02:00 .pick_status.json: Update to 7e163fb79377c0fdf6d4e99ca4775fa7e1a4299e Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40979> - - - - - eb6df9c8 by Eric Engestrom at 2026-04-14T15:27:44+02:00 .pick_status.json: Mark 9ff879441f91a8296891e2e13264a7a015a11a7d as denominated Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40979> - - - - - b3b0c900 by Eric Engestrom at 2026-04-14T15:27:44+02:00 .pick_status.json: Mark 4b3bd6b0b54d998a31356bf049911004683ea64f as denominated Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40979> - - - - - 46aea87a by Samuel Pitoiset at 2026-04-14T15:27:44+02:00 spirv: fix OpUntypedVariableKHR with optional data type parameter This would read OOB and crash because data type is optional per the SPIRV spec. Original patch by Faith Ekstrand <[email protected]>. Cc: mesa-stable Signed-off-by: Samuel Pitoiset <[email protected]> (cherry picked from commit 1f8be7bfad64e4b8d4e3cf14723b5ff229a36c01) Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40979> - - - - - e1455799 by Ahmed Hesham at 2026-04-14T15:27:44+02:00 rusticl: fix flag validation when creating an image >From the OpenCL specification: `CL_MEM_KERNEL_READ_AND_WRITE`: This flag is only used by clGetSupportedImageFormats to query image formats that may be both read from and written to by the same kernel instance. To create a memory object that may be read from and written to use CL_MEM_READ_WRITE. If an application follows the instructions above, i.e. query a list of supported image formats, using `CL_MEM_KERNEL_READ_AND_WRITE` as input, and then attempts to create an image using one of the supported image formats, by calling `clCreateImage` and passing `CL_MEM_READ_WRITE`, the call to the image creation entry point should succeed. This instead fails on Mali devices with the error `CL_IMAGE_FORMAT_NOT_SUPPORTED`. Rusticl fails when validating the image format against its supported flags. Formats that support `PIPE_BIND_SHADER_IMAGE` have their supported flags set as `CL_MEM_WRITE_ONLY` and `CL_MEM_KERNEL_READ_AND_WRITE`. This changes the supported CL flags to be `CL_MEM_WRITE_ONLY` for `PIPE_BIND_SHADER_IMAGE` and `CL_MEM_READ_WRTE | CL_MEM_KERNEL_READ_AND_WRITE` for `PIPE_BIND_SAMPLER_VIEW | PIPE_BIND_SHADER_IMAGE`. Fixes: 3386e142 (rusticl: support read_write images) Fixes OpenCL-CTS test: `test_image_streams` on Mali. Invocation: ``` test_image_streams write 1D CL_RGB CL_SIGNED_INT8 ``` Signed-off-by: Ahmed Hesham <[email protected]> (cherry picked from commit e77c984cefbc8bb9d95e0dc47d36b069b1498a5a) Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40979> - - - - - 03475490 by Pavel Ondračka at 2026-04-14T15:27:45+02:00 st/bitmap: release the temporary bitmap sampler view st_cb_bitmap appends a temporary bitmap sampler view to the sampler view array passed to set_sampler_views(). 1a5c660ef5b8 changed this path to only release the extra YUV views returned by st_get_sampler_views(), but the temporary bitmap view is created locally and is not part of extra_sampler_views. It therefore stopped being released so release the temporary bitmap sampler view explicitly after drawing the bitmap quad. Fixes: 1a5c660ef5b8 ("st/bitmap: only release YUV samplerviews") (cherry picked from commit 33864e569e3d8d977524d002b4453e1cb749007c) Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40979> - - - - - 97213d18 by Job Noorman at 2026-04-14T15:27:45+02:00 nir/opt_varyings: fix alu def cloning nir_builder_alu_instr_finish_and_insert initialized the def's bit_size and num_components so we should set them afterwards. Signed-off-by: Job Noorman <[email protected]> Reviewed-by: Marek Olšák <[email protected]> Reviewed-by: Emma Anholt <[email protected]> Fixes: c66967b5cb7 ("nir: add nir_opt_varyings, new pass optimizing and compacting varyings") (cherry picked from commit 273fd18b89fe97dd5adff12cf229dfa7e804cb96) Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40979> - - - - - 7745b469 by Job Noorman at 2026-04-14T15:27:45+02:00 nir/gather_info: clear interpolation qualifiers before gathering Signed-off-by: Job Noorman <[email protected]> Reviewed-by: Emma Anholt <[email protected]> Fixes: 66740d9c91b ("nir: gather interpolation qualifiers") (cherry picked from commit a72704d0fbd0dc594570ae2c97b7a8015a944b8e) Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40979> - - - - - 7b5ed90b by Timothy Arceri at 2026-04-14T15:27:45+02:00 radeonsi: add Gun Godz workaround This is another game based on the old YoYo engine Cc: mesa-stable Closes: https://gitlab.freedesktop.org/mesa/mesa/-/work_items/15209 Reviewed-by: Marek Olšák <[email protected]> Reviewed-by: Pierre-Eric Pelloux-Prayer <[email protected]> (cherry picked from commit 27b56314ee4eb044d378434f6ee84bcadd049ccb) Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40979> - - - - - fa14f8e6 by Job Noorman at 2026-04-14T15:27:45+02:00 ir3: fix handle_partial_const with vectorized src Signed-off-by: Job Noorman <[email protected]> Fixes: 50a91fbf87c ("freedreno/ir3: cleanup "partially const" ubo srcs") (cherry picked from commit c27f0406b04da824a25e47d4cdc255b39a7217a8) Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40979> - - - - - 7757ddb8 by Georg Lehmann at 2026-04-14T15:27:45+02:00 nir/opt_load_skip_helpers: don't skip helpers for store_scratch data Scratch stores store data for helper lanes that might be used later by an instruction that cares about helpers, or even by control flow. Fixes: a65009e8087 ("nir: Add a nir_opt_tex_skip_helpers optimization") Closes: https://gitlab.freedesktop.org/mesa/mesa/-/work_items/14965 Reviewed-by: Rhys Perry <[email protected]> Reviewed-by: Marek Olšák <[email protected]> (cherry picked from commit fc19ce6c179b5a1f501a020e436daa8dd7fb89b3) Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40979> - - - - - fc45812f by Karol Herbst at 2026-04-14T15:27:45+02:00 radeonsi: set valid_buffer_range for CL buffers Seems like we never set the range for CL buffers which caused spurious test fails in the CL CTS. Cc: mesa-stable Reviewed-by: Marek Olšák <[email protected]> (cherry picked from commit 02679a51fdde8745bbe7c724f4aa43a504b58c18) Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40979> - - - - - 28a32fe5 by Job Noorman at 2026-04-14T15:27:45+02:00 nir/opt_uniform_subgroup: fix ballot_bit_count components ballot_bit_count_reduce expects the ballot to have 4 components causing validation failures on targets where 1 < ballot_components < 4. Fix this by padding the ballot to 4 components. Signed-off-by: Job Noorman <[email protected]> Fixes: ae66bd1c007 ("nir/opt_uniform_subgroup: use ballot_bit_count") Reviewed-by: Georg Lehmann <[email protected]> (cherry picked from commit cc6eec79c2bbb3cd0508a15baaa0d07655be7b23) Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40979> - - - - - 190c65eb by Natalie Vock at 2026-04-14T15:27:45+02:00 radv/rt: Don't enable midpoint sorting Midpoint sorting is incompatible with how our traversal works. Specifically, we change tMax when a hit is committed so we can skip over BVH nodes that are guaranteed not to produce a closer hit. However, changing tMax also changes the intersection interval of box nodes with the ray, and thus, the midpoints of that interval. Stackless traversal relies on getting nodes back in the exact same order as before, and if that requirement is not met, traversal may incorrectly skip over nodes. The likely benefit of midpoint sorting does not make up for the loss of ability to skip over BVH nodes exceeding tMax, so simply disable midpoint sorting. This fixes geometry being visible behind other geometry when it shouldn't be in various applications, including Half-Life 2 RTX. Cc: mesa-stable (cherry picked from commit c1a7680d9327196dbb233867fb27aabe2ef7c3f7) Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40979> - - - - - 7cf57ccd by Faith Ekstrand at 2026-04-14T15:27:45+02:00 pan/bi: Support more swizzle aliases in the bifrost pack code Fixes: 82328a524519 ("pan/bi: Generate instruction packer for new IR") Reviewed-by: Lorenzo Rossi <[email protected]> (cherry picked from commit 3fffcf4338dfff7b9cdd5ade6eb69557b40cacf3) Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40979> - - - - - ddf6c31b by Faith Ekstrand at 2026-04-14T15:27:45+02:00 pan/bi: Delete a few instruction encodings The non-trivial non-replicate swizzles on IADD.v4x8 and ISUB.v4x8 are either documented wrong or broken in hardware. Instead of swizzling b0101 and b2323, they swizzle b0011 and b2233 on G52. This is either a hardware bug or an issue with documentation. In either case, it's probably best not to trust it. Those swizzles aren't all that useful anyway. We also weren't using any of them before (or they'd have broken) so this isn't a performance regression. Cc: mesa-stable Reviewed-by: Lorenzo Rossi <[email protected]> (cherry picked from commit 538b5c411eab0c03c298412f74594d33a0396a9a) Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40979> - - - - - cb93fe85 by Faith Ekstrand at 2026-04-14T15:27:45+02:00 pan/bi/ra: Allow offsets on tied sources The only real requirement here is that the destination offset is zero and that the destination is big enough to hold the source. The source offset doesn't matter. Fixes: bc17288697f8 ("pan/bi: Lower split/collect before RA") Reviewed-by: Lorenzo Rossi <[email protected]> (cherry picked from commit 05c5e52054ff41bfbe47c86d08d61246a40c899a) Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40979> - - - - - e8955066 by Faith Ekstrand at 2026-04-14T15:27:45+02:00 pan/bi: Use bi_half() for texture MS indices It feeds into a v2i16 so it needs to be 16-bit. Fixes: ae79f6765a37 ("pan/bi: Emit Valhall texture instructions") Reviewed-by: Lorenzo Rossi <[email protected]> (cherry picked from commit e63713079482fa1e34099619effc7e66af54ee92) Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40979> - - - - - 871a933c by Xianzhong Li at 2026-04-14T15:27:45+02:00 panfrost: Fix GEM handle refcount leak in panfrost_bo_import panfrost_bo_import() calls drmPrimeFDToHandle() then pan_kmod_bo_import(), which also calls drmPrimeFDToHandle() internally. This double import causes GEM handle refcount leaks because each drmPrimeFDToHandle() increments the kernel's GEM handle refcount, but only one drmCloseBufferHandle() is called during cleanup by panfrost_kmod_bo_free(or panthor_kmod_bo_free). Fix by removing the redundant drmPrimeFDToHandle() and using pan_kmod_bo_import() directly. On re-import of existing buffers, properly release the extra pan_kmod_bo reference with pan_kmod_bo_put(). This ensures GEM handle refcount, pan_kmod_bo refcount, and panfrost_bo refcount are all properly balanced. Fixes: 5089a758dfb1 ("panfrost: Back panfrost_bo with pan_kmod_bo object") Signed-off-by: Xianzhong Li <[email protected]> Reviewed-by: Boris Brezillon <[email protected]> Reviewed-by: Eric R. Smith <[email protected]> (cherry picked from commit 248b0b47b74abf51fdda1ae10ca573cbab78c89a) Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40979> - - - - - c72a0457 by Mixie at 2026-04-14T15:27:45+02:00 xlib: clear currentDpy when releasing the current context After abe6d750e58d, glXDestroyContext() can defer destruction by marking the context with xid == None while it is still current. However, the release-current path did not clear current->currentDpy, so a context that had already been marked for deletion could remain associated with a display after unbinding. Fixes: abe6d750e58d ("xlib: fix glXDestroyContext in Gallium frontends") Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/14947 Reviewed-by: Adam Jackson <[email protected]> (cherry picked from commit 447a1d2e8d5f8a58b6aef7b74d1f720a8a4b8c02) Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40979> - - - - - a46e96fb by Ian Romanick at 2026-04-14T15:27:45+02:00 brw/const: Don't allow type changes when accumulators are involved Integer accumulators and float accumulators do not occupy the same bits, so the types cannot be arbitrarily changed. No shader-db or fossil-db changes on any Intel platform. v2: Use is_accumulator() instead if brw_reg_is_arf(). Add an extra test to show the desired behavior when an accumulator is not involved. Suggested by Caio. Fixes: 64c251bb3af ("intel/fs: Combine constants for SEL instructions too") Reviewed-by: Caio Oliveira <[email protected]> (cherry picked from commit ffdc310bf17480f4d1b4381e7fccac4bca3602e9) Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40979> - - - - - 92bfcb20 by Ian Romanick at 2026-04-14T15:27:45+02:00 brw: brw_reg::nr for an accumulator is not part of the offset Without this, reg_offset will return 1024 for acc0. This causes has_invalid_dst_region to decide that the destination region is invalid (because 1024 != 0), and the lowering code tries to treat the floating point accumulators as integers. It's a mess. v2: Add and use set_gfx_platform. Suggested by Caio. Fixes: 937373eb25c ("i965/fs: Handle fixed HW GRF subnr in reg_offset().") Reviewed-by: Caio Oliveira <[email protected]> (cherry picked from commit cfdb3ddb93c02eb1e98e9f634263313fc87693c0) Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40979> - - - - - eb4618b1 by Rhys Perry at 2026-04-14T15:27:46+02:00 util: fix UBSan error with _mesa_bfloat16_bits_to_float runtime error: left shift of 65535 by 16 places cannot be represented in type 'int' This fixes nir_opt_algebraic_pattern_test.bf2f. Signed-off-by: Rhys Perry <[email protected]> Fixes: ecd2d2cf46df ("util: Add functions to convert float to/from bfloat16") Reviewed-by: Georg Lehmann <[email protected]> (cherry picked from commit 72f2b8a034235ff0942fcca8646ad2bb66c8b454) Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40979> - - - - - fa0abe95 by Icenowy Zheng at 2026-04-14T15:27:46+02:00 pvr: fix pvr_clear_vdm_state_get_size_in_dw() inverted feature condition The pvr_clear_vdm_state_get_size_in_dw() wrongly think instance count inputs are needed when doing RTA clear for cores without the gs_rta_support feature. However, the instance ID is exploited to output the target layer ID, which isn't supported at all for cores w/o that feature, so it looks that the condition is inverted. In addition, the pvr_pack_clear_vdm_state() function seems to have similar logic deciding whether to emit instance_count, and the logic is opposite to the logic in pvr_clear_vdm_state_get_size_in_dw() for the part checking the gs_rta_support feature. Invert the condition to take instance ID inputs for cores with the gs_rta_support feature instead of those without this feature. Fixes: b59eb30e8860 ("pvr: Fix cs corruption in pvr_pack_clear_vdm_state()") Signed-off-by: Icenowy Zheng <[email protected]> Reviewed-by: Luigi Santivetti <[email protected]> (cherry picked from commit 3db93bbf344340f61ff2ba30c172129703477ce2) Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40979> - - - - - 599bb79f by Georg Lehmann at 2026-04-14T15:27:46+02:00 aco/optimizer: do not try to create 3 byte constant operands Operand::get_const will assert. Closes: https://gitlab.freedesktop.org/mesa/mesa/-/work_items/15239 Reviewed-by: Daniel Schürmann <[email protected]> Cc: mesa-stable (cherry picked from commit d1ed4e1774913d800e351a0dd271d037dae9d1f4) Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40979> - - - - - 5447f81c by David Rosca at 2026-04-14T15:27:46+02:00 radeonsi: Set multi plane format also for imported textures multi_plane_format is used to correctly copy all planes for staging texture copies, otherwise only the first plane gets copied. It's now also used in si_video_dec, which doesn't work when decoding into imported surfaces if multi_plane_format is not set. Cc: mesa-stable Closes: https://gitlab.freedesktop.org/mesa/mesa/-/work_items/15232 Reviewed-by: Marek Olšák <[email protected]> (cherry picked from commit 3dbbd94ffd06ab5a19dd0b7cca141cdbdc262723) Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40979> - - - - - 6f6be136 by Marc Alcala Prieto at 2026-04-14T15:27:46+02:00 pan/cs: Fix cs_run_fragment() calls with swapped arguments Fix non-functional issue where calls to cs_run_fragment() had swapped tile_order and enable_tem arguments. Both arguments evaluate to 0. Hence, no functional change. Fixes: 53f780ec916 ("panfrost: Remove progress_increment from all CS builders") Reviewed-by: Lars-Ivar Hesselberg Simonsen <[email protected]> Reviewed-by: Christian Gmeiner <[email protected]> (cherry picked from commit 0d08b197f2f66b2cf080e8332f46387eb99e5d55) Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40979> - - - - - 52b549ab by Lionel Landwerlin at 2026-04-14T15:27:46+02:00 anv: don't relocate memory from blob This could override data allocated by the application when shader code is loaded from binary in vkCreateShaderObjectEXT(). Signed-off-by: Lionel Landwerlin <[email protected]> Fixes: d39e443ef8 ("anv: add infrastructure for common vk_pipeline") Reviewed-by: Ivan Briano <[email protected]> (cherry picked from commit 21952ffb0767fa101502f3a841355c5757408cca) Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40979> - - - - - a9a9bc41 by Valentine Burley at 2026-04-14T15:27:46+02:00 zink/ci: Move zink-tu-a618 to sc7180-trogdor-kingoftown The sc7180-trogdor-lazor-limozeen devices are having issues, so move the job to a different device with available capacity. Signed-off-by: Valentine Burley <[email protected]> (cherry picked from commit 17d38c9668ffe08eee984ae01032d56b8095254a) Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40979> - - - - - 2723eec3 by Valentine Burley at 2026-04-14T15:27:46+02:00 ci/freedreno: Move remaining lazor a618 jobs, retire device type The sc7180-trogdor-lazor-limozeen devices have been dying off over the past few weeks, so move the last two jobs to sc7180-trogdor-kingoftown and retire the device type. Signed-off-by: Valentine Burley <[email protected]> (cherry picked from commit bbed00ac81c306b682b669ee74b42f3f3c39a133) Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40979> - - - - - 55916383 by Samuel Pitoiset at 2026-04-14T15:27:46+02:00 radv/meta: fix computing extent for image->image with both compressed formats If both src and dst are compressed formats, adjusting the extent isn't necessary because it's required that texel block extent matches. The previous division was also wrong because it was truncating partial blocks causing issues in some tests. Cc: mesa-stable Signed-off-by: Samuel Pitoiset <[email protected]> (cherry picked from commit 4e00e1c3d01a2b6ca09ce39f384f11cf059507ea) Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40979> - - - - - e0eb9bc6 by Icenowy Zheng at 2026-04-14T15:27:46+02:00 pvr: set has_usc_alu_roundingmode_rne for all B-series Rogue cores All B-series Rogue cores seem to have USC rounding mode as RTE instead of RTZ. Set the has_usc_alu_roundingmode_rne feature flag for them (currently only BXS-4-64 has it set). Verified via testing on BXM-4-64 (36.52.104.182) by fixing CTS tests dEQP-VK.spirv_assembly.instruction.*.float_controls.fp32.input_args.* , and via proprietary driver vulkaninfo result on BXE-2-32 (36.29.52.182), BXE-4-32 (36.50.54.182) and BXM-4-64 (36.56.104.183) (checking shaderRoundingModeRT?Float32 properties). Fixes: 1db1038a61a9 ("pvr: add device info for BXM-4-64 (36.56.104.183)") Fixes: e60e0c96ba75 ("pvr: add device info for BXE-2-32 (36.29.52.182)") Fixes: 2743363a5765 ("pvr: add device info for BXM-4-64 (36.52.104.182)") Fixes: ea28791d4032 ("pvr: add device info for BXE-4-32 (36.50.54.182)") Signed-off-by: Icenowy Zheng <[email protected]> Reviewed-by: Simon Perretta <[email protected]> (cherry picked from commit 9b44def4e952ff863e51ad1201b90fd645ef041b) Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40979> - - - - - 6c5ec942 by Janne Grunau at 2026-04-14T15:27:46+02:00 hk: Increase maxFragmentCombinedOutputResources to HK_MAX_DESCRIPTORS Backport-to: 26.0 Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/15249 for hk Signed-off-by: Janne Grunau <[email protected]> (cherry picked from commit 564b06198147abec0074b142b751d5219592409b) Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40979> - - - - - 665974c9 by Olivia Lee at 2026-04-14T15:27:46+02:00 panfrost: don't try to emit varying shader stats on v12+ On v12+, IDVS no longer has separate position and varying variants, so we only need to emit stats for one binary. Attempting to emit stats for the nonexistent varying shader breaks shader-db. Fixes: 7819b103fa7 ("pan/bi: Add support for IDVS2 on Avalon") Signed-off-by: Olivia Lee <[email protected]> Reviewed-by: Lars-Ivar Hesselberg Simonsen <[email protected]> Reviewed-by: Eric R. Smith <[email protected]> (cherry picked from commit 31ddfe26ebc18aa83c86ef44b2aeeefd6dfab51b) Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40979> - - - - - 1067d277 by Faith Ekstrand at 2026-04-14T15:27:46+02:00 pan/bi: Add BI_SWIZZLE_NONE Fixes: 82328a524519 ("pan/bi: Generate instruction packer for new IR") Reviewed-by: Christoph Pillmayer <[email protected]> Reviewed-by: Lars-Ivar Hesselberg Simonsen <[email protected]> Reviewed-by: Lorenzo Rossi <[email protected]> (cherry picked from commit ab285efd1b88de188d4f73b3646c90aa2114b3a0) Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40979> - - - - - 7809c26b by Faith Ekstrand at 2026-04-14T15:27:46+02:00 pan/bi: Support all the swizzles in the packer Add asserts this time that we don't miss any and that the buckets actually match the enum in bifrost/compiler.h. Fixes: 82328a524519 ("pan/bi: Generate instruction packer for new IR") Reviewed-by: Christoph Pillmayer <[email protected]> Reviewed-by: Lars-Ivar Hesselberg Simonsen <[email protected]> Reviewed-by: Lorenzo Rossi <[email protected]> (cherry picked from commit fd5c6d12231b7ea16af8b479173edfe36d4e9fb1) Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40979> - - - - - b4cfec49 by Daniel Schürmann at 2026-04-14T15:27:46+02:00 aco/lower_branches: Don't remove branches which jump over loops Entering a loop with empty exec mask might lead to not be able to execute the break condition and lead to infinite loops. Totals from 81 (0.04% of 202440) affected shaders: (Navi48) Instrs: 3040566 -> 3040716 (+0.00%) CodeSize: 17506768 -> 17507188 (+0.00%) Latency: 16342966 -> 16345166 (+0.01%) InvThroughput: 3112932 -> 3113286 (+0.01%) Branches: 82229 -> 82365 (+0.17%) Cc: mesa-stable (cherry picked from commit 60b3e5b3f09a483603bde9d65ee0420705de905a) Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40979> - - - - - 18115a5d by Pavel Ondračka at 2026-04-14T15:27:46+02:00 gallium/u_blitter: remove unused CONST declaration when using IMM The immediate fs_clear_color shader uses IMM[0] but still declares CONST[0][0]. That can make drivers try to read a fragment constant buffer even though one is never uploaded on this path. Only declare CONST[0][0] when the shader actually uses a constant buffer. Fixes: 2ff9fa8b728c ("gallium/u_blitter: add a new fs_color_clear variant") Reviewed-by: Marek Olšák <[email protected]> (cherry picked from commit 79e3196320616ea3567a8465d283665a547030ba) Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40979> - - - - - 035be8e0 by Yuxuan Shui at 2026-04-14T15:27:47+02:00 wsi/display: initialize Xlib display connector property IDs in all cases Usually connector property IDs are acquired in wsi_display_get_connector, which is called by wsi_get_connectors, and in turn by vkGetPhysicalDeviceDisplayProperties2KHR and vkGetPhysicalDeviceDisplayPlanePropertiesKHR. Except if the drm fd is not available when these functions are called. Which will be the case if vkAcquireXlibDisplayEXT is not called first. So it goes like this. First, the display is created in vkGetRandROutputDisplayEXT. Then it's used in vkGetPhysicalDeviceDisplayPlanePropertiesKHR, but since the drm fd is not available at this point, connector property IDs are not initialized. Later, this display is used in vkAcquireXlibDisplayEXT, which also doesn't touch the property IDs. Finally in drm_atomic_commit, the atomic commit fails with EINVAL, specifically because of the uninitialized ID of the "CRTC_ID" property. Since it's one of the properties drm_atomic_commit tries to set. This commit makes sure that find_connector_properties is called in vkAcquireXlibDisplayEXT to initialize the property IDs. Fixes: 513ffea1d366 ("wsi/display: use atomic mode setting") Signed-off-by: Yuxuan Shui <[email protected]> (cherry picked from commit 37a1986691ff62fcc1ed88e3dc1038591f183a59) Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40979> - - - - - 392b4ab6 by Vinson Lee at 2026-04-14T15:27:47+02:00 d3d12: Fix MinGW cross-build error in resource_state_if_promoted When cross-compiling with MinGW, d3d12_resource_state.cpp fails to compile with: d3d12_resource_state.cpp:161:83: error: call to non-'constexpr' function 'D3D12_RESOURCE_STATES operator|(D3D12_RESOURCE_STATES, D3D12_RESOURCE_STATES)' 161 | D3D12_RESOURCE_STATE_ALL_SHADER_RESOURCE | | D3D12_RESOURCE_STATE_COPY_SOURCE | D3D12_RESOURCE_STATE_COPY_DEST; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from /usr/share/mingw-w64/include/minwindef.h:163, from /usr/share/mingw-w64/include/windef.h:9, from /usr/share/mingw-w64/include/windows.h:69, from /usr/share/mingw-w64/include/rpc.h:16, from /usr/share/mingw-w64/include/unknwn.h:7, from ../subprojects/DirectX-Headers-1.0/include/wsl/winadapter.h:6, from ../src/gallium/drivers/d3d12/d3d12_common.h:29, from ../src/gallium/drivers/d3d12/d3d12_bufmgr.h:31, from ../src/gallium/drivers/d3d12/d3d12_resource_state.cpp:24: ../subprojects/DirectX-Headers-1.0/include/directx/d3d12.h:3540:1: note: 'D3D12_RESOURCE_STATES operator|(D3D12_RESOURCE_STATES, D3D12_RESOURCE_STATES)' declared here 3540 | DEFINE_ENUM_FLAG_OPERATORS( D3D12_RESOURCE_STATES ) | ^~~~~~~~~~~~~~~~~~~~~~~~~~ The DEFINE_ENUM_FLAG_OPERATORS macro in the MinGW winnt.h header defines operator| for D3D12_RESOURCE_STATES as inline but not constexpr. (The DirectX-Headers WSL stubs do define it as constexpr, but when building with MinGW, windows.h is pulled in via winadapter.h and its non-constexpr definition wins.) Calling a non-constexpr function to initialize a constexpr variable is ill-formed in C++. Fix by changing static constexpr to static const, which avoids the constexpr context while still giving the variable static storage duration. Fixes: fe48cd7c5a59 ("d3d12: Allow state promotion for non-simultaneous access textures") Signed-off-by: Vinson Lee <[email protected]> Reviewed-by: Jesse Natalie <[email protected]> (cherry picked from commit 2443f3608ab7501ece7941e45030b7d32f81985a) Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40979> - - - - - 573d326b by Konstantin Seurer at 2026-04-14T15:27:47+02:00 radv/bvh: Prefer selecting quads as the first pair of a HW node Is a single triangle is selected, it can be the case that the next iteration can't merge any pair with the triangle. In that case, the HW node with a single triangle will not have the highest hw_node_index, triggering an assert. Fixes: c18a7d0 ("radv: Emit compressed primitive nodes on GFX12") Reviewed-by: Natalie Vock <[email protected]> (cherry picked from commit db38d1a98c6c19176ec01d127782e7a6b840ead6) Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40979> - - - - - 6fa9e9b7 by Karol Herbst at 2026-04-14T15:27:47+02:00 radeonsi: properly report unified memory on APUs This helps rusticl to properly advertise available global memory on APUs. Cc: mesa-stable Reviewed-by: Marek Olšák <[email protected]> (cherry picked from commit 97ca375f517a529f290001b5ad60445050282dcd) Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40979> - - - - - b2b54a01 by Karol Herbst at 2026-04-14T15:27:47+02:00 rusticl/kernel: implement CL_KERNEL_GLOBAL_WORK_SIZE for custom devices Apparently we are supposed to support this on custom devices. Cc: mesa-stable (cherry picked from commit 97a137ac88cfa9b47fd07867232200c87e215eab) Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40979> - - - - - 1ed1dcb9 by Karol Herbst at 2026-04-14T15:27:47+02:00 rusticl/device: Fix reporting of global memory on mixed memory devices AMD APUs are hitting this case where they have very small discrete VRAM, but a lot of staging memory, which can be used additionally. Fixes: 7487ac20463 ("rusticl/device: support query_memory_info to retrieve available memory") (cherry picked from commit 58d45725c7cca54c02079566e0f0bb59b16a1e5d) Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40979> - - - - - d6ef5d48 by Eric Guo at 2026-04-14T15:27:47+02:00 panfrost: disable round_to_nearest_even for NEAREST samplers When round_to_nearest_even is enabled with NEAREST filtering, texture coordinates near texel boundaries (e.g. 0.9999999404) can be incorrectly rounded up to the next texel instead of being floor()'d. According to OpenCL spec section 8.2, for CLK_FILTER_NEAREST: i = address_mode((int)floor(u)) Backport-to: * Signed-off-by: Eric Guo <[email protected]> Reviewed-by: Erik Faye-Lund <[email protected]> (cherry picked from commit c4151344549ce3a238e6b0dd4ac78022a3aefccb) Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40979> - - - - - ecdb0c15 by Wujian Sun at 2026-04-14T15:27:47+02:00 mesa: Fix inconsistent multisampled CopyTexImage checks According to the GL_EXT_multisampled_render_to_texture specification, copy operations should be allowed when the extension is supported. Previously, glCopyTexImage* would unconditionally fail with GL_INVALID_OPERATION when copying from any multisampled framebuffer (samples > 0), even when using render-to-texture attachments. Fixes: d7b9da2673a ("mesa/main: fix artifacts with GL_EXT_multisampled_render_to_texture") Reviewed-by: Erik Faye-Lund <[email protected]> Signed-off-by: Wujian Sun <[email protected]> (cherry picked from commit 2e340d63d2b1fe13a23c607f93f83d04bdad0c9a) Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40979> - - - - - dc1f5880 by Mary Guillemard at 2026-04-14T15:27:47+02:00 nvk: Adjust maxFragmentCombinedOutputResources to match max descriptors limit This was set to the lowest allowed value by spec but it should really be matching the max descriptors limit. Cc: mesa-stable Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/15249 for NVK Signed-off-by: Mary Guillemard <[email protected]> Reviewed-by: Mel Henning <[email protected]> (cherry picked from commit 13f98d8658e041b6761047db0ccafb585cfbd823) Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40979> - - - - - d37fccbc by Mary Guillemard at 2026-04-14T15:27:47+02:00 hk: Add HK_MAX_RTS to maxFragmentCombinedOutputResources The spec also mentions "output Location decorated color attachments". Signed-off-by: Mary Guillemard <[email protected]> Fixes: 564b06198147 ("hk: Increase maxFragmentCombinedOutputResources to HK_MAX_DESCRIPTORS") Reviewed-by: Janne Grunau <[email protected]> (cherry picked from commit 59d9bc7bee0e8bdc50191ebaa45855d1711c3364) Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40979> - - - - - eb2cffbd by Lionel Landwerlin at 2026-04-14T15:27:47+02:00 brw: don't support frontfacing ternary optimization on != 32bit Fix shader compilation on Crimson Desert : 16 %1995 = b32csel %1992, %1993, %1994 Signed-off-by: Lionel Landwerlin <[email protected]> Cc: mesa-stable Reviewed-by: Alyssa Rosenzweig <[email protected]> (cherry picked from commit a84c12414c3681e0ac63e86ff4d0b6c3fe7c8b32) Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40979> - - - - - 0e192255 by Lionel Landwerlin at 2026-04-14T15:27:47+02:00 elk: don't support frontfacing ternary optimization on != 32bit Signed-off-by: Lionel Landwerlin <[email protected]> Cc: mesa-stable Reviewed-by: Alyssa Rosenzweig <[email protected]> (cherry picked from commit 4dfedcca45c960656cd7eb5e966fc72a5f6f0015) Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40979> - - - - - 6a2704a5 by Samuel Pitoiset at 2026-04-14T15:27:47+02:00 vulkan: mark RP attachments as invalid when no rendering create info VkPipelineRenderingCreateInfo is only required in the fragment output interface lib. For pre-rasterization shaders and fragment shader state libs, only the view mask is used but it's optional. If the attachments info isn't marked invalid merging renderpass info during lib imports wouldn't work because it would assume that the first lib has attachment info (eg. the pre-rasterization lib). Closes: https://gitlab.freedesktop.org/mesa/mesa/-/work_items/15241 Cc: mesa-stable Signed-off-by: Samuel Pitoiset <[email protected]> (cherry picked from commit 1950b6c1a7cec1ac7df6fc35899ae64e5dfaf2ee) Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40979> - - - - - 9b19409a by Rhys Perry at 2026-04-14T15:27:47+02:00 ir3/array_to_ssa: skip remove_trivial_phi for non-array phis remove_trivial_phi() mostly does nothing for non-array phis, but it rewrites sources if their definining instruction are trivial phis. In the case of trivial phis in the loop continue block (for loops with divergent non-trivial continues), we might need to keep those if they write a shared register, because the source of the trivial phi will not be reachable from the loop header phi. In this example, the predecessors of the continue block should be block2, but the physical predecessors are block2 and block3, requiring a phi in the continue block which will then be lowered by ir3_lower_shared_phis. loop { block1: a = phi 0, b if (divergent) { block2: b = a + 1 continue; } block3: break; } Fixes RA validation error when compiling blackmythwukong/5645a84e669a6179 from radv_fossils. Signed-off-by: Rhys Perry <[email protected]> Backport-to: 26.0 (cherry picked from commit 4f0fb5784f61c38798dccfa6ae97e380ccd1519c) Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40979> - - - - - fd9ffc06 by Rhys Perry at 2026-04-14T15:27:47+02:00 ir3/ra: fix copy-paste error I don't entirely understand what this is all doing, but this looks like a copy-paste error. Signed-off-by: Rhys Perry <[email protected]> Backport-to: 26.0 (cherry picked from commit a6b86d43d304897bc8ca7155039877deb68a483a) Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40979> - - - - - 9c4e5bbe by Eric Engestrom at 2026-04-15T16:20:41+02:00 docs: add release notes for 26.0.5 - - - - - e4bd78e8 by Eric Engestrom at 2026-04-15T16:20:41+02:00 VERSION: bump for 26.0.5 - - - - - 64 changed files: - .pick_status.json - VERSION - docs/relnotes.rst - docs/relnotes/26.0.4.rst - + docs/relnotes/26.0.5.rst - src/amd/ci/radeonsi-raven-fails.txt - src/amd/compiler/aco_lower_branches.cpp - src/amd/compiler/aco_optimizer.cpp - src/amd/vulkan/bvh/encode_triangles_gfx12.comp - src/amd/vulkan/meta/radv_meta_copy.c - src/amd/vulkan/nir/radv_nir_rt_common.c - src/asahi/vulkan/hk_physical_device.c - src/compiler/nir/nir_gather_info.c - src/compiler/nir/nir_opt_load_skip_helpers.c - src/compiler/nir/nir_opt_uniform_subgroup.c - src/compiler/nir/nir_opt_varyings.c - src/compiler/spirv/vtn_variables.c - src/freedreno/ci/gitlab-ci-inc.yml - src/freedreno/ci/gitlab-ci.yml - src/freedreno/ir3/ir3_array_to_ssa.c - src/freedreno/ir3/ir3_nir_analyze_ubo_ranges.c - src/freedreno/ir3/ir3_shared_ra.c - src/gallium/auxiliary/util/u_simple_shaders.c - src/gallium/drivers/d3d12/d3d12_resource_state.cpp - src/gallium/drivers/panfrost/pan_bo.c - src/gallium/drivers/panfrost/pan_cmdstream.c - src/gallium/drivers/panfrost/pan_csf.c - src/gallium/drivers/panfrost/pan_shader.c - src/gallium/drivers/radeonsi/si_compute.c - src/gallium/drivers/radeonsi/si_get.c - src/gallium/drivers/radeonsi/si_texture.c - src/gallium/drivers/zink/ci/gitlab-ci.yml - src/gallium/drivers/zink/ci/zink-radv-gfx1201-fails.txt - src/gallium/drivers/zink/ci/zink-radv-navi10-fails.txt - src/gallium/drivers/zink/ci/zink-radv-navi31-fails.txt - src/gallium/drivers/zink/ci/zink-radv-polaris10-fails.txt - src/gallium/drivers/zink/ci/zink-radv-vangogh-fails.txt - src/gallium/frontends/glx/xlib/glx_api.c - src/gallium/frontends/rusticl/api/kernel.rs - src/gallium/frontends/rusticl/core/device.rs - src/imagination/common/device_info/bxe-2-32.h - src/imagination/common/device_info/bxe-4-32.h - src/imagination/common/device_info/bxm-4-64.h - src/imagination/vulkan/pvr_clear.h - src/intel/compiler/brw/brw_from_nir.cpp - src/intel/compiler/brw/brw_opt_combine_constants.cpp - src/intel/compiler/brw/brw_reg.h - src/intel/compiler/brw/test_helpers.h - src/intel/compiler/brw/test_opt_combine_constants.cpp - src/intel/compiler/elk/elk_fs_nir.cpp - src/intel/vulkan/anv_private.h - src/intel/vulkan/anv_shader.c - src/mesa/main/teximage.c - src/mesa/state_tracker/st_cb_bitmap.c - src/nouveau/vulkan/nvk_physical_device.c - src/panfrost/compiler/bifrost/bi_packer.c.py - src/panfrost/compiler/bifrost/bi_ra.c - src/panfrost/compiler/bifrost/bifrost/ISA.xml - src/panfrost/compiler/bifrost/bifrost_compile.c - src/panfrost/compiler/bifrost/compiler.h - src/util/00-mesa-defaults.conf - src/util/bfloat.h - src/vulkan/runtime/vk_graphics_state.c - src/vulkan/wsi/wsi_common_display.c The diff was not included because it is too large. View it on GitLab: https://salsa.debian.org/xorg-team/lib/mesa/-/compare/d9e5e36b1925d0a75f582b06075e374ab93abadc...e4bd78e80ad7178162bf0e138b93a2aa2eac0434 -- View it on GitLab: https://salsa.debian.org/xorg-team/lib/mesa/-/compare/d9e5e36b1925d0a75f582b06075e374ab93abadc...e4bd78e80ad7178162bf0e138b93a2aa2eac0434 You're receiving this email because of your account on salsa.debian.org.