Announcement

Collapse
No announcement yet.

Mesa Developers Discussing Again Whether To Fork Or Drop Non-Gallium3D Drivers

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • fuzz
    replied
    Originally posted by agd5f View Post

    Curiosity and the desire to learn. Most open source developers started out just poking around in the driver, gradually growing their understanding. Read through the source code. Add print statements and try to understand the basic flow. In general most drivers do a bunch of stuff at load time and then just sit there waiting for someone to call an ioctl. Look at patches and try to understand how the patch solves the stated problem. Then start to tinker yourself. Try changing a parameter here or there and see how it changes some operation. Rinse and repeat. Feel free to ask questions on the mailing lists or IRC. Before you know it, you'll be creating your own patches.
    Thanks, it's often just the little things on how to get started.

    Leave a comment:


  • agd5f
    replied
    Originally posted by fuzz View Post
    Is there some good documentation somewhere on how to start with driver development? I think, for most of us, the problem is more capability than will.
    Curiosity and the desire to learn. Most open source developers started out just poking around in the driver, gradually growing their understanding. Read through the source code. Add print statements and try to understand the basic flow. In general most drivers do a bunch of stuff at load time and then just sit there waiting for someone to call an ioctl. Look at patches and try to understand how the patch solves the stated problem. Then start to tinker yourself. Try changing a parameter here or there and see how it changes some operation. Rinse and repeat. Feel free to ask questions on the mailing lists or IRC. Before you know it, you'll be creating your own patches.

    Leave a comment:


  • fuzz
    replied
    Originally posted by agd5f View Post
    The drivers are all open source. Anyone is free to step up and write a new driver or help maintain the code, etc. It's supposed to be an open source community.
    Is there some good documentation somewhere on how to start with driver development? I think, for most of us, the problem is more capability than will.

    Leave a comment:


  • smitty3268
    replied
    Originally posted by duby229 View Post
    Because that's the entire reason for wanting the fork...
    Keeping drivers working with new kernels/compilers/x isn't the reason they want to fork.

    If they don't want to maintain old drivers now, what makes you think they will keep an old fork compiling that they don't want to maintain?
    Keeping existing code working isn't the problem. It's updates in common code made for newer hardware that then break older hardware drivers that is the problem.

    Leave a comment:


  • duby229
    replied
    Originally posted by smitty3268 View Post

    What makes you think a LTS fork wouldn't be maintained?

    Isn't that the entire implication of calling it "Long Term Support", and not an "Abandoned" fork?

    Presumably the devs will make sure it all continues to compile and work on modern systems, they just wouldn't be adding any new features to it anymore.

    Oh, and xserver is definitely not changing frequently anymore.
    Because that's the entire reason for wanting the fork... If they don't want to maintain old drivers now, what makes you think they will keep an old fork compiling that they don't want to maintain? They can call it what they want but the end result is that some user somewhere is going to get stuck with the burden of their decision.

    Leave a comment:


  • smitty3268
    replied
    Originally posted by duby229 View Post

    Yes, but things glibc and xserver change frequently. A fork of mesa wouldn't even compile in a year or two at best.
    What makes you think a LTS fork wouldn't be maintained?

    Isn't that the entire implication of calling it "Long Term Support", and not an "Abandoned" fork?

    Presumably the devs will make sure it all continues to compile and work on modern systems, they just wouldn't be adding any new features to it anymore.

    Oh, and xserver is definitely not changing frequently anymore.
    Last edited by smitty3268; 31 March 2020, 12:26 AM.

    Leave a comment:


  • duby229
    replied
    Originally posted by TemplarGR View Post

    Not really. Stop spreading FUD.
    Yes, really. Go grab an old version of mesa right now. Do it. See how far back you can go. Maybe a year or two at best. It would have to be fixed every single time any single one of its dependencies got updated.

    Examples include but are not limited to beignet, fglrx, rtl81xx, etc...

    Last edited by duby229; 30 March 2020, 07:26 PM.

    Leave a comment:


  • maxtertheturtle
    replied
    Originally posted by TemplarGR View Post

    It is not as simple as specifying a flat date. It depends on many things. Older hardware, if the drivers are well written and mature, does not need much maintenance to be kept up-to-date. The reason Haswell igpus are in danger of losing support is not because they are weak, but because they don't use the gallium infrastructure. I am willing to bet that if Haswell was on Iris, it wouldn't be that hard to keep receiving support, after all the vast majority of fixes for gallium would apply to that arch as well. That was the point of using gallium in the first place.

    So it all depends on how hard it is for Mesa devs to keep including older hardware. Gallium ensures easier and extended support. But putting an arbitrary 5 year period of support and then "you are on your own" would be a mistake, now that Moore's law is dead 5 year old hardware can easily keep up with modern hardware in terms of raw power in most cases.
    I agree that 5 years is too short; however, I think that 20 years is too long. Intel should honestly update Haswell so that it uses the Gallium infrastructure.

    Unfortunately, it will never be about the architecture of that hardware. Even as code matures, it still needs to be tested as it's dependencies change. If Intel is no longer selling Haswell iGPUs, there's no incentive to provide support and that hardware will end up needing support from volunteers.

    Leave a comment:


  • TemplarGR
    replied
    Originally posted by duby229 View Post

    Except that won't work. Glibc, xserver and many other components don't have a stable interface and a "classic" mesa will be broken in just a year or two at best.
    Not really. Stop spreading FUD.

    Leave a comment:


  • s_j_newbury
    replied
    Originally posted by duby229 View Post

    Yes, but things glibc and xserver change frequently. A fork of mesa wouldn't even compile in a year or two at best.
    duby229, this is exactly my concern. I also happen to use the IVB Vulkan driver, but that was never claimed to be officially supported, so it's a slightly different situation. There is no way a "Classic" Mesa will be kept up to date outside of a community effort, which usually boils down to one or two people who really want to keep their system working, until they get bored or upgrade, or something happens to them.. like they get a job! ;-)

    Look at my Beignet OpenCL example above, it's maintained outside of Intel by a single Debian developer, who keeps it working on Debian. It's currently broken on Gentoo, so it's even getting dropped there, despite the fact I'm trying to maintain it, but can't get it to successfully build!

    Leave a comment:

Working...
X