Looks like 2021 really could properly be the year of Wayland on the Linux desktop. For plenty it already is but NVIDIA have been a sore spot and it looks like they're moving forward now too.
NVIDIA's Erik Kurzinger has submitted a Merge Request to the xserver GitLab titled "Xwayland: Support hardware accelerated rendering with the proprietary NVIDIA driver", with the two patches included "intended to accompany upcoming support in the proprietary NVIDIA driver for hardware accelerated GL and Vulkan rendering with Xwayland". Kurzinger continues to mention that once a driver is out with the needed hooks, this code should "just start working".
The patches are being sent out to be considered, so that they can get some feedback and see if there's any substantial concerns about their approach to it.
As for the performance of it? They expect it to be "on-par with native X11 based on the benchmarking I've done", although there's "an annoying extra copy required for presentation of windowed applications, but the impact doesn't appear to be significant" and you shouldn't see it for full-screen applications as long as the compositor works with the zwp_linux_dmabuf_v1 interface.
Why is all this important? With Wayland coming along to replace X11 as a big shakeup for Linux as a whole, you need XWayland to provide that backwards compatibility to enable existing applications and games to continue working well into the future.
Indeed, but I was referring the original question "Is it impossible for my graphics card vendor to do full Wayland support while keeping its driver closed?"
I think the overall answer is it's impossible, because kernel developers have strict rules now against "symbol poisoning". Nvidia for years tried to dance around it, and with various tricks they managed to skirt the issue for some things, but they can't avoid it completely from what I understand.
I also find it despicable for a huge company like Nvidia to play these games instead of working with kernel developers properly like AMD and Intel do.
Last edited by Shmerl on 7 January 2021 at 6:40 pm UTC
I also find it despicable for a huge company like Nvidia to play these games instead of working with kernel developers properly like AMD and Intel do.
Sadly, they are not the only one, a fair bit of the Android chip makers also act like that.
Honestly, I don't get why they do so. All the really important stuff is likely hidden in the firmware anyway. That they close higher level stuff like Cuda / DLSS, I can understand because there is value there. But I don't really see the value there is in a kernel level driver for a graphics card... Power sequences can be hidden in firmware, perf monitors can also be hidden, all the stuff that allows to make high value tools (advances profiling/debugging etc) can be hidden.
So only thing I see is they use code with other companies licences, or they just have some old guys in business who think that closed source driver is super duper important cuz you know "trade secrets". Of course, none of them understand that the guys which might have an interest in those "trade secrects" are more than able to analyze a binary (I mean, try ghydra to see how easy it is nowadays...).
I think the first one is likely, namely because of stuff like that: https://www.phoronix.com/scan.php?page=news_item&px=HDMI-Closed-Spec-Hurts-Open ...
Last edited by 3zekiel on 7 January 2021 at 7:31 pm UTC
I don't get why they do so. All the really important stuff is likely hidden in the firmware anyway. That they close higher level stuff like Cuda / DLSS, I can understand because there is value there. But I don't really see the value there is in a kernel level driver for a graphics card.
Market manipulation shenanigans most likely. If Nvidia can control what features are exposed in the kernel driver, they can charge higher prices for industrial users for using their cards and not expose those features in their drivers for everyone else.
If the driver is open, everyone can use their hardware however they want. This is also the possible reason why they hinder Nouveau from working properly. If Nouveau will work, the open stack will unlock their hardware for anything and they'll lose ability to charge more.
The only way to beat that kind of attitude is for competition to start pushing them stronger.
Last edited by Shmerl on 7 January 2021 at 7:46 pm UTC
I don't get why they do so. All the really important stuff is likely hidden in the firmware anyway. That they close higher level stuff like Cuda / DLSS, I can understand because there is value there. But I don't really see the value there is in a kernel level driver for a graphics card.
Market manipulation shenanigans most likely. If Nvidia can control what features are exposed in the kernel driver, they can charge higher prices for industrial users for using their cards and not expose those features in their drivers for everyone else.
If the driver is open, everyone can use their hardware however they want. This is also the possible reason why they hinder Nouveau from working properly. If Nouveau will work, the open stack will unlock their hardware for anything and they'll lose ability to charge more.
Hmmm in theory yes, but even that, you can lock pretty much anything you want at firmware level, which is signed/encrypted so much safer to lock whatever you want. And whatever the driver is, can't do much in front of firmware. Throw in some fuses/antifuses to choose what to enable/disable at foundry and you are good to go.
I mean it is possible they actually do it because of that, but technically does not make that much sense.
As for gimping Nouveau driver, what is fun is they actually contribute to it for Tegra.
I mean, the drivers with special sauce for Titan and co, I expect they remain proprietary of course - same as AMD workstation drivers. But features like virtual gpu are easy to simply kill at firmware level, so whatever the licence of the driver, customers still can't do anything. So yeah, it might be that someone in the company thinks it's important to lock driver if you want to lock features ... But then someone need to tell them this is really not the best way to do it.
Last edited by 3zekiel on 7 January 2021 at 8:27 pm UTC
…there's a lot of fanboys using Linux who are defending Nvidia…Personal insults already?
Why there are a lot of ATi users in the nVidia thread? Don't you have anything better to do than spew your hatred towards nVidia?
That's usually the perception of those who come from Windows and there indeed Nvidia is very dominating and people really don't care about whether something is open source or not. So when such gamers are switching to Linux they can also bring that kind of attitude with them, but even they often get what the point is eventually.Yeah, those "nVidia fanboys" definitely should have come from God-forsaken Windows! And they continue to poison True Linux Users' minds with their heretical choice of accursed nVidia products! True pure-breed Linux users have always used ATi, even back when those cards outright refused to work on Linux (say "Hello!" to fglrx). How dare they use cards that just work while true follower of the Linux Way must manually compile the latest Mesa drivers from Git applying patches and using new "sometimes working sometimes crashing on start" ACO shader compiler!
The way I see it, the actual trend among Linux gamers is growth for AMD and decline for Nvidia. But influx of former Windows gamers might continue to offset that.
I think with AMD investing more in gaming cards in general, situation on Windows will balance out too, so that influx will have less of an impact on Linux in the future.
So, yeah, let's bash those silly ex-Windows users for their wrong choice.
P.S. Not to mention, AMD "definitely not fanboys" talking about "open source" and Linux Way while playing proprietary Windows games via WINE using closed source AMD firmware in the drivers look comical.
Last edited by Alm888 on 8 January 2021 at 8:24 am UTC
Yeah, those "nVidia fanboys"
Without all that pointless language, Windows users who already have Nvidia will likely have it when switching to Linux, that was the point. And some of them won't understand why blob is a problem, it's pretty pointless to deny this. Simply because on Windows they never even think about this point.
But as above, this only offsets the trend, it doesn't really reverse it, so in the big picture it's not a problem, even if it just delays the decline of the blob.
Last edited by Shmerl on 8 January 2021 at 8:42 am UTC
I'm not an AMD user, but... why would <you stop> playing proprietary games just because you support open drivers?Maybe it is because you are not an AMD user?
…
Sure I'll always be happy when I see open source games, that is great, but IMO it is not a requirement!
Those using nVidia… are just playing games.
Those using AMD feel the need to preach everyone on how closed source is bad and not the Linux Way, so using closed source proprietary "blobs" is a big NO-NO! Oh, and "NVIDIA, F*CK YOU!" Because in their eyes nVidia is EVIL and is actively undermining the Linux ecosystem by… doing what it is supposed to do: providing software support for their products.
Because, remember, closed-source proprietary drivers are EVIL!
I am personally all for open platform ideology. An ecosystem providing possibilities for everyone. If a company decides to sell their proprietary software on Linux -- fine by me! I will not pull everyone's nails with a pliers demanding access to source code.
But some AMD "non-fanboys" will not rest in piece until nVidia opens its drivers (and, preferably, abandons all of its technology, such as CUDA, NVAPI, GSync etc.) because it is not the Linux Way. Also, said "non-fanboys" are quite happy using their AMD GPUs with closed-source firmware in their open drivers. Ask them, they will tell you "that's different" (talk about "GPL Condoms").
And they will find a way to derail every positive nVidia news thread into a hatred-avalanche by posting how they have stopped using nVidia products on principle because "NVIDIA, F*CK YOU!".
For me too but honestly it's not there yet IMO... AMD's still at 1st gen RT and we know how useless Nvidia's 1st gen RT was. Same goes to whatever AMD calls their DLSS equivalent - which IMO is the biggest advantage Nvidia has.My NVIDIA GPU is from like 2014.
This in itself should tell you if I care about RT and 5% fps difference between NVIDIA and equivalent AMD card in general :D
Last edited by bolokanar on 8 January 2021 at 1:19 pm UTC
Personal insults already?Not an insult, I was talking about those users defending Nvidia even when it's the company the cause of those said problems.
But every time I see an argument about "Wayland sucks because they didn't choose the "superior Nvidia EGLStreams"" I get the same energy as "Linux sucks because it won't run my [Windows only trending game]" which the point is, they're blaming the wrong subject for the problem in this case
Wayland (compositors) are far from perfect and it have it's whole share of problems, but Nvidia non standard proprietary drivers is not one of them.
Why there are a lot of ATi users in the nVidia thread? Don't you have anything better to do than spew your hatred towards nVidia?
Personally, I'm only comment because of the Wayland subject, which I'm really happy to see "some progress" from nvidia (even if I don't use it anymore) because it has a positive impact in the wayland adoption as default
You won't see me comment any of those news here about "Nvidia new driver releases" for example.
must manually compile the latest Mesa drivers from Git applying patches and using new "sometimes working sometimes crashing on start" ACO shader compiler!Fortunately I'm yet to experience a problem with Mesa + ACO in my setup, I always only needed Pacman -Syu (and ppa before that) and never had to compile a single driver in my life (I think I don't even know how to do it )
In fact, most of the people I see talking about problems with linux gaming are always using "Nvidia + KDE" combo
How dare they use cards that just work
If you're using Nvidia drivers + wayland without any problems, then those drivers are in a better state than I thought
even back when those cards outright refused to work on Linux (say "Hello!" to fglrx).
Agreed. AMD before Lisa Su was in a sorrow state, and look how things improved with Linux after they release the open source drivers
Last edited by BielFPs on 8 January 2021 at 4:13 pm UTC
I think you would live a better life if you stopped doing archetypes.I'm not an AMD user, but... why would <you stop> playing proprietary games just because you support open drivers?Maybe it is because you are not an AMD user?
…
Sure I'll always be happy when I see open source games, that is great, but IMO it is not a requirement!
Those using nVidia… are just playing games.
Those using AMD feel the need to preach everyone on how closed source is bad and not the Linux Way, so using closed source proprietary "blobs" is a big NO-NO! Oh, and "NVIDIA, F*CK YOU!" Because in their eyes nVidia is EVIL and is actively undermining the Linux ecosystem by… doing what it is supposed to do: providing software support for their products.
Because, remember, closed-source proprietary drivers are EVIL!
I am personally all for open platform ideology. An ecosystem providing possibilities for everyone. If a company decides to sell their proprietary software on Linux -- fine by me! I will not pull everyone's nails with a pliers demanding access to source code.
For most users the problem is more technical than ideological, drivers on Linux are meant to be provided in a certain way and to interface with the system as it was designed, and it is not possible with current Nvidia drivers.
As to the parallel with playing proprietary games on an open system, it is as idiotic as asking why you open copyrighted documents with LibreOffice.
Last edited by omer666 on 8 January 2021 at 5:17 pm UTC
…it's the company the cause of those said problems.Selling hardware to Linux users is "causing problems" now?
It is an open market and a company can choose the way it wants to sell and support its products. Don't agree with said company? Do not buy its products. Plain and simple. But calling people who are of different opinion and think nVidia's level (or way) of support is good enough "fanboys" is just a little overstepping the red line.
But every time I see an argument about "Wayland sucks because they didn't choose the "superior Nvidia EGLStreams""Care to provide a single instance of someone stating "EGLStreams is superior"? I'm having a hard time recollecting the instance I saw this. And I myself have not ever said such a thing because I have no competence in the field to make such statements.
AMD "non-fanboys", on the other hand, like to say that it is "general consensus" to use GBM (or whatewer it is called) and nVidia is the sole black sheep daring reject the norm.
Wayland (compositors) are far from perfect and it have it's whole share of problems, but Nvidia non standard proprietary drivers is not one of them.Strange, I thought the EGL_KHR_stream is a standard approved by the Khronos Board of Promoters. Apparently, Khronos Group mean nothing when it comes to standards on Linux.
Personally, I'm only comment because of the Wayland subject, which I'm really happy to see "some progress" from nvidia (even if I don't use it anymore) because it has a positive impact in the wayland adoption as defaultYeah, in an insulting way. Some people just have to put salt even in the good news. :(
If you're using Nvidia drivers + wayland without any problems, then those drivers are in a better state than I thoughtI don't. I see no point (and just like XFCE better). All the games are for X11, all my apps are running fine with X11 and, as I've previously said, I'm no developer, so technical side of things is completely hidden from me. Wayland without the XWayland is useless for me, and the last I've read, the XWayland is still not ready for "production", even on Gnome+AMD setup.
So, I take the "If it ain't broken, don't fix it" approach.
…drivers on Linux are meant to be provided in a certain way…Meant by whom? Is it not legal to provide drivers in a binary form? What about other drivers (Broadcom wireless etc.)? How about other parts, like BIOS (UEFI) firmware? Or, well, AMD firmware? Are those meant to be provided in a binary form?
Please, tell me you are using Libreboot firmware with gNewSense GNU/Linux OS. But, I bet you are not (your profile states Fedora).
For most users the problem is more technical than ideological…Yet, some seem to be inclined bashing nVidia whenever they can, even in good news, because, nVidia does things the "wrong way", not the way things are meant to be done. Sure. No ideology here whatsoever.
I think you would live a better life if you stopped doing archetypes.
…idiotic…I seriously think you shall calm down or, better yet, go to bed. Because direct insults are not healthy and right now you are clearly not capable of restraining yourself from them.
Meant by whom? Is it not legal to provide drivers in a binary form? What about other drivers (Broadcom wireless etc.)? How about other parts, like BIOS (UEFI) firmware? Or, well, AMD firmware? Are those meant to be provided in a binary form?The binary argument is none of my concerns in this case, and that's what you seem to fail to understand. Linux kernel does officially come with binary software and I don't see any problem doing so, that's why I'm running Fedora.
Please, tell me you are using Libreboot firmware with gNewSense GNU/Linux OS. But, I bet you are not (your profile states Fedora).
And if you had bothered reading what I'm actually writing (which I doubt you did, cf. later in this very post), you would know that I am not discussing legality.
What I am arguing in favour of is developing drivers at least in cooperation with the kernel team, if not directly inside Mesa, which would avoid multiple technical problems including incompatibilities and bugs, some of which we had to bear with for a year and a half without Nvidia even taking notice. I'm not saying they are incompetent, I'm not saying it is the binary form which is "evil", I'm saying that as a (mostly) loyal Nvidia customer since GeForce 2, I'm getting bored with it all.
For most users the problem is more technical than ideological…Yet, some seem to be inclined bashing nVidia whenever they can, even in good news, because, nVidia does things the "wrong way", not the way things are meant to be done. Sure. No ideology here whatsoever.
So you mean there is no better technical way to do software, there's only ideology at hand?
I found your remark very stupid, that doesn't mean I'm insulting your very person.I think you would live a better life if you stopped doing archetypes.…idiotic…I seriously think you shall calm down or, better yet, go to bed. Because direct insults are not healthy and right now you are clearly not capable of restraining yourself from them.
You keep putting things in such a way that prevents you from reading the actual conversation.
All your replies to my post are completely far-fetched, if it's not too insulting to your taste.
You pit things as Fanatic Bearded Open-Source Gurus vs the World.
Well what I'm desperately trying to tell you, is that things are not this way for everyone in this conversation.
And I don't know where you live, but 6 PM is a bit early for bed.
Oh, and...
EVIL!HAIL SATAN!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!link
Last edited by omer666 on 8 January 2021 at 11:45 pm UTC
Selling hardware to Linux users is "causing problems" now?No, but not following the standard of the linux support is
It is an open market and a company can choose the way it wants to sell and support its products. Don't agree with said company?True, they don't have any obligation to follow an standard to support Linux, but once they decide to diverge from it, it becomes their responsibility only to support the said system.
Do not buy its products. Plain and simple.I don't buy anymore (my last nvidia board was from my windows days )
But calling people who are of different opinion and think nVidia's level (or way) of support is good enough "fanboys" is just a little overstepping the red line.I call "fanboys" those who use Nvidia on linux and blame every other factor when their cards don't work well because of an update. If you're not one of those, then I wasn't talk about you.
Care to provide a single instance of someone stating "EGLStreams is superior"? I'm having a hard time recollecting the instance I saw this. And I myself have not ever said such a thing because I have no competence in the field to make such statements.I was using a fallacy, but yes I saw (more than once) people saying it was wayland developers fault to not using EGLStreams and they (and every other vendor) should change it to start using.
I really wish I had some of those post right now to link here, but you'll find someday in a discussion about Wayland in foruns like Reddit or Phoronix
AMD "non-fanboys", on the other hand, like to say that it is "general consensus" to use GBM (or whatewer it is called) and nVidia is the sole black sheep daring reject the norm.
(Please some reader correct me here If I'm saying anything wrong)
The "general consensus" as you said was defined back when X.org developers started to planing wayland, and they call every big vendor at time (including Nvidia) to decide which technology they would use. They decide to use GBM in the end and everyone accepted, except Nvidia who wanted everyone else to use their solution, and Canonical, who decide to not support Wayland at all and launch Mir (which didn't worked, and now Mir is another Wayland compositor).
And no, I'm not an AMD fanboy. I even recognize that Nvidia is superior in hardware (and price) and I would probably get one again if wasn't for their actual business practices.
Yeah, in an insulting way.I was only answering @Shmerl (who have an more optimistic view about it than I) and you take it personal. I'm truly sorry if you felt offended by my comment, I wasn't my intention, and know that if you're not in the case I said before, then be sure I wasn't talk about you.
Some people just have to put salt even in the good news.Good news indeed, it's a sign that Nvidia is feeling obligated to not neglect Wayland anymore, and Geforce users will benefit the most of it.
I'm just tired to see people spreading misinformation about Linux topics (which happens more than you think).
It's always about "If the software doesn't work with Windows, then it's the software's fault"
But when it's on Linux is "If the software doesn't work with Linux, then it's Linux fault"
And this makes me sad because it has a indirect negative impact for us.
In this case, Wayland developers are the victim because Nvidia has too much influence, and they only does this because Linux is their second class users.
If they tried to go against any of the Microsoft driver standards on Windows, not only their drivers wouldn't work at all, but Nvidia would have bankrupt by now.
Last edited by BielFPs on 8 January 2021 at 10:50 pm UTC
…not following the standard of the linux support is…I believe nVidia follows the standards, both Linux and Khronos Group.
I call "fanboys" those who use Nvidia on linux and blame every other factor when their cards don't work well because of an update. If you're not one of those, then I wasn't talk about you.Ideally, "their cards" shall not stop to "work well because of an update" because that, quite frankly, is against Linux rules. Or, more specifically, against Linus Torvalds' rules as he has always said "Do Not Break ABI". Sadly, other (both X.Org and Linux) developers are not so strict and situations when a GPU has stopped working due to kernel/xorg update breaking API (with subsequent recompilation failure) are not that rare.
(Please some reader correct me here If I'm saying anything wrong)Can not delve into this because I was not paying attention to these matters besides noticing (and probably commenting on) Canonical's NIH syndrome with Mir. But, honestly, it is hard to blame nVidia for not following suit when even major "Linux developers" (such as "Canonical" and "Red Hat") can not come to a consensus and are pushing Linux ecosystem into two mutually exclusive ways.
The "general consensus" as you said was defined back when X.org developers started to planing wayland, and they call every big vendor at time (including Nvidia) to decide which technology they would use. They decide to use GBM in the end and everyone accepted, except Nvidia who wanted everyone else to use their solution, and Canonical, who decide to not support Wayland at all and launch Mir (which didn't worked, and now Mir is another Wayland compositor).
I even recognize that Nvidia is superior in hardware (and price) and I would probably get one again if wasn't for their actual business practices.Granted, nVidia often uses shady methods of promotion and has some… strange obsession with ray-tracing pushing it down everyone's throat. But if we look into history, we will see that all GPU purveyors have used such tactics.
In Windows world custom-tailored drivers intentionally straying from standards in order to boost that one particular overhyped game are the norm (I'm talking Quake, for example) and even ATi having separate "minigl drivers" (stripped down OpenGL subset just for Quake) is a part of gaming history. And it continues right now, with both AMD and nVidia competing to beat each other at providing top "Cyborg & Punk 2077" support (with who knows how many hacks and coding errors and standard violations on CDPR's part).
I'm just tired to see people spreading misinformation about Linux topics (which happens more than you think).Understandable.
It's always about "If the software doesn't work with Windows, then it's the software's fault"
But when it's on Linux is "If the software doesn't work with Linux, then it's Linux fault"
And this makes me sad because it has a indirect negative impact for us.
But it is to be expected, as all those "people spreading misinformation" just want a Windows without a Windows logo and expect everything to work "just the same, but better". Yet, who are we to blame them? Because, for better or worse, bundling all the drivers with the kernel and active dissuasion form downloading them from side sources is considered to be the norm.
And what other reaction we are expecting from a Windows user trying out Linux and suddenly finding out her/his quite expensive hardware not working due to:
a) nVidia having required drivers but they are either not included in the LTS distro (Debian/ LTS Ubuntu, Mint etc.), or are not compatible with the current "bleeding edge" kernel/Xserver (Arch, Manjaro, Fedora to sime extent);
b) AMD not being prepared for its own GPU launch and not providing its drivers on day-1, or preliminary support being in the bleeding-edge Git version of Mesa requiring the latest RC of the Linux kernel and obviously not included in any distro yet (hello, "AMD RX 5700")?
If they tried to go against any of the Microsoft driver standards on Windows, not only their drivers wouldn't work at all, but Nvidia would have bankrupt by now.If they tried to "go against any of the Microsoft driver standards", their drivers simply would not work. Just as it is on Linux.
But if you are referring not to technical, but to "legal"/"business"/"corporate shenanigans" side of things, then no, nVidia is regularly "going against Microsoft" and provides beta/enthusiast drivers without WHQL support and has even provided drivers without a certified signature in the past ("Windows XP" would freak out but ask user whether he/she really wants to install unsigned 3rd-party drivers, don't know how it is now). We are talking drivers, of course. DirectX support was never a part of AMD/nVidia's obligation, AFAIK.
But yes, I agree, it is not healthy for your business if your hardware is not working on a buyer's PC at the get-go. Both AMD and nVidia know this and provide beta/non-certified drivers on CD's in the boxes with their cards at day-1 (at least for Windows).
…not following the standard of the linux support is…I believe nVidia follows the standards, both Linux and Khronos Group.
There are many examples of games that doesn't work on Mesa because they seem to be only tested with Nvidia drivers and they don't follow the standard. You can believe what you want, but the facts are still there.
Ideally, "their cards" shall not stop to "work well because of an update" because that, quite frankly, is against Linux rules. Or, more specifically, against Linus Torvalds' rules as he has always said "Do Not Break ABI". Sadly, other (both X.Org and Linux) developers are not so strict and situations when a GPU has stopped working due to kernel/xorg update breaking API (with subsequent recompilation failure) are not that rare.
I believe that you misunderstood what Linus said. First of all, the exact quote is "We do not break user-space", which means that a new kernel version should not break a program that was working fine with a previous version. As in this case we're discussing about a kernel driver then this phrase doesn't apply.
Even thought many pro linux users hate nvidia's closed source drivers, this is kind of whats needed for wayland to succeed because like it or not, Nvidia is the most popular GPU today. They set the stage, not AMD. Unfortunately.
On Windows, but not on Linux anymore. That's what I was talking about the trend above. Nvidia trends downwards on Linux for this very reason (i.e. refusal to upstream their driver).
Last edited by TheRiddick on 10 January 2021 at 3:58 am UTC
NVIDIA just needs to release the bios and re-clocking features for (10,20,30 series) Nouveao and then things can get underway for open source NVIDIA. They do not need to release ALL their drivers in open-source form.
That would be a good first step yes, but they obviously don't want to, so they are a bad Linux citizen and it's a major reason for Linux users to abandon them.
See more from me