Mesa 25.3.5 Release Notes / 2026-02-06¶
Mesa 25.3.5 is a bug fix release which fixes bugs found since the 25.3.4 release.
Mesa 25.3.5 implements the OpenGL 4.6 API, but the version reported by glGetString(GL_VERSION) or glGetIntegerv(GL_MAJOR_VERSION) / glGetIntegerv(GL_MINOR_VERSION) depends on the particular driver being used. Some drivers don’t support all the features required in OpenGL 4.6. OpenGL 4.6 is only available if requested at context creation. Compatibility contexts may report a lower version depending on each driver.
Mesa 25.3.5 implements the Vulkan 1.4 API, but the version reported by the apiVersion property of the VkPhysicalDeviceProperties struct depends on the particular driver being used.
SHA checksums¶
SHA256: be472413475082df945e0f9be34f5af008baa03eb357e067ce5a611a2d44c44b mesa-25.3.5.tar.xz
SHA512: 3db3d3c98bf476a5827705b82733d9964ec511b30882ec7e9edaddc65a5dea5e6bfb33bdcd4f97752d7a3ae9e306e8703982686cbd869567b4194decdb2f5a89 mesa-25.3.5.tar.xz
New features¶
None
Bug fixes¶
Transcoding mpeg2video with ffmpeg h264_vulkan on Intel cause Conversion failed!
static linking regression since !37495 - spirv-tools shared library required at runtime if exists at build time
tu: GPU faults during LRZ clears on unallocated transient attachments in gmem mode
Shader inputs/outputs for vertex/pixel shaders that have the integer (int) type are broken on RDNA 3 and 4 graphics cards
ACO: assertion in insert_exec_mask()
[radv] Regression causes glitches in Strange Brigade (Vulkan renderer)
radv, regression : Crysis 2 Remastered raytracing blocky reflections
Changes¶
Benjamin Cheng (1):
radv/video: Use a more reliable way of computing tile sizes
Danylo Piliaiev (1):
tu: Fix typo in min bounds calculation of FDM scissors
David Rosca (1):
radv/video: Fix maxActiveReferencePictures for H265 decode
Dylan Baker (20):
docs: Add SHA sums for 25.3.4
.pick_status.json: Update to 88ae2365b26cca549cfce5cfd5cec0b92af6c50c
bin/pick: When the main widget is replaced, trigger a redraw
.pick_status.json: Mark 0da350f8797b637ff7f073b4134cdbe75841b58a as backported
.pick_status.json: Mark 2a35d624b22d12b2b71b3723666fc5a79d0229d8 as backported
.pick_status.json: Update to 4512d815590ffd4d4cc12a2edf6f0aa964b783cd
.pick_status.json: Update to 50a3699552e3ba3efbf7fca301a92f5fa470fc3f
.pick_status.json: Update to 237e2d7b32c84523df48a8539cbc72cc49bcacfa
.pick_status.json: Update to 29e7a1fff9a1db14494fa64b6f38695b2a02a2d8
.pick_status.json: Update to 693a3e1c50efa35f53be3cdfee92513b71fd78d3
.pick_status.json: Update to e8fc50ef4678c8483e1231f8578391389c704c5f
.pick_status.json: Mark 9d027fc870fd6e0959f1cc99557c648c12c6b8bf as denominated
.pick_status.json: Mark a3ec5ece8b89694554a23bd0653edea35561481d as denominated
.pick_status.json: Mark 15328a5ef35593795f2b9939ed279a39272b8704 as denominated
.pick_status.json: Mark 62254ab0be3ba29dbf6d5b60367ba2910532f405 as denominated
.pick_status.json: Mark ad23e02a2809c33693c358336dbc9459cbab831f as denominated
.pick_status.json: Mark 0d7705c2062af89bee09d0407f6941e6c54eb2d1 as denominated
.pick_status.json: Mark 3275be503c39d3f572cce8ed52fe648751041084 as denominated
.pick_status.json: Update to 248b8184078c6df2c00c987e499348532b52a6e5
CI: update zink on tu-a750 expectations
Ella Stanforth (1):
pvr/csbgen: fix packing multiple addresses
Emma Anholt (2):
lima/ci: Remove erroneous skips.
ci/tu: Clear stale xfails from the nightlies.
Eric Engestrom (2):
pick-ui: update for python 3.14 support
Revert “meson: static link spirv-tools for darwin”
Faith Ekstrand (2):
nvk: Enable ZPASS_PIXEL_COUNT in draw_state_init()
nir: panfrost tile loads are always divergent
Georg Lehmann (4):
aco: fix demote in header of single iteration loop
aco: add a helper function for non supported DPP opcodes
aco: disable DPP for rev integer subs and shifts
nir/opt_algebraic: use correct syntax to create exact fsat
Hyunjun Ko (3):
anv/video: fix a typo in Vulkan AV1 decoding.
anv/video: Compute AV1 tile positions internally
anv/video: disable encoder on untested platforms
Iván Briano (1):
brw: fix local_invocation_index with quad derivaties on mesh/task shaders
Juan A. Suarez Romero (1):
broadcom/cle: bump up gen version for v3d
Karol Herbst (5):
clc: reorder headers to fix compilation errors due to UNUSED
clc: support some atomic and generic address space features
clc: enable generic address space and seq_cst and device scope atomic features
nir: fix nir_fixup_is_exported for LLVM-22
clc: fix compile compatability with LLVM-22
Kitlith (1):
panvk: Free drm device in can_present_on_device
Konstantin Seurer (3):
vulkan: Handle inactive primitives with LBVH builds
vulkan: Limit the number of LBVH invocations
radv/rra: Fix nullptr dereference
Lionel Landwerlin (1):
vulkan/wsi/direct: remove VkDisplay created from GetDrmDisplayEXT on ReleaseDisplayEXT
Loïc Molinari (1):
panfrost: Fix clean_pixel_write_enable forced check for AFBC
Lucas Stach (1):
etnaviv: idle the pipe before flushing texture caches
Mel Henning (3):
nvk: Ignore meta ops in occlusion queries
nvk: Initialize SET_ALPHA_TO_COVERAGE_OVERRIDE
nvk: Report additional host_image_copy layouts
Mike Blumenkrantz (2):
ntv: emit ViewIndex with flat for fragment stage
ntv: emit demote extension/capability when emitting demote
Nanley Chery (11):
intel/isl: Fix miptail selection for compressed textures
blorp: Fix Tile64 clear redescription assertion
intel/isl: Fix QPitch of arrayed MCS
iris: Set missing flags on clear color changes
iris: Use the CLEAR state on Xe2+ for MCS
anv: Update predicated resolve documentation
anv: Fix the fast clear type for FCV writes
anv: Don’t return the Xe2+ fast-clear type early
anv: Fix clear state of WSI blit sources during presentation
anv: Treat non-WSI PRESENT_SRC as TRANSFER_SRC
anv: Don’t set the display flag on WSI blit sources
Nick Hamilton (1):
pco: Fix for atomic operations on an image buffer
Olivia Lee (1):
hk: fix hk_passthrough_gs_key size computation
Patrick Lerda (5):
r600: fix cayman msaa shading behavior
r600: make vertex r10g10b10a2_sscaled conformant on palm and beyond
r600: fix rv770 clamp to max_texel_buffer_elements
r600: update cubearray imagesize calculation
r600: improve vs_as_ls switch reliability
Rhys Perry (1):
radv: fix when incomplete rt pipeline libraries are loaded from cache
Rob Clark (1):
freedreno: Force single wavesize if double threadsize is unsupported
Sagar Ghuge (1):
anv/rt: Drop atomic operations on opacity flags
Samuel Pitoiset (7):
radv: fix applying radv_ssbo_non_uniform=true for Crysis 2/3 remastered
radv: add a workaround for a synchronization bug in Strange Brigade Vulkan
radv: zero-initialize image view objects
radv/meta: fix layered depth stencil resolves with compute
radv: fix tracking of pipelines used in secondaries
radv: disable unordered submits when SQTT queue events are enabled
radv: emit pending flushes after late decompressions with fbfetch
Silvio Vilerino (1):
d3d12: Add missing using Microsoft::WRL:ComPtr in d3d12_context_common
Tomeu Vizoso (1):
dril: don’t build a rocket_dri.so
Valentine Burley (2):
tu: Handle VkDrmFormatModifierPropertiesList2EXT
tu: Fix memory leak of patchpoints_ctx in dynamic rendering
Zan Dobersek (2):
tu: allocate transient attachments used for LRZ
tu: handle DS_DEPTH_BOUNDS_TEST_BOUNDS state under TU_DYNAMIC_STATE_RB_DEPTH_CNTL
jaap aarts (1):
radv/sqtt: Prevent concurrent submit when sqtt is enabled