The OpenGL API is still seeing new extensions introduced in 2026. Merged today to the OpenGL Registry is a new extension intended to help Wine usage for 32-bit Windows games/apps on 64-bit Linux systems.
The new extension in the OpenGL Registry is MESA_map_buffer_client_pointer. The MESA_map_buffer_client_pointer extension lets the application specify pointer ranges within which buffers should be mapped. The extension was designed to help the Wine project with its OpenGL 32-bit ABI on top of 64-bit Linux. With this extension it can return an address in the 32-bit address range.
The MESA_map_buffer_client_pointer extension was devised by Derek Lesho of CodeWeavers. The extension specification can be found via the OpenGL Registry.
The pull request for it further explained of the situation:
“Currently, Wine will set up a CPU storage for the buffer from which it copies the contents on glUnmapBuffer. For persistent maps, it currently uses either Vulkan resource sharing with VK_EXT_map_memory_placed, or AMD_pinned_memory.
These approaches can’t work for legacy maps with the same speed, since they move buffer upload management to the application side, which can’t for example provide staging buffers to avoid unnecessary synchronization.
This extension should address the problem going forward by allowing Wine to provide 32-bit address ranges to the driver, onto which BOs can be mapped.”
The issue was also further discussed via this Mesa ticket.
