Mesa 25.3.1 Release Notes / 2025-12-03¶
Mesa 25.3.1 is a bug fix release which fixes bugs found since the 25.3.0 release.
Mesa 25.3.1 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.1 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: 059d0d985622f49588f01aa29152804f4da8ffe6add046e00a52923379c2d8da mesa-25.3.1.tar.xz
SHA512: 7e2f7295f1f4df129935b60d75c890f6ae585ecc511f69f55a61826df5f2434ffdb4109c632af9842a986bf9beed430a0404d377e8335b71fa36682bd10533ba mesa-25.3.1.tar.xz
New features¶
None
Bug fixes¶
venus: synchronization tests sometimes get stuck in semaphore/fence wait
[ANV][LNL] - Detroit: Become Human (1222140) - Flickering horizontal artifacts across the screen
[ANV][LNL] - Eternal Strands (1491410) - Colorful graphical aberrations are present whenever a 3D asset is visible.
[ANV][DG2/LNL] SolarBay extreme RT regression
After 25.3 update some app windows became glitchy on uhd 620
FurMark gets glitchi graphics when using Vulkan API on UHD 620 (mesa 25.2.6 and 26.0)
tu: resource leak
Regression: MSVC fails to build 32 bit binaries
Zink on Android: failed to create dri2 screen
Amnesia: The Bunker (2023) OpenGL graphics glitch on Intel graphics
freedreno, tu: resource leak
meson: When building radeonsi without llvm, it fails without setting amd_with_llvm to false explicitly
loader.c:156:14: error: call to undeclared function ‘drmCommandWriteRead’
radv: RB+ for depth-only is broken with unused color attachments
win_bison random failure extern_stdin:40: ERROR: end of file in string
Texture matrix stack pops do not seem to always update the texture matrix
Polaris, amdgpu: Application using VCE wedges GPU
radv vulkan video encode does not process used_by_curr_pic_lt_flag correctly
[BMG] Metro Exodus Enhanced Edition (1449560) - Crash
venus: random failures in dEQP.api.info.image_format_properties2.1d
Changes¶
Aitor Camacho (2):
vulkan/cmd_queue: Use vk_strdup and free allocated string memory
vulkan/wsi: Fix double destroy of present_id_timeline at swapchain create
Alyssa Rosenzweig (1):
nir/sweep: fix use-after-free with dominance LCA
Benjamin Cheng (4):
radv/video: Align each layer of encode DPB to 256
radv/video: Fix num_ref_idx_l{0,1} related overrides
radv/video: Fix H264/H265 reference selection
radv/video: Override direct_spatial_mv_pred to 1
Calder Young (3):
brw: fix SIMD lowering of fp16 sampler message data with multiple components
anv: Fix ray query shadow stack buffer size
intel: Fix calculation of max_scratch_ids on fused devices
Christoph Pillmayer (1):
nir: Fix preseved metadata in sort_unstructured_blocks
Connor Abbott (1):
tu: Handle case where pipeline writes unused color attachments
Daniel Schürmann (1):
nir/opt_large_constants: Fix dead deref instructions accessing lowered variables
Dave Airlie (1):
dozen: return INCOMPATIBLE_DRIVER on instance create failure
David Rosca (7):
vulkan/video: Fix coding AV1 seq_choose_screen_content_tools = 1
radv/video: Fix coding allow_screen_content_tools and force_integer_mv
radv/video: Fix coding used_by_curr_pic_lt_flag
radeonsi/vce: Add workaround for unaligned input surface
radeonsi/vcn: Reduce allocated size for pre-encode recon pics
radeonsi/vcn: Fix maybe uninitialized warning
radv/video: Fix AV1 quantization map maxQIndexDelta value
Dylan Baker (9):
docs: Add sha sums for 25.3.0
.pick_status.json: Update to 018f45f9812cb5b728e2eb32a5b350efdd9ac90f
.pick_status.json: Update to 7a3bfd1f7913819db315e6db8b42520a2d862690
.pick_status.json: Update to 7c193ffef1a8316b4b666c9c2ec5afdd2035dd89
.pick_status.json: Update to bcedc88f2142d9a2b277c7b848b744e13d426f76
.pick_status.json: Update to 076a3834374b2ccd43dd1c7ce73f44795d601300
.pick_status.json: Update to a71b4a4b954dcfc1667dc1b36f1f25ac02d3469b
.pick_status.json: Update to ac37885fc85203c08f09345c637b6a21f642ed66
docs/relnotes/25.3.0: Escape some rst language constructs
Emma Anholt (1):
tu: Fix leak of compute shader pipeline->base.executables_mem_ctx;
Eric Engestrom (3):
meson: auto-disable `amd-use-llvm` when `llvm=disabled`
meson: auto-disable `draw-use-llvm` when `llvm=disabled`
ci: use $CI_TRON_JOB_PRIORITY tag on all ci-tron jobs
Eric R. Smith (1):
pan: fix a bifrost disassembly assert failure
Erik Faye-Lund (4):
pan/kmod: fix priority query logic
panfrost: remove stale code
mesa/main: correct formatquery error-handling
mesa/st: do not enable EXT_texture_buffer_object with rgba only
Faith Ekstrand (1):
vulkan/drm-syncobj: Stop returning early waiting for sync files
Gil Pedersen (1):
intel: Add PIPE_FORMAT_R10G10B10X2_UNORM support
Gurchetan Singh (1):
util: fix arithmetic on a pointer to void warning
Hyunjun Ko (1):
vulkan/video: Fix H.265 long-term reference handling
Ian Forbes (1):
svga: Check if Stencil buffer is NULL
Ian Romanick (2):
brw: Force allow_spilling when spill_all is set
lavapipe: fp16 flrp must also be lowered
Icenowy Zheng (1):
pvr: enable samplerMirrorClampToEdge feature
Karol Herbst (2):
rusticl/kernel: fix clGetKernelSuggestedLocalWorkSizeKHR implementation
rusticl/kernel: Do not run kernels with a workgroup size beyond work_dim
Lionel Landwerlin (15):
brw: fixup 64bit atomics emulation on 2D array images
brw: fix SIMD lowering of sampler messages with fp16 data
brw: fix workaround fence rlen field
anv: fixup load_ubo lowering
anv: ensure slab allocated memory matches image requirements
anv: consider 64bit atomics on similar formats with mutable images
anv: Wa_18040903259 only applies to RCS when in GPGPU mode
brw: compute final copy propagation resulting source
nir: fix lower_printf with no arguments
spirv: fix printf generation
nir/lower_printf: fix array alignment
nir/lower_printf: fix missing singleton add
vulkan/runtime: track dynamic descriptor offsets for RT pipelines
anv: fix broken ray tracing dynamic descriptors
anv: add 32-wide subgroup requirement heuristic
Matt Turner (2):
meson: Fix sysprof-capture-4 dependency
meson: Let -Ddraw-use-llvm=false work for R300 on non-x86
Mel Henning (5):
zink: Return zink_device in create_logical_device
zink: Make screen->queue_lock a pointer
zink: Create one queue lock per device
zink: Lock queue_lock in zink_destroy_screen
zink: Lock around screen_debug_marker_{begin,end}
Natalie Vock (3):
aco/insert_nops: Consider s_setpc target susceptible to VALUReadSGPRHazard
radv/rt: Keep updated nodes always active
radv/rt: Correctly copy culling flags when updating to separate AS
Olivia Lee (2):
panvk/csf: fix uninitialized read in draw context
panvk/csf: explicitly set ls_sb_slot in set_fbds_provoking_vertex
Patrick Lerda (2):
r600: fix rv770 read scratch compatibility
r600: fix error filters compatibility
Pierre-Eric Pelloux-Prayer (2):
radeonsi/sqtt: clear out sqtt bo on resize
mesa: fix function prototype
Qiang Yu (1):
glsl: support barrier() for task and mesh shader
Rob Clark (2):
freedreno/a6xx: Fix UB in convert_color()
freedreno: Fix internal VBO reference leak
Samuel Pitoiset (2):
radv: fix RB+ for depth-only with unused attachments
radv: fix per-submit RGP captures on video queues
Sushma Venkatesh Reddy (1):
drirc: Add anv_assume_full_subgroups for Detroit: Become Human
Tapani Pälli (4):
drirc/iris: add drirc to disable threaded context
drirc: set intel_disable_threaded_context for Amnesia The Bunker
anv: add furmark workaround layer
anv: add vk_wsi_disable_unordered_submits and enable for GTK
Timothy Arceri (2):
mesa: fix _mesa_update_texture_matrices()
util/driconf: Add linux version of Penumbra fixes
Timur Kristóf (2):
radv: Disable sparse mapping when unsupported by VM
ac/gpu_info: Disable sparse VM mappings pre-Polaris, for now
Valentine Burley (1):
egl: Disable kopper on Android
Yiwei Zhang (4):
venus: use seq_cst for ring cs and tail update ordering
venus: avoid re-imported dma-buf to have a larger map size
venus: properly fix the blob mem mapping size
venus: fix racy semaphore feedback counter update
Yonggang Luo (1):
ci/microsoft: Downgrading WinFlexBison.win_flex_bison to version 2.5.24
Yurii Kolesnykov (1):
loader: Wrap nouveau_zink_predicate with HAVE_LIBDRM