[Bug 294948] graphics/mesa-dri: Upgrade to 25.2.8
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Sat, 02 May 2026 09:11:15 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=294948
Bug ID: 294948
Summary: graphics/mesa-dri: Upgrade to 25.2.8
Product: Ports & Packages
Version: Latest
Hardware: Any
OS: Any
Status: New
Severity: Affects Only Me
Priority: ---
Component: Individual Port(s)
Assignee: x11@FreeBSD.org
Reporter: olivier@freebsd.org
Flags: maintainer-feedback?(x11@FreeBSD.org)
Assignee: x11@FreeBSD.org
Created attachment 270329
--> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=270329&action=edit
patch to upgrade it
Hi, here is a proposal to upgrade mesa-dri to 25.2.8
Mesa 25 introduced a "megalib" refactor merging libglapi + every per-driver
gallium runtime into a single libgallium_dri.so. Both mesa-dri (per-hardware
DRI shims) and mesa-libs (libEGL_mesa, libGLX_mesa, libgbm) link directly
against libgallium_dri.so. With the existing two-port split, both ports would
have to produce libgallium_dri.so -> unresolvable circular LIB_DEPENDS.
Debian/Ubuntu solved this around mesa 24.2 by adding a third package
mesa-libgallium that owns ONLY libgallium_dri.so.
Here is a proposal with the same model:
graphics/mesa-libgallium (NEW) ships lib/libgallium_dri.so only
graphics/mesa-libs ships libEGL_mesa, libGLX_mesa, libgbm,
GL/EGL/GLES headers, drirc defaults
graphics/mesa-dri ships per-hardware lib/dri/*_dri.so,
Vulkan ICDs, drirc 01-freebsd.conf
Dependency :
mesa-libgallium -> {mesa-libs, mesa-gallium-va, mesa-gallium-vdpau}
mesa-libgallium + mesa-libs -> mesa-dri
Side effects of this layout:
- mesa-libs still builds an r300 stub driver because mesa requires >=1
gallium driver for with_dri=true to install libgallium_dri.so. The dup
libgallium_dri.so and lib/dri/r300_dri.so are RM'd in post-install.
- mesa-dri post-install RM's the libgallium_dri.so / GL headers / gbm
headers / dri.pc / 00-mesa-defaults.conf its build produces (owned by
mesa-libgallium or mesa-libs).
- mesa-libgallium post-install RM's everything except libgallium_dri.so.
A runtime bug not easy to solve: -Dplatforms="x11" in mesa-libgallium
mesa's src/gallium/frontends/dri/loader_dri3_helper.c is only compiled when
with_platform_x11=true. It gets link_whole'd into libgallium_dri.so and
exported via dri.sym's "loader_dri3*" pattern
This bug did NOT show up in poudriere testport because pkg validates shlib
presence, not symbol resolution. Only runtime testing on the real laptop
caught it
Vulkan regression test on framework laptop using graphics/crucible
(10448 tests):
- mesa 24.1.7: pass 1048 / fail 32 / lost 4 / skip 6752
- mesa 25.2.8: pass 1048 / fail 32 / lost 4 / skip 9364
diff of failing test names between mesa 24 and mesa 25: empty.
Same 36 (32+4) failures on both versions = 0 regressions. (The skip count
differs because mesa 25 exposes more Vulkan extensions, so crucible enumerates
more tests and skips the inapplicable ones.
Runtime test on Intel Meteor Lake laptop:
- Vulkan: vulkaninfo --summary reports
Mesa 25.2.8, DRIVER_ID_INTEL_OPEN_SOURCE_MESA (anv), Vulkan API 1.4.318,
conformance 1.4.0.0
- OpenGL after the loader_dri3 fix:
glxinfo -B: direct rendering: Yes,
Vendor: Intel, Device: Mesa Intel(R) Graphics (MTL),
Accelerated: yes, Mesa 25.2.8, OpenGL 4.6 core
Xorg log: glamor: Using OpenGL 4.6 context,AIGLX: Loaded and initialized
iris, GLX: Initialized DRI2 GL provider for screen 0
Confirms hardware-accelerated OpenGL works end-to-end on real hardware.
And stability improvement using heavy vulkan usage (LLM with llama.cpp).
--
You are receiving this mail because:
You are the assignee for the bug.