Mesa 26.0.1 Release Notes / 2026-02-25¶
Mesa 26.0.1 is a bug fix release which fixes bugs found since the 26.0.0 release.
Mesa 26.0.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 26.0.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: bb5104f9f9a46c9b5175c24e601e0ef1ab44ce2d0fdbe81548b59adc8b385dcc mesa-26.0.1.tar.xz
SHA512: d47072257035acfa8a5594c0cda831b4e5178169dea8a06c6657268a441e32271f8798486e837cea23f35ce3f0b4b9520a4ea4ed26b0e1267b02da4c649bc9f9 mesa-26.0.1.tar.xz
New features¶
None
Bug fixes¶
Missing Haswell case after a097a3d214eda7fb7b9ff63176754b7260e09e03 leads to bogus assert in intel_perf_mdapi.c
Question: Does building Lavapipe on Windows require building “microsoft-experimental” as well?
[ANV]: Regression in dxvk Greedfall
[ANV][BMG] Building Mesa with Clang causes Missing Skin Textures in UE games - Tekken 8
[ANV][DG2][Regression]: Flickering water “boxes” in Civilization VII
[RADV] Killer7 has a blue tint with RDNA3/4
[bisected] Xe3 regression with piglit tess/barrier-patch.shader_test after cmod prop change
[radeonsi] Regression: GL_FEEDBACK returns 0.0 for X-coordinates (Legacy GL)
anv, bisected: Genshin Impact wrong shadows, flickering grass
turnip: llama.cpp: Running test-backend-ops results in segmentation fault
venus crashes in vn_CreateDevice() with latest mesa/main [bisected]
Changes¶
Aitor Camacho (7):
wsi/metal: Expose additional color spaces if instance extension enabled
kk: Fill pipelineUUID
kk: Fix shader uint32_t value serialization
kk: Correctly release pipeline handles at shader destroy
kk: Fix compute pipeline cache
kk: Move gfx pipeline data to the info struct within kk_shader
kk: Fix graphics pipeline serialization
Alyssa Rosenzweig (1):
brw: drop buggy SLM optimization
Anna Maniscalco (1):
freedreno/common: set has_astc_hdr true for a7xx targets
Benjamin Otte (1):
lavapipe: Fix features for nonsubsampled ycbcr formats
Daniel Schürmann (1):
nir/clone: Fix cloning indirect call instructions
Danylo Piliaiev (1):
ir3: Align TCS per-patch output to 64 bytes to prevent stale reads
Emma Anholt (1):
ir3/ra: Fix DOUBLE_ONLY limit pressure computation.
Eric Engestrom (5):
docs: add sha sum for 26.0.0
.pick_status.json: Update to 03d2cc2b2ae5341409ee1fab74e98134a6df0511
bin/gen_release_notes: fix support for python 3.14
pick-ui: add `Backport-to: *` as a synonym to `Cc: mesa-stable`
.pick_status.json: Mark 7dd7731ac710b0c7213f6bb466b33f62eca80604 as denominated
Faith Ekstrand (6):
pan/clear: Stop packing undefined bits in colors
nir/gather_info: Add support for panfrost tile load/store intrinsics
panvk: Create both Z/S descriptors, even for separate Z/S
panvk/preload: Stop assuming 32 registers
panvk/jm: Refactor BeginRendering()
panvk: Also load output attachments with LOAD_OP_NONE+STORE_OP_NONE
Frank Binns (2):
pvr/ci: move some timing out tests from fails to skips
pvr: Fix alloc callbacks usage when freeing frame buffers
Ian Romanick (8):
spirv: Use STACK_ARRAY instead of NIR_VLA
nir: Use STACK_ARRAY instead of NIR_VLA
brw: Call nir_opt_algebraic_late in brw_nir_create_raygen_trampoline
brw: Call nir_opt_algebraic_late later in brw_postprocess_nir_opts
elk: Call nir_opt_algebraic_late in elk_postprocess_nir
brw/cmod: Don’t propagate from CMP to ADD if there is a write between
elk/cmod: Don’t propagate from CMP to possible Inf + (-Inf)
elk/cmod: Don’t propagate from CMP to ADD if there is a write between
Janne Grunau (3):
asahi: Use GPU for buffer copies in resource_copy_region()
asahi: Implement clear_buffer using libagx_fill*
hk: Use aligned vector fill in hk_CmdFillBuffer if possible
Jarred Davies (2):
pvr: Fix allocating the required scratch buffer space for tile buffers
pvr: Add missing support for tile buffers to SPM EOT programs
Jesse Natalie (1):
meson: Include DirectX-Headers dependency for all VK Windows builds
Jianxun Zhang (1):
anv: Limit modifier disabling workaround to specific GTK versions
José Roberto de Souza (1):
intel/perf: Add HSW verx10 to intel_perf_query_result_write_mdapi()
Juston Li (1):
anv: set missing protected bit for protected depth/stencil surfaces
Konstantin Seurer (2):
radv: Fix setting the viewport for depth stencil FS resolves
vulkan/cmd_queue: Fixup stride for multi draws
Lars-Ivar Hesselberg Simonsen (2):
panvk: Fix dcd_flags1 dirty bit
pan/genxml/v13: Fix HSR Prepass typo
Leon Perianu (1):
pvr: fix format table properties duplicate
Lionel Landwerlin (8):
anv: flush render caches on first pipeline select
anv: fix nested command buffer relocations
anv: add missing constant cache invalidation for descriptor buffers
isl: fix 32bit math with 4GB buffer size
anv: apply the same ccs disabling for Xe3 than Xe2
anv: disable ccs modifier reporting when ccs modifiers are disabled
anv: dirty descriptors after blorp operations
anv: remove snprintf for aux op transition
Mary Guillemard (1):
hk: Fix crash in hk_handle_passthrough_gs
Matt Turner (4):
brw/cse: fix `operands_match` corrupting non-IMM register data
brw/cse: use copies in `operands_match` instead of in-place modification
elk/cse: fix `operands_match` corrupting non-IMM register data
elk/cse: use copies in `operands_match` instead of in-place modification
Mike Blumenkrantz (2):
zink: fix broken compiler assert
zink: only do pre-sync transfer barrier after a renderpass
Natalie Vock (3):
radv/rt: Only use ds_bvh_stack_rtn if the stack base is possible to encode
radv: Initialize nir_lower_io_to_scalar progress variable
radv/nir: Correctly handle workgroup sizes not aligned to 32
Nick Hamilton (5):
pvr: Fix incorrect subpass merging optimisation
pvr: Rename pvr_render_input_attachment
pvr: Add missing support for preserve attachments
pvr: Update CI fails list after render pass fixes
pvr: Add support for fragment pass through shader
Olivia Lee (1):
hk: fix passthrough GS key invalidation
Pavel Ondračka (2):
r300: align macro-tiled stride-addressed textures in X
mesa: implement FRAMEBUFFER_RENDERABLE internalformat query
Rhys Perry (3):
aco: fix gfx6-8 store_scratch() with function calls
aco: reset all vgpr_used_by_vmem_ in resolve_all_gfx11
aco: resolve hazards before calls
Robert Mader (1):
lavapipe: enable dmabuf import for planar drm formats
Ryan Zhang (1):
panvk: guard against NULL pointers to avoid crash
Samuel Pitoiset (5):
ac,radv,radeonsi: use correct swizzle/pitch for depth-only images with SDMA
radv: fix potential corruption after FMASK decompression on GFX6-8
radv/meta: fix depth/stencil resolves with different regions
ac/nir: fix writemask for dual source blending on GFX11+
radv: fix potential GPU hangs with secondaries on transfer queue
Tapani Pälli (1):
util: bring back fix to avoid strict aliasing bugs in xxhash
Timothy Arceri (2):
mesa: add _mesa_lookup_state_param_idx() helper
st/glsl_to_nir: make sure the variant has the correct locations set
Wei Hao (1):
radeonsi: fix threaded shader compilation finishing after context is destroyed
Yiwei Zhang (2):
venus: workaround a gcc-15 dead store elimination (DSE) bug
venus: sync protocol for strict aliasing compliance