On Tuesday, December 3, 2019 4:39:15 PM PST Marek Olšák wrote: > Hi, > > Here are 2 proposals to simplify and better optimize the GL->Gallium > translation. > > 1) Move classic drivers to a fork of Mesa, and remove them from master. > Classic drivers won't share any code with master. glvnd will load them, but > glvnd is not ready for this yet. > > 2) Keep classic drivers. Fork src/mesa for Gallium. I think only mesa/main, > mesa/vbo, mesa/program, and drivers/dri/common need to be forked and > mesa/state_tracker moved. src/gallium/state-trackers/gl/ can be the target > location. > > Option 2 is more acceptable to people who want to keep classic drivers in > the tree and it can be done right now. > > Opinions? > > Thanks, > Marek
FWIW, I am not in favor of either plan for the time being. - I agree with Eric that we're finally starting to clean up and de-duplicate things, and pay off technical debt we've put off for a long time. I think forking everything in-tree would just be a giant mess. - I agree with Dave that this seems to be a giant hassle for our downstreams with little benefit for them in the short term. - Shuffling r100/r200/i915/nouveau_vieux off to a legacy fork seems like a fine plan. They're ancient hardware that can't (or barely can) do GL 2.x. Nothing much has happened with them in years, and I'm not sure all of them even really have maintainers. The main blocker here I think would be ironing out all the glvnd issues and making sure that is working solidly for everyone. (FWIW, glvnd is not even enabled by default in our build system!) - Shuffling i965 off to legacy is really premature I think. Iris isn't even shipping in distros yet (hopefully soon!), and even then, we have a _ton_ of Haswell users. Check the Phoronix comments if you want to see how pissed off people are about even bringing up this topic. (Or better yet, don't...basic human decency toward others seems to be lacking. Hooray, internet...) - Writing a Gallium driver for Intel Gen4-7.5 would be interesting. I've been thinking about this some, and it might be possible to retain some of the niceties of the iris memory model even on older hardware, by relying on a modern kernel and possibly making some (hopefully minor) improvements. Even if we didn't, going back to the i965 model wouldn't be the worst thing. The new driver would almost certainly be faster than i965, if not as good as iris. ajax and I were planning to call it crocus, if I wrote one. I don't think it would take nearly as long. But it's still a bunch of time that I don't think I can justify spending. The new hardware can do so much more, and is so much faster, and much lower power. I think it would be better for me to spend my time on Gen11+. - Vulkan has really taken off, and OpenGL feels increasingly like a dead end. DXVK has brought more games than we had with native ports. Feral is even reworking some native OpenGL ports to use Vulkan. New graphics features are happening in the Vulkan space. So, I kind of wonder whether it's worth our time to go through and massively clean up and rearchitecture the OpenGL drivers at this point. By the time we're finished, will anyone care? - Are there concrete things that are prohibitively expensive with classic around? Otherwise, Eric's suggestion of "so go do that!" sounds like a good idea. We've started finally merging a bunch of code and I think this is a positive direction. I'd say let's shelve this for now and think about it again later. I suspect in a year or so the calculus will look fairly different. --Ken
signature.asc
Description: This is a digitally signed message part.
_______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev