Announcement

Collapse
No announcement yet.

NVIDIA Confirms Sway Wayland Compositor Works Fine With Their New GBM Driver Support

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

  • polarathene
    replied
    Originally posted by oiaohm View Post
    the reality here two parties pushed EGLStreams into the khronos standard. That Nvidia DGPU department and ST-Ericsson
    Ah ok... I didn't look into it too deeply myself, just that it was a Khronos standard. Having it made one by just those two companies makes sense I guess... apologies.

    Originally posted by oiaohm View Post
    why did the Nvidia Tegra developers go GBM if there was major problems in the design.
    Were they pushing Wayland with those devices? From what I could briefly gather, they default to X11 (at least with L4T on their embedded range), and given the Ubuntu 18.04 base and 4.9 kernel, I wouldn't expect much from Wayland, at least with the DEs.

    They do support EGLStreams in their documentation though. But given the rather outdated software support elsewhere in L4T, I assume any preference for GBM may related to that or other factors. Honestly I haven't looked into either that much myself.

    ---

    I don't recall the issues nvidia addressed years ago about GBM having and EGLStreams solving, but it's good to know that it's own flaws were later identified and adopting GBM was the more appropriate choice for them to pursue in the end

    Leave a comment:


  • oiaohm
    replied
    Originally posted by polarathene View Post
    1. EGLStreams AFAIK was already a standard? (since 2011?), might not be in use with desktop environments, but I believe it is commercially in display products? (kiosks, automotive, etc)
    That is one huge fib. Nvidia department who made arm chips for the kiosks, automotive and so on(Tegra) had been using GBM years before EGLStreams and never changed to using EGLStreams. Nvidia department that makes DGPU never managed to convince anyone outside their department to use EGLStreams let alone to convince any other vendor to come on board to the point of putting products out.

    ST-Ericsson were going release chips 2012 using EGLstreams but these were pushed then they were dissolved in 2013 before they could. polarathene the reality here two parties pushed EGLStreams into the khronos standard. That Nvidia DGPU department and ST-Ericsson yes 2 August 2013 ST-Ericsson ceases to exist before making any chips that have EGLStreams drivers leaving only a solo supporter as the Nvidia DGPU department. Yes Nvidia Tegra that makes Nvidia arm chips had already chosen the GBM route..

    Originally posted by polarathene View Post
    2. Pretty sure they had valid reasons about why GBM was bad,
    No this is not really the case. Because why did the Nvidia Tegra developers go GBM if there was major problems in the design.(there are security reasons to go the GBM route as well)

    There was a problem for Nvidia doing closed source drivers(the Nvidia DGPU) as they would have to get a patch into mesa so they could hook their closed source driver in. That may or may not have been easy.(they did not try until it was not going anywere).

    Next was they did not like the GBM model where every process has its own memory pool. But the per process memory pool is important so compositor can restart. The key feature that Nvidia did not like about GBM turns out to be key. KDE developers are wanting to be able to on the fly restart the wayland compositor they will be needing GBM feature of memory per process not memory in a global pool as EGLStreams has.

    Yes the Nvidia developer putting support for EGLStreams into KDE end up in a rock and hard place between the KDE lead developer and what he could do with EGLStreams. Yes the KDE lead developer did a demo restarting the wayland compositor on intel and amd and arm and qualcom and broadcom GPUs and it works then the Nvidia developer was completely and totally screwed when the KDE lead developer asked the Nvidia lead developer to show how because this would be a future KDE feature. Every route the Nvidia developer tried with KDE lead back the the memory issue where restarting the compositor lead applications segfaulting that required him to go to the Nvidia driver developer team and ask if they could fix EGLStreams to make this work. This leads to the 470.xx Nvidia driver work with GBM support and DMA BUF support as the Nvidia DGPU drivers developers find they are totally screws EGLStreams simply is not going to work.

    Issue here Nvidia thought they had a valid reason for EGLStreams. EGLStreams is fine if you are not wanting to restart the wayland compositor or use exactly the same drivers for Xwayland and bare metal X11. A lot of embedded systems need to be able to restart as many individual parts as possible this is why automotive and aircraft have avoided EGLStreams absolutely.

    This has been 7 years of hell caused by a single department at Nvidia. This has also delayed the wayland protocol work on how to handle compositor restarting and on the fly replacement because it was need to know how the hell were you meant to-do that with EGLStreams the answer is you don't because no one is going to support in future and it cannot be done with the EGLStreams design.

    Leave a comment:


  • Myownfriend
    replied
    Originally posted by polarathene View Post
    1. EGLStreams AFAIK was already a standard? (since 2011?), might not be in use with desktop environments, but I believe it is commercially in display products? (kiosks, automotive, etc)
    My understanding is that it's a standard only in that it was submitted to the Khronos group to become a standard and was excepted as one was but the only people to ever use EGLStreams was Nvidia.

    Originally posted by polarathene View Post
    2. Pretty sure they had valid reasons about why GBM was bad, I remember slides or something about it years ago. IIRC there was acknowledgement of those issues, but by this time (much later than 2011) GBM had already become established in the ecosystem well enough that there wasn't interest in changing to an alternative unless it was much more compelling and ready, there was especially little interest in supporting both options...

    ...It's not that GBM is the best solution, but it's the dominant broadly adopted / accepted one. For the same reason Windows isn't necessarily the best OS but most prefer it, it meets the requirements for most with less friction, good enough is not best though.
    The best thing I've heard about EGLStreams is that it had some advantages that ultimately don't matter for what it would be used for. Other than that, I had heard that it was just kind of inferior to GBM and Nvidia was pushing it only because it better matched what they were already doing in their driver.

    Originally posted by polarathene View Post
    3. They did ask for opinions, they just didn't get as much engagement from the community IIRC?
    Heard that. I forgot what they reaction was though.

    Originally posted by polarathene View Post
    4. They gave up because their alternative wasn't going anywhere or getting any traction last I heard. They were too late and not regarded too well in the community in general AFAIK.
    The only reason that Gnome and KDE have EGLStreams backends is because Nvidia wrote and maintained them. I'm currently running a Gnome Wayland session on an Nvidia card so I'm using EGLStream now and the experience isn't great. GTK4 applications launch as transparent windows with mouse trails unless I use the Cairo backend, Electron 12 or new applications will work in Wayland but will occasionally show mouse trails, OBS doesn't launch at all in Wayland because I guess Pipewire needs GBM, and because EGLStreams was supposed to be an alternative to DMAbuf as well (which is a kernel interface), I only recently got hardware accelerated XWayland applications. I couldn't even get the hardware accelerated Webrender backend for Firefox without DMAbuf and that was in Wayland and X11.

    Originally posted by polarathene View Post
    Not advocating for nvidia here, but at least they're doing stuff like this, why bash them for that?
    I agree. I have my issues with them even outside of Linux but people have wanted Nvidia to support DMAbuf and GBM for a long time. Now they're finally do it so they should be happy.

    Originally posted by polarathene View Post
    I recently found out that nvidia's embedded products including the latest Xavier NX from last year are provided with their L4T distro based off Ubuntu 18.04 , the latest release is August 2021, but still no upgrade to a newer distro, the kernel is stuck on 4.9 still... They have good hardware in that space, it's just sad that they fumble so much on open-source that they can't even support a modern kernel or packages for their platforms.
    And their Tegra drivers have supported GBM for awhile now. It's weird on disconnected the Tegra stuff is with the desktop. I'd really love to see them get a little less paranoid about open source development. It's like they don't think they can keep their dominance unless their software and stuff proprietary, but they clearly have good cards, they don't have to rely on proprietary technologies to stay successful.

    Leave a comment:


  • shmerl
    replied
    Good for Nvidia, but my take on it - too little, too late. They are decades late and it's basically DOA.

    With Intel joining high end GPU market especially, Nvidia will become irrelevant on Linux desktop due to lack of upstreamed driver. It will be just AMD and Intel.

    Leave a comment:


  • arQon
    replied
    Originally posted by avem View Post
    By the time Wayland is ready and Xorg is finally dead and really not maintained to any capacity, NVIDIA drivers might as well support all these features.
    By the time those things happen, we'll probably be living on Mars too. :P

    Leave a comment:


  • polarathene
    replied
    Originally posted by aufkrawall View Post
    It will still be utterly incomplete if they don't implement
    -Vulkan mailbox present mode (everything seems to be forced into fifo mode...)
    -is VRR property even implemented for Nvidia DRM modesetting driver?
    -is any kind of GPU gamma ramps support implemented for Nvidia DRM modesetting driver?
    -there don't seem to be any overclock options on Nvidia Wayland (xorg rootless also doesn't work, WTF, and even then there is no real undervolting possible)
    -Nvidia DRM modesetting driver doesn't seem to offer any kind of custom EDID interface
    -Does manual fan control work on Wayland?

    I will never use it if stays that incomplete...
    I don't think they care if you'll never use it.

    They're more than likely motivated financially to add this GBM support for enterprise users where a lot of that isn't going to be deal breakers.

    Leave a comment:


  • polarathene
    replied
    Originally posted by Alexmitter View Post
    So, lets revisit that.

    First, ignore invitations on creating a standard, do not show up.
    Second, claim the standard is bad and your (actually not fit for the task) thing is better.
    Third, claiming to want to create a better standard to make everyone happy while not asking anyone on their opinion.
    Fourth, giving that up and use the original standard that was the best solution from the beginning.
    1. EGLStreams AFAIK was already a standard? (since 2011?), might not be in use with desktop environments, but I believe it is commercially in display products? (kiosks, automotive, etc)
    2. Pretty sure they had valid reasons about why GBM was bad, I remember slides or something about it years ago. IIRC there was acknowledgement of those issues, but by this time (much later than 2011) GBM had already become established in the ecosystem well enough that there wasn't interest in changing to an alternative unless it was much more compelling and ready, there was especially little interest in supporting both options.
    3. They did ask for opinions, they just didn't get as much engagement from the community IIRC?
    4. They gave up because their alternative wasn't going anywhere or getting any traction last I heard. They were too late and not regarded too well in the community in general AFAIK. It's not that GBM is the best solution, but it's the dominant broadly adopted / accepted one. For the same reason Windows isn't necessarily the best OS but most prefer it, it meets the requirements for most with less friction, good enough is not best though.

    Not advocating for nvidia here, but at least they're doing stuff like this, why bash them for that?

    I recently found out that nvidia's embedded products including the latest Xavier NX from last year are provided with their L4T distro based off Ubuntu 18.04 , the latest release is August 2021, but still no upgrade to a newer distro, the kernel is stuck on 4.9 still... They have good hardware in that space, it's just sad that they fumble so much on open-source that they can't even support a modern kernel or packages for their platforms.

    Leave a comment:


  • Myownfriend
    replied
    Originally posted by jacob View Post
    That's all very nice, but does it perpetuate the glorious NVIDIA tradition of...
    • Breaking suspend/resume?
    • Draining the battery?
    • Breaking on each kernel update?
    I can't speak on the first two but I used to experience the last one until I started running Dracut if it didn't work after an update. That seems to work for me as I've pretty much always been on the newest kernel version since I switched to Fedora in April.

    Leave a comment:


  • jacob
    replied
    That's all very nice, but does it perpetuate the glorious NVIDIA tradition of...
    • Breaking suspend/resume?
    • Draining the battery?
    • Breaking on each kernel update?

    Leave a comment:


  • Myownfriend
    replied
    Originally posted by avem View Post
    Absolute most Linux users in 2021 use X.org.
    So? Anything that's newer will likely have a smaller marketshare than the thing it's replacing at first.

    Originally posted by avem View Post
    Do you expect a major private company with very specific corporate needs jump onto a hot new bandwagon every time Linux developers create something new and shiny with no software, stability and compatibility behind it?
    You're confusing a bunch of things here. They were never against Wayland, they were against GBM and wanted people to use EGLStreams. That's why they literally wrote the EGLStreams backends for KDE so that there was some way Nvidia cards to run Wayland.

    And it's interesting that you say they have their own specific needs because their needs include a development kit for their Tegra platform, and as part of that platform, they have GBM support. You know this because I literally just told you this in a previous topic.



    The TX1 came out in 2015 but I don't know how long they've used GBM. It's at least a year though.

    Originally posted by avem View Post
    Only in 2021 we're getting the second full-featured DE for Wayland - KDE. Before that it was either Gnome or bust.
    Yes, the largest one (Gnome), the second largest one (KDE), but also Sway, and Enlightenment, too.

    Originally posted by avem View Post
    It's great AMD works for you. I just wonder why you still care having left NVIDIA for good?
    Because they realize that Nvidia supporting GBM is great for adoption of Linux and Wayland. That's incredibly simple to unpack.

    Originally posted by avem View Post
    According to you, NVIDIA is a crap company with bad products and support for an OS with below 2% market share. Always keep that in mind before resenting.
    Why are you so offended on behalf of a giant corporation? Also why are you here, Birdie?

    Leave a comment:

Working...
X