Announcement

Collapse
No announcement yet.

Chrome Is Reaching The Point Of Good X11 + Wayland Support In Same Build

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

  • #61
    Originally posted by Mez' View Post
    I haven't used Nvidia in a very long time since I don't like their ways (a bit like Intel). It doesn't even have to do with open source vs binary blobs.

    You know, not having a narrow-minded view and trying to encompass everyone and all the different choices or workflows because it's not just about myself...
    So tell me what Linux, Gnome, Wayland developers have to do to force nvidia to write Wayland compatible driver? Do you think nvidia can dictate them how to write software? Do you think nvidia can dictate AMD, Intel what solution they should use in their Linux compatible, Open Source drivers? I want you to answer those questions.

    But contrary to you, I think about users who really don't care so much about wayland/X11, AMD/Nvidia, and who happen to have Nvidia hardware for whatever (good) reasons (got their device in the supermarket or local computer shop) and have come to Linux afterwards (or even before for that matter).
    If you bought a car powered by gas, do you blame it for not being able to operate with oil?

    Comment


    • #62
      Originally posted by Volta View Post

      So tell me what Linux, Gnome, Wayland developers have to do to force nvidia to write Wayland compatible driver?
      NVidia already has, its called EGLStreams. Wayland is just a protocol thats not even Linux specific, it has nothing to do with open source or Linux specific technologies such as GBM. Note that EGLStreams is an open standard by Khronos that predates Wayland, furthermore Linux systems such as Android have a setup that is similar to EGLStreams (why do you think Android doesn't have these problems? In fact devices such as NVidia Shield TV work with Android Linux just fine).

      Linux developers for political (not technical) reasons have decided that they don't want to put any real effort into supporting EGLStreams probably because NVidia suggested it way back in 2016 when Wayland was first being conceived, not because there was any technically valid reason to do so (EGLStreams is actually superior to GBM in some ways but thats a separate discussion).

      Its up to Linux developers if they want to work with the largest (and arguably best) GPU manufacturer just as much as its up to NVidia to work with Linux. NVidia already stated that its impossible for them to open source their current driver due to IP/legal issues, so the best thing they can offer for now is EGLStreams and in response they got an F** you from the Linux community (which was both metaphorical and literal, no one from Linux wants to work with Nvidia just because its NVidia).

      This shitty situation is what the Linux community deserves because its what they asked for

      Originally posted by Volta View Post
      If you bought a car powered by gas, do you blame it for not being able to operate with oil?
      Linux is a general purpose operating system that is designed to work with any hardware, including NVidia. This comparison is beyond retarded. I didn't know that Linux's advertised aim is a "General purpose GPL Kernel that works with everything apart from NVidia".

      Believe it or not (and this is also Linus's) stance, if Linux kernel doesn't work with some hardware it is a problem for Linux (whether Linux can do something about it is another discussion). The situation with NVidia is complicated but its not in Linux's design goal to deliberately ignore hardware.
      Last edited by mdedetrich; 02 June 2020, 08:52 AM.

      Comment


      • #63
        Originally posted by Volta View Post
        If you bought a car powered by gas, do you blame it for not being able to operate with oil?
        I think you got the wrong analogy here.

        A more accurate one would be between fuel (gasoline/diesel) versus electric cars.
        X11 is traditional fuel and Wayland is electric. Electric cars are not ready, in the same way Wayland isn't. Maybe someone with a nice house on the suburbs can get an electric car and it's ready for him somehow (for a limited use)

        But for a citizen on the 5th floor of a building, he's not gonna have a cable hanging in the air to its car in the middle of the street. And I'm very skeptical of the availability of electric terminals on every parking spot.

        Also, not everyone wants to wait a couple of hours on the highway for the cars to recharge on the way to your holiday destination (it's so true that my company offers fuel cars just for holiday periods if you have opted for an electric company car).
        Finally, people won't buy a new car just because it's ready for their use case (alley/garage in the suburbs), they will wait for their next (timed or not) car change to consider the electric purchase.

        It's exactly the same thing with Wayland, it's ready in some specific use cases, but for most people it still raises questions (issues). And they won't sell their nvidia gpu just to switch (if they even know wayland exist) or change of distro (if not broken) just for wayland.

        X11 is clearly an old technology and most users would be ok to get rid of it (ditto for the fuel car), but in the meantime it has less constraints and work in more use cases, even if in an imperfect way.

        Originally posted by Volta View Post

        So tell me what Linux, Gnome, Wayland developers have to do to force nvidia to write Wayland compatible driver? Do you think nvidia can dictate them how to write software? Do you think nvidia can dictate AMD, Intel what solution they should use in their Linux compatible, Open Source drivers? I want you to answer those questions.
        I think you're too impatient. Nvidia will get there just as the electric car might get there (if no other tech comes around before).
        But you can't ask a whole industry to go immediately for a breakthrough change, there are so many stakeholders and old platforms or apps here, these things take time. What if tomorrow, MS and Apple decide to change their whole display stack? They have limited resources, they can't adapt to each and every change straight away, in the same way traditional car manufacturers progressively offer both electric and fuel, with some faster than others. Even with the arrival of Tesla, the car market didn't completely change in a matter of 5 years.
        You can't dictate Nvidia how to write their software either, this goes both ways. It's not about forcing them, it's about you being happy on Wayland and others being happy still on X11, and when the time comes they will also be happy on wayland. If apps or DEs solve the remaining issues or constraints they have with wayland and it becomes the trend you can't miss, or the de facto standard, it will come naturally. For now, it's still at early adopters level. It's nearly there but not quite yet.

        It's ongoing and it's alright, just wait it out instead of wanting that radical change TODAY.

        Comment


        • #64
          Originally posted by mdedetrich View Post

          NVidia already has, its called EGLStreams. Wayland is just a protocol thats not even Linux specific, it has nothing to do with open source or Linux specific technologies such as GBM.
          Which cannot be said about Wayland implementation in Linux desktop environments. It's up to them how to implement it.

          Note that EGLStreams is an open standard by Khronos that predates Wayland, furthermore Linux systems such as Android have a setup that is similar to EGLStreams (why do you think Android doesn't have these problems? In fact devices such as NVidia Shield TV work with Android Linux just fine).
          According to KDE developer Android is a different story:

          https://blog.martin-graesslin.com/bl...stream-or-not/

          Also some people complained that this is unfair because we do have an implementation for (proprietary) Android drivers. I need to point out that this does not compare at all.

          First of all our Android implementation is not specific for a proprietary driver. It is written for the open source hwcomposer interface exposed through libhybris. All of that is open source. The fact that the actual driver might be proprietary is nothing we like, but also not relevant for our implementation.


          Linux developers for political (not technical) reasons have decided that they don't want to put any real effort into supporting EGLStreams probably because NVidia suggested it way back in 2016 when Wayland was first being conceived, not because there was any technically valid reason to do so (EGLStreams is actually superior to GBM in some ways but thats a separate discussion).
          Do you have anything to backup such claims? To be clear I don't have anything against political decisions, but basing on 'probably' isn't enough to make such claims.

          Its up to Linux developers if they want to work with the largest (and arguably best) GPU manufacturer just as much as its up to NVidia to work with Linux. NVidia already stated that its impossible for them to open source their current driver due to IP/legal issues, so the best thing they can offer for now is EGLStreams and in response they got an F** you from the Linux community (which was both metaphorical and literal, no one from Linux wants to work with Nvidia just because its NVidia).
          They can be good (not best for sure), but their drivers are terrible from Linux development model perspective. They could release documentation instead of driver's code, but it seems they're not interested in cooperation.

          This shitty situation is what the Linux community deserves because its what they asked for
          It only concerns nvidia hardware owners. I couldn't care less.

          Linux is a general purpose operating system that is designed to work with any hardware, including NVidia. This comparison is beyond retarded. I didn't know that Linux's advertised aim is a "General purpose GPL Kernel that works with everything apart from NVidia".
          Believe it or not (and this is also Linus's) stance, if Linux kernel doesn't work with some hardware it is a problem for Linux (whether Linux can do something about it is another discussion). The situation with NVidia is complicated but its not in Linux's design goal to deliberately ignore hardware.
          That's why there's nouveau. It's not Linux fault nvidia have problems with open sourcing their drivers/documentation. Linux developers won't work on nvidia binary blobs. Ps. I didn't want to sound too harsh.
          Last edited by Volta; 02 June 2020, 03:04 PM.

          Comment


          • #65
            Mez'

            I think I can agree with the most of what you wrote. Wayland isn't forced on anyone yet, but everyone got the message: Wayland is the future. It's up to them to support GBM (chosen by political decision or not) or to release documentation and allow others to do the job.

            Comment


            • #66
              Originally posted by Volta View Post

              Which cannot be said about Wayland implementation in Linux desktop environments. It's up to them how to implement it.
              Sure, which just means Linux is deliberately excluding NVidia. Note that its not unusual for Linux to implement specific implementations for specific hardware. Its only with NVidia where we have a double standard, one of the whole points of Linux is to use as much hardware as possible even if it requires ugly workarounds/hacks (Linux has a long history of dealing with such cases, often accompanied by Linus yelling about it).

              Originally posted by Volta View Post

              According to KDE developer Android is a different story:

              https://blog.martin-graesslin.com/bl...stream-or-not/







              Do you have anything to backup such claims? To be clear I don't have anything against political decisions, but basing on 'probably' isn't enough to make such claims.
              He is wrong, EGLStreams is just as open as libhybris. You can see the open specification at https://www.khronos.org/registry/EGL...KHR_stream.txt . Note that it was approved in 2011, before Wayland was even a pipe dream. Of course there is a proprietary driver that implements EGLStreams, but that isn't any different compared to the situation with Android (almost all graphics drivers in Android are proprietary).

              Furthermore in terms of how technically EGLStreams is defined, its extremely generic which means its very easy to implement on any graphics hardware. This is actually very different to GBM, which is very Linux specific and makes quite strict assumptions about how drivers work (the reason why NVidia's blob isn't using GBM is because they will have a massive performance hit due to the synchronous nature of GBM).

              Honestly this argumentation at best is scraping at the bottom of the barrel in terms of justifications and at best is pure hypocrisy, if your argument is that we shouldn't use EGLStreams because proprietary graphics cards implement it you can use the exact same argument for OpenGL (which also is an open standard from the Khronos group btw, just like Vulcan is).

              In fact judging by what he said in that blog post the biggest issue appears to be the fact that due to how KWin was designed it would have been difficult to integrate EGLStreams. The fact kwin was just recently forked due to their implementation of Wayland kind of highlights this (in summary, implementing EGLStreams into Wayland would have been difficult and they probably weren't bothered due to the fact that it was NVidia, even though NVidia later implemented EGLStreams into kwin themselves without any real fuss, you can see the PR at https://github.com/KDE/kwin/commit/c...6610cf087ca464 and the relevant Phoronix article at https://www.phoronix.com/scan.php?pa...rged-KWin-5.16).

              Originally posted by Volta View Post
              They can be good (not best for sure), but their drivers are terrible from Linux development model perspective. They could release documentation instead of driver's code, but it seems they're not interested in cooperation.
              Well its very easy to argue they are best in any metric that isn't cost. Regardless you do have a legitimate point here, NVidia could release documentation for their drivers code but then again they have to deal with patents that they inherited from Sillicon Graphics when they bought them out. They also had issues with fake chinese cards putting NVidia drivers on them for crypto mining (which is actually what caused NVidia to put firmware signing on drivers in the first place and is what is causing problems for Noveau on newer cards).


              Originally posted by Volta View Post
              It only concerns nvidia hardware owners. I couldn't care less.
              Thankfully what you care about is irrelevant


              Originally posted by Volta View Post
              That's why there's nouveau. It's not Linux fault nvidia have problems with open sourcing their drivers/documentation. Linux developers won't work on nvidia binary blobs. Ps. I didn't want to sound too harsh.
              Right, point here is even if NVidia did release some open source documentation to help Noveau (and also a way around the firmware signing issue), judging by how long it took the OS community to get AMD drivers to a usable state we are looking at a minimum of 10 years (also taking into account how complex drivers for graphics cards are). Then there are cases of like CUDA where I don't see how any real open source implementation is going to replace it (the whole point of CUDA is its really fast and any alternative implementation of it will be quite slow).

              In other words for better or for worse the blob is likely here to stay.
              Last edited by mdedetrich; 02 June 2020, 04:09 PM.

              Comment


              • #67
                Originally posted by mdedetrich View Post

                Sure, which just means Linux is deliberately excluding NVidia. Note that its not unusual for Linux to implement specific implementations for specific hardware. Its only with NVidia where we have a double standard, one of the whole points of Linux is to use as much hardware as possible even if it requires ugly workarounds/hacks (Linux has a long history of dealing with such cases, often accompanied by Linus yelling about it).
                I disagree. If the hardware is broken then they're using hacks. Otherwise, they're trying to keep the code clean - like with XEN mentioned later.

                Furthermore in terms of how technically EGLStreams is defined, its extremely generic which means its very easy to implement on any graphics hardware. This is actually very different to GBM, which is very Linux specific and makes quite strict assumptions about how drivers work (the reason why NVidia's blob isn't using GBM is because they will have a massive performance hit due to the synchronous nature of GBM).
                Linux is known of making things the Linux way. Remember situation with XEN? Oracle had to spend a lot of time to get it into mainline. They were also using arguments like 'generic', 'rewrite' and so on. However, they had to do it the way Linus wanted them to do. There's also possibility someone doesn't like nvidia from some reasons (middle finger).

                Thankfully what you care about is irrelevant
                It sounds funny in context of the discussion where we're talking about Linux and nvidia not taking care about this or that.

                Right, point here is even if NVidia did release some open source documentation to help Noveau (and also a way around the firmware signing issue), judging by how long it took the OS community to get AMD drivers to a usable state we are looking at a minimum of 10 years (also taking into account how complex drivers for graphics cards are). Then there are cases of like CUDA where I don't see how any real open source implementation is going to replace it (the whole point of CUDA is its really fast and any alternative implementation of it will be quite slow).

                In other words for better or for worse the blob is likely here to stay.
                The blob from AMD still exists, so they could choose similar strategy. The X will coexist with Wayland for a long time.

                Comment


                • #68
                  Originally posted by Volta View Post

                  I disagree. If the hardware is broken then they're using hacks. Otherwise, they're trying to keep the code clean - like with XEN mentioned later.
                  Nope, there are plenty of cases where the Linux kernel has required specific implementations of specific hardware


                  Originally posted by Volta View Post
                  Linux is known of making things the Linux way. Remember situation with XEN? Oracle had to spend a lot of time to get it into mainline. They were also using arguments like 'generic', 'rewrite' and so on. However, they had to do it the way Linus wanted them to do. There's also possibility someone doesn't like nvidia from some reasons (middle finger).
                  Comparing apples to oranges here. NVidia isn't trying to put anything inside the Linux kernel. We are talking about Wayland compositors here (i.e. KWin). KWin is not in the linux Kernel (neither is Wayland for that matter)



                  Originally posted by Volta View Post
                  The blob from AMD still exists, so they could choose similar strategy. The X will coexist with Wayland for a long time.
                  Sure, but there are still cases like CUDA (or even things like RTX voice if it gets ported to Linux) where the blob will always matter.

                  Comment


                  • #69
                    Originally posted by mdedetrich View Post

                    Nope, there are plenty of cases where the Linux kernel has required specific implementations of specific hardware
                    I'd like to see their reasons for this, because it's out of context.

                    Comparing apples to oranges here. NVidia isn't trying to put anything inside the Linux kernel. We are talking about Wayland compositors here (i.e. KWin). KWin is not in the linux Kernel (neither is Wayland for that matter)
                    It was analogy. Nvidia wanted EGlStreams, but Linux desktops, AMD and Intel wanted (or agreed for) something else. Nvidia just like Oracle can't dictate them what should they use and nvidia has to play on Linux dekstops, graphic stack rules.

                    Sure, but there are still cases like CUDA (or even things like RTX voice if it gets ported to Linux) where the blob will always matter.
                    I want Wayland, so I'm choosing OS driver. Someone wants CUDA he takes blob. It's simple.

                    Comment


                    • #70
                      Originally posted by mdedetrich View Post

                      NVidia already has, its called EGLStreams. Wayland is just a protocol thats not even Linux specific, it has nothing to do with open source or Linux specific technologies such as GBM. Note that EGLStreams is an open standard by Khronos that predates Wayland, furthermore Linux systems such as Android have a setup that is similar to EGLStreams (why do you think Android doesn't have these problems? In fact devices such as NVidia Shield TV work with Android Linux just fine).

                      Linux developers for political (not technical) reasons have decided that they don't want to put any real effort into supporting EGLStreams probably because NVidia suggested it way back in 2016 when Wayland was first being conceived, not because there was any technically valid reason to do so (EGLStreams is actually superior to GBM in some ways but thats a separate discussion).

                      Its up to Linux developers if they want to work with the largest (and arguably best) GPU manufacturer just as much as its up to NVidia to work with Linux. NVidia already stated that its impossible for them to open source their current driver due to IP/legal issues, so the best thing they can offer for now is EGLStreams and in response they got an F** you from the Linux community (which was both metaphorical and literal, no one from Linux wants to work with Nvidia just because its NVidia).

                      This shitty situation is what the Linux community deserves because its what they asked for



                      Linux is a general purpose operating system that is designed to work with any hardware, including NVidia. This comparison is beyond retarded. I didn't know that Linux's advertised aim is a "General purpose GPL Kernel that works with everything apart from NVidia".

                      Believe it or not (and this is also Linus's) stance, if Linux kernel doesn't work with some hardware it is a problem for Linux (whether Linux can do something about it is another discussion). The situation with NVidia is complicated but its not in Linux's design goal to deliberately ignore hardware.
                      Yes. I consider linux developers community one of the most stupid bunch of cretins in the history of information technology.

                      Comment

                      Working...
                      X