Mesa's "Copper" Is A Step Closer To Being Brazed
Copper came about over the past year by Red Hat's Adam Jackson with participation from Mike Blumenkrantz and others. This DRI interface extension can lead to much greater efficiency for Zink, the OpenGL on Vulkan implementation, and native WSI handling for it. Copper would help improve upon the Gallium3D architecture and provide substantial benefits for Zink.
On Thursday Blumenkrantz opened the draft MR for merging Copper with hopes for getting the code into shape for mainlining but not necessarily in the immediate future. Pushing Copper out as more of a longer-term effort is it depending upon other open merge requests such as Zink external memory support, sparse textures, and other bits.
Blumenkrantz summed up the Copper work in the merge request as "The copper interface was brainstormed by [Adam Jackson] and then chainsawed into existence by me. Its premise is that it provides some minimal amount of display server info to zink (basically whatever's needed to successfully create a swapchain) and then zink passes it off to Vulkan [WSI, windowing system integration]. this means it skips nearly all of dri2/3 in the frontend and is somewhat close to the existing swrast codepath...In my testing, everything "just works" now. There's a couple piglit tests that I think are failing (X pixmap nonsense or whatever), but even more are miraculously passing. The only thing that definitely doesn't work is running any kind of xserver because glamor is hard."
Zink, Copper, and Penny have been among the Mesa sub-project names in recent times with all being closely related.
Blumenkrantz continues working on this Zink OpenGL-on-Vulkan implementation for Valve. He has also written a blog post in brief about the Copper merge request.