Mesa 25.3.2 Release Notes / 2025-12-17¶
Mesa 25.3.2 is a bug fix release which fixes bugs found since the 25.3.1 release.
Mesa 25.3.2 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.2 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: e69dab0d0ea03e3e8cb141b032f58ea9fcf3b9c1f61b31f6592cb4bbd8d0185d mesa-25.3.2.tar.xz
SHA512: 499cb0aa254b5a706fb6c2414c23b9d5d03d9397475f7ad16744b982303a2a2bf643ef7adc64870645ee4355b5f95695becd6caff7d7f7caf698e6269589aa13 mesa-25.3.2.tar.xz
New features¶
None
Bug fixes¶
[bisected][iris] - Celeste - Lighting artifacts during gameplay
[bsw][regression][bisected][hasvk] various crashing tests
radv: incorrect vectorization of 8-bit/16-bit causes random GPU hangs with DXVK
LLVM crashes when loading specific Minecraft Shaderpacks
Firefox crashes in some Gallium drivers since mesa 25.3.0
radv: Is radv_wsi_get_prime_blit_queue bugged?
radv: don’t include constant data in RGP captures
[anv] mpv video playback blacks out when resized larger than video resolution
corrupted video when using pRefList0ModOperations on radv h264
[radv] [feature request] Add an env var to not expose resizable bar to app
Steam Deck/9060 XT Consistently hang with game demo “Cursemark”
Changes¶
Aitor Camacho (2):
wsi/metal: Fix command buffer release at destroy
wsi/metal: Fix blit_imate_to_image’s pool selection for cmd buffer alloc
Anna Maniscalco (1):
radv: recalculate legacy_gs_info on bind
Ashley Smith (1):
panfrost,panvk: Enable shader_realtime_clock on panthor 1.6
Benjamin Cheng (2):
radv/video: Fix force_integer_mv=1 on intra frame
radv/video: Always end ref pic modification list
Boris Brezillon (5):
panvk: Fix a memory leak in the descriptor set logic
pan/bi: Fix leak in bi_iterator_schedule()
panvk: Don’t leak shader binaries when loaded from the cache
panvk: Free the decode context in the create_device() error path
pan/cs: Don’t leak builder resources
Caio Oliveira (1):
nir/gcm: Consider dead code elimination done by GCM as progress
Calder Young (3):
anv: Fix scratch pool buffer allocation sizes
anv: Fix misplaced assertion in anv_scratch_pool_alloc
anv: Fix typo when checking if async rt scratch size changed
Connor Abbott (4):
tu: Fix GRAS_BIN_FOVEAT* programming with more than 1 layer
tu: Fix FragCoord offset when HW viewport offset is enabled
tu: Fill render pass state when resuming
ir3: Fix condition for using uniform predicates
Dave Airlie (1):
nak/cmat: free the type mapping hash table.
Dylan Baker (16):
docs: Add checksums for 25.3.1
.pick_status.json: Update to b75cd07265b6d34cefde80399e7ff0cd7652dbca
.pick_status.json: Mark 829bd406c04566962268138195ecb2c4d78da5cf as backported
.pick_status.json: Update to b13003133d4440bfd33fc320c051b474458c8e02
.pick_status.json: Update to 0104b3df414bddeab37ae6cf116c532410134bc0
.pick_status.json: Update to f912db3f8dc0c0cb8cb2358e6ec79dd03b7a875d
.pick_status.json: Update to 72b43c0595d41c233d039c32f63120e0c3c27f59
.pick_status.json: Update to 095c2acf0180a1cbe7d60b6ffbfcd14e35724e22
anv/video: Read the right source for memcpy
anv/video: Cast intentional read past end of struct member to void*
.pick_status.json: Update to b5cf3b1628bdf473ea40a6756a4098eb56151bbc
.pick_status.json: Update to 518705a4fe794683a4c672f803e011490d24c12c
.pick_status.json: Update to 9c16bbd0237575e5dd9bd4e5f25d6da990ac4925
.pick_status.json: Update to dfdaee5ca74fbf1945326b454079575826df5a89
.pick_status.json: Mark 6dff50c8bc7430bf04c0dc5d8dc648f6ed73e4f3 as backported
.pick_status.json: Mark bbc8ce27048440befc0519ac03eeefa933f6ef0d as backported
Eric R. Smith (1):
panfrost: do not allow skipping of fragment shader when alpha-to-coverage
Erik Faye-Lund (2):
docs/panfrost: remove some stray newlines
panfrost: do not over-estimate memory needed for dummy-rt
Faith Ekstrand (2):
pan/bi: Fix LD_VAR_BUF indirect offset calculations
pan/bi: Handle small vectors in bi_src_index()
Georg Lehmann (3):
nir/opt_uniform_subgroup: don’t try to optimize non trivial clustered reduce
nir/opt_uniform_subgroup: fix swizzle_amd without fetch_inactive
nir/divergence_analysis: fix swizzle_amd without fetch inactive
Gurchetan Singh (1):
gfxstream: fix logspam in TLS helper function
Hans-Kristian Arntzen (1):
egl/x11: Fix memory leak when querying translated coord.
Hyunjun Ko (1):
anv/video: fix VP9 chroma subsampling format detection
Janne Grunau (1):
util/driconf/asahi: Override GL renderer for web browsers
Karmjit Mahil (1):
gallium: Fix gnu-empty-initalizer error
Karol Herbst (1):
nir: add ACCESS to shared_uniform_block_intel
Kenneth Graunke (1):
nir: Fix mod analysis of ishl to shift the recursive result
Konstantin Seurer (1):
nir: Ignore ray query ranges that don’t start with rq_initialize
LingMan (3):
rust: build `equivalent` dependency with the correct edition
rust: build `paste` dependency with the correct edition
rust: build `ucd-trie` dependency with the correct edition
Lionel Landwerlin (8):
anv: fix internal representations of shaders
anv: add missing device_memory_report for shaders
anv: fixup error path for shader allocation
anv: disable crast on SKL
vulkan/runtime: add an internal flag for independent sets
anv: reintroduce non independent sets dynamic descriptor optimization
anv: move load_num_workgroups tracking to driver
anv: fix dynamic buffers & independent sets
Mary Guillemard (1):
nvk: Use rendering state attachment count when setting SET_CT_SELECT
Nanley Chery (3):
anv: Don’t allow STORAGE + CCS for Y_TILED mod
intel/isl: Only assert surface addresses on gfx9+
iris: Fix pipe control around fast-clears
Natalie Vock (1):
radv: Move VMID reservation to vkCreateDevice
Patrick Lerda (1):
r600: improve cayman scissor 1x1 workaround
Qiang Yu (1):
ac/llvm: workaround legacy fma intrinsic crash on gfx12
Rhys Perry (2):
ac/nir: fix calculation of aligned_new_size
ac/nir: fix check for increasing size of non-descriptor loads
Rob Clark (3):
freedreno/decode: Add extra indent levels
gallium: Make upload_cb0 return a releasebuf
asahi: Set prefer_real_buffer_in_constbuf0
Samuel Pitoiset (4):
radv: add radv_hide_rebar_on_dgpu and enable for Red Dead Redemption 2
radv: reduce maxTexelBufferElements to 1<<29
radv: only include executable size when capturing shaders with RGP
radv: fix race condition when getting the blit queue
Timothy Arceri (1):
util/driconf: add Cursemark workaround
Utku Iseri (1):
panfrost: add earlyzs FPK condition for v6-
Valentine Burley (1):
panfrost/ci: Fix GitLab rules after YAML split
Yiwei Zhang (1):
pan: fix pan_blend_reads_dest to consider special min/max funcs