Torvalds Slams NVIDIA's Linux Support
New submitter jppiiroinen writes "Linus Torvalds received the Millennium prize last week for his work on Linux operating system. He was already in Finland, so Aalto University arranged a talk session with him (video). During the Q&A, a person asks why NVIDIA does not play well with Linux. Torvalds explained shortly that NVIDIA has been one of the worst companies to work with Linux project — which makes it even worse that NVIDIA ships a high number of chips for Android devices (which use Linux inside). Torvalds even summarized that ('Nvidia, f*** you!') in a playful manner. What has been your experience on NVIDIA drivers with Linux?"
I haven't had problems with NVIDIA cards since Redhat 5.2. ATI on the other hand...every time I try to install Linux on a laptop with an ATI video card, I end up having to futz with it for hours to get it to work.
"My immediate reaction is "WTF? What kind of moron doesn't make things 64-bit safe to begin with?" Linus
It isn't his job to make drivers for a device he didn't create.
You can't code reliably for complex hardware without specifications.
Which are not released.
Nvidia cards are the only way to reliable game on Linux, either natively or through wine. Look at the winehq.org appdb for any game, then notice how most reported problems are on Ati video cards.
Case closed, unfortunately.
I have no experience with arm nvidia graphics drivers though.
I apologize for the lack of a signature.
It does tick me off a bit... NVIDIA was the FIRST graphics company to really come out and support Linux across the entire line. They have consistently made binary drivers in a realistic time frame when new hardware comes out. While all the rest were saying BS about licensing and proprietary codecs, Nvidia just made the damn drivers. Now that is not good enough.
I have had to make a compromise in using the Nvidia driver. It's a "black box", so you don't know what is in it or how others might be able to improve on it, but on the other hand, it does the 3D work for stuff like KDE, Google Earth or 3D games like Brutal Chess or BZflag.
In Mageia, there is the Nouveau free driver, it works very well for 2D stuff, but does not work for 3D stuff.
So it depends on your requirements, and how wedded you are to the "Free" concept. Having said that, if there was a free driver that does 3D on Nvidia cards, I'd take it.
Take Nobody's Word For It.
Not to mention that ATI lets drivers fall out of support a lot faster...
Agreed. I don't know about the NVIDIA/Android problems but on the desktop NVIDIA has always been waaaaaay better than ATI. That may have changed in recent years, I don't know because I stopped buying ATI stuff a long time ago.
My karma is not a Chameleon.
I recently decided that I've put up with my Radeon for too long and dumped it for an NVIDIA GPU on my desktop. I like how AMD is more willing to work with the open-source community, but the driver they are working on isn't coming along fast enough and development seems more focused on adding support for newer hardware (not a bad goal, of course) rather then squeezing out more performance, and unfortunately with desktop environments like Gnome 3 demanding a decent level of 3D acceleration I found that the performance of the open-driver isn't up to the task of handling a multi-display desktop with decent performance with more than a couple windows open (it gets worse if I also want to play a video on my 2nd screen) on my Radeon 5850/4850. My 5-6 year old PC using just 2D acceleration felt snapper than Gnome 3 did with my radeon.. which makes me sad. NVIDIA's propietary driver does a lot better in that regard. Catalyst appears to be dropping support for all but the most recent GPUs, I'm not sure how well it does with Gnome 3, since they are so far behind with kernel and xorg support that I can never actually run it with downgrading a whole bunch of stuff.
I have had far less issues with any nVidia card than ATi/AMD. i have had both for more than ten years.
The actual question that led to the 'Fuck you, NVIDIA' was about hybrid graphics on laptops I believe, which are currently not usable(?)/supported by NVIDIA under Linux, that's was the problem I believe. I recommend rewinding the video a bit for more context.
I suspect your definition of "realistic time frame" is a bit different than some people (especially those who consider Linux their primary OS, and won't touch Windows).
When I buy new hardware, I wouldn't want to wait months/years to use it... So nVidia clearly considers Linux a second-class citizen, which may be OK for you, but not for some.
It doesn't mean that the companies are any better - but nVidia's "high road" as you make it out to be really just makes them the bottleneck when it comes to hardware driver support. It puts them in a position where they MUST create the drivers in a timely fashion, because there is no other choice.
Whereas, with other vendors, the existing reference drivers can often be fiddled with to gain partial support for new hardware, and as specifications are released, anyone with the know-how can begin adding support for that hardware - the bottleneck becomes the availability of talent and motivation.
Anyhow, I take a different road - I avoid high-end graphics hardware entirely, and since I'm not a "gamer", it doesn't matter to me. I just use hand-me-down hardware that people give me and I'm content with it - but I do usually favor AMD's graphics chips since they are more open by nature.
I haven't watched the video, but probably Torvalds is pissed about the lack of contribution to open source projects (kernel, drivers). While their proprietary drivers are top notch. What will happen if one day Nvidia decide that making a Linux driver is too cost effective. Answer: a lot of unsupported video cars and SoC.
I understand the (bla bla bla) Intellectual Property they paid millions in research (bla bla bla) they don't want to give that information for free. But if the current architecture is so different than previous one, then why don't make public development information for previous generations of their chips as soon a new (different) generation is out.
While Intel graphics is still lacking, they are the only intelligent ones that have the brilliant idea of working the support for their next generation chips before those chips become available for sell.
In a world of blind men, the one eyed man is king....
If I want to have decently supported video offload and remotely respectable 3D performance, nVidia drivers are about the only choice.
AMD drivers to this day cause my system to panic on shutdown attempt. MythTV's OpenGL painter and video renderer don't work correctly with AMD drivers, leaving me with video playback with XV and no recourse to sync to vblank. They do have XvBA out there, but I have to go into a more 'bleeding edge' xbmc and then be greeted by very bad artefacts with videos that are profile 5.1. AMD's open source interaction seems better, but none of the open source drivers come close to the 3D performance and notably no video decode offload is available.
Intel I heard great things about, but at least with Fedora 17 I can't seem to find the best way to get vaapi driver on there. All I see are requests to get it in being met with 'too messy'. It's also not in rpm fusion. I dug up a module from an old rpm and got vainfo running, only to find out rpmfusion xbmc build disabled vaapi support anyway, and only went with vdpau. Now I could recompile, but the point being that the larger community seems to not be bothering with trying to test Intel's solution as much.
Meanwhile, my nVidia system does vdpau beautifully, has pretty much no-brainer 3d support, and tear-free XV playback (even though I never use it anymore in favor of opengl rendering). Everything about the experience shows that both nVidia as a company and the userbase at large are developing and testing with nVidia primarily.
I could see as a developer being frustrated at supporting a kernel where a large portion is running kernel-mode code that you can't see, but from a user perspective, nVidia is about the only viable solution for Linux graphics.
XML is like violence. If it doesn't solve the problem, use more.
Linus isn't talking about gaming, performance or anything else like that. The point is : nVidia ships a binary blob and an obfuscated source portion that needs to be built outside of the vanilla kernel. That is what Linus is talking about, nVidia's lack of cooperation with the kernel people at integrating their drivers into the main line kernel in a way that respects the project's goals and visions.
Why you people are discussing the performance when that is not at issue, I have no idea. It was all pretty clear to me what Linus meant.
"Not to mention all the idiots who use words like boxen."
Anonymous Coward on Monday August 04, @06:49PM
I have nothing but problems with Intel's drivers not working right under Linux... I only wish that they were as stable as NVidia's drivers.
Both systems duel boot the OSs.
Well there's your problem, having your OSes walk 10 paces, turn around, and shoot each other is bound to lead to problems. I would suggest trying to dual boot instead.
XML is like violence. If it doesn't solve the problem, use more.
So much about the Winter War is mythologizing. The Finns fought hard and should be praised for that, yes, but their ability to inflict such heavy losses on the Soviet army was due mainly to confused leadership on the Russian side -- if Stalin hadn't purged so many competent generals throughout the 1930s, the Soviets would certainly have overrun Finland completely, regardless of the Finns' bravery.
Furthermore, accounts of the Winter War tend to downplay the fact that Finland lost territory. It wasn't a victory: Finland didn't ward off the Soviet threat. Hundreds of thousands of people lost their homes and had to flee, and Finnish identity has now been erased from parts of Karelia.
Yes, the Finnish people have been courageous and have maintained one of the stronger armies in Europe. Nonetheless, they aren't sisu-fueled supermen and there's a reason that during the Cold War they made serious compromises with Moscow.
Why should Nvidia subscribe to the projects "goals and visions"? Thats the projects concern, not theirs.
AMD provides specifications and a small developer team that actually works on open source drivers.
Intel provides open source drivers.
NVIDIA makes good binary drivers, but those have problems when a new kernel version comes out with changed interfaces:
Only NVIDIA can adapt them, and until they get around to it, NVIDIA may not work with the latest kernel version.
C - the footgun of programming languages
Hence why it's Linus (the project lead) that's talking about it ? He's voicing his concern... I don't get what you're even trying to get at here...
"Not to mention all the idiots who use words like boxen."
Anonymous Coward on Monday August 04, @06:49PM
Linus did give Nvidia the bird and a "fuck you" but he never slammed the quality of the Nvidia's hardware. His gripe with Nvidia is how hard it is for Linux to work with the company since they only provide a binary blob driver which makes bug fixing for it dependent on Nvidia's whims. Plus they refuse to even provide specs and API's for their hardware which make writing open drivers much more difficult and time-consuming because of having to reverse-engineer everthing to get a workable driver. In this case, Linus is absolutely correct.
I've had some problems with all three (I run OpenSuse) ... but NOT since I started downloading their own driver packages and building them on the target machine. I most recently did it with the AMD/ATI Radeon graphics on a new HP Probook. Both ATI and nVidia include configuration/tweaking software that will let me fine-adjust, and I just don't have problems with either.
BUT ... disclaimer: I haven't bought a *video* card in years. I always buy integrated graphics, because it's cheaper and does what I want. Your mileage will vary. But my Big Test(tm) of any graphics system under Linux is to see how well it runs Celestia. If it will run it at reasonable speed without flickering or other annoyances, I consider it Good.
Actually, I've had considerably more trouble with Intel's 9xx series of built in graphics than with ATI and nVidia combined. My previous laptop had the 945 graphics kit (I think I remember the number correctly) and I suffered through everything from flickers to outright hangs.
And the worst experience of all was with an old S3 card many years ago. Wow, what a piece of joy.
Cogito, igitur comedam pizza.
I suspect your definition of "realistic time frame" is a bit different than some people (especially those who consider Linux their primary OS, and won't touch Windows).
I only run Linux on my desktop, laptop, media PC, and work PC. Also, my fiancée only runs Linux. Last time I rebuilt my Desktop, about a year ago, I used a GTX550Ti, and the drivers were prebuilt in a PPA for Ubuntu.
When I buy new hardware, I wouldn't want to wait months/years to use it... So nVidia clearly considers Linux a second-class citizen, which may be OK for you, but not for some.
Everyone considers Linux a second-class citizen. nVidia just threats their second class better than most. Even HP takes a while to release drivers for new printers...
It doesn't mean that the companies are any better - but nVidia's "high road" as you make it out to be really just makes them the bottleneck when it comes to hardware driver support. It puts them in a position where they MUST create the drivers in a timely fashion, because there is no other choice.
Whereas, with other vendors, the existing reference drivers can often be fiddled with to gain partial support for new hardware, and as specifications are released, anyone with the know-how can begin adding support for that hardware - the bottleneck becomes the availability of talent and motivation.
So that is why the ATI drivers are so amazing, and support the latest stuff! No, wait a minute... They only support a narrow range of product before they fall off, and you get the 2D only version.
Anyhow, I take a different road - I avoid high-end graphics hardware entirely, and since I'm not a "gamer", it doesn't matter to me. I just use hand-me-down hardware that people give me and I'm content with it - but I do usually favor AMD's graphics chips since they are more open by nature.
For someone not that interested in graphics drivers, you sure have a strong opinion. And actually, for your case, I would recommend Intel over ATI. PErhaps because to me, graphics are important, and stability more so.
> but I do usually favor AMD's graphics chips since they are more open by nature.
We've been hearing about AMD's opening specs and drivers drivers for what, close to 5 or 6 years now?
http://tech.slashdot.org/story/07/09/06/1335230/amd-to-open-ati-specs
http://linux.slashdot.org/story/08/12/30/0337204/amd-releases-open-source-r600700-3d-code
And even after all that, getting 3D accel, multimonitor etc. to reliably work has been extremely painful compared to Nvidia binary blobs which pretty much work for common scenarios like fully accel 3d gaming(I remember playing UT2004 a very good FPS on Linux with those drivers). So this means that either AMD/ATI has failed at providing open specs and code or that the community hasn't fully stepped up to convert those specs into "Working(TM)" drivers. Which is it?
Meanwhile, I hope someone sensitive at Nvidia does not take this tongue-in-cheek comment personally and decrease the priority and allocated to the Nvidia binary drivers development because they feel that's it not helping them in the community to do more than their rivals in the business.
This space for rent.
I think his point is that Linus should be grateful that they even support his project at all, rather than bitching at them. If it costs them money to support Linux and they're damned if they do, damned if they don't, then what incentive is there to continue even supporting them at all?
I think a large part the problem is that Linus has a way of sounding like a dick. There are much more diplomatic ways of saying nVidia could certainly do better on Linux than the way Linus goes about these things. No one is suggesting nvidia couldn't do better, but when he attacks a company over this sort of thing it just makes him sound like an ungrateful prick.
I think you and many here misunderstood what Linus was talking about. Linux specifically said NVIDIA is one of the worst companies with whom they worked. Period. There is no need to bring up ATI into the table. There is no need to bring up that your card has always worked beautifully. This is talking about his and the kernel maintainer's experience in dealing with hardware vendors, something that we ourselves never have to deal with. Their proprietary drivers may be the best ever but that has nothing to do with!
If the kernel maintainers have a question about the hardware, they can't ask NVIDIA they have to test and reverse engineer to find the answer whereas with other companies, they may get an answer directly from the manufacturer. Get it? "...NVIDIA just made the damn drivers. Now that is not good enough." Not from a kernel maintainer's or Stallman's point of view, I'm pretty sure.
They've already started to abandon Linux.
Zero laptops on the market with Nvidia chipsets work on Linux.
Mod me down, my New Earth Global Warmingist friends!
I've had problems with a NVidia card that I have, and the last time it gave me problems was with the latest upgrade to Kubuntu 12.04. With this upgrade, NVidia's very own proprietary driver either rendered 3D scenes excruciatingly slow or never rendered them at all, instead presenting only a black window. Strangely enough, 2D rendering worked without any noticeable hitch.
The fix came only about a month ago, with an upgrade to NVidia's proprietary driver.
Slashdot, fix your code or at least hire someone who is competent at it to do it for you.
Quick, let's lash out at Linus!
You've obviously never had to deal with a shitty company before. Nvidia interacts heavily with the Linux world, but any attempts to accomplish things if you aren't a direct customer buying millions of chips from them is goddamn impossible. It's not just getting sources, it's just making shit work and having to deal with the fact that a prominent company whose technology gets used in so many platforms causes you no end of trouble (bug reports, workarounds, etc.) but they won't assist or aid you in the slightest. On top of being entirely closed source. You can't ignore the issue entirely, but your hands are tied in terms of how you can actually look into and resolve a problem.
So yeah, Nvidia cranks out Linux drivers that work decently well. That doesn't make them immune to criticism, especially not at the level Linus probably has to deal with them at.
But hey, Slashdot is rapidly becoming very, very anti-Linux so why not?
NVidia isn't required to, as you put it, "subscribe to the projects goals and visions".
But Linus Torvalds is also not required to enjoy or approve of NVidia's policies, particularly when they generate bad publicity for Linus Torvalds' project and also cause a number of people to complain to Linus Torvalds about a problem which he didn't caused nor can he do anything at all about it. Hence, a very appropriate and sorely required "Fuck you, NVidia".
Slashdot, fix your code or at least hire someone who is competent at it to do it for you.
Did you watch the video ? At all ? Linus is voicing is concerns, not telling nVidia how they should operate. He's describing the problem basically... What nVidia thinks and does is out of bounds and plainly obvious, you're restating what Linus is stating...
Hence why I don't get your point.
"Not to mention all the idiots who use words like boxen."
Anonymous Coward on Monday August 04, @06:49PM
If it costs them money to support Linux and they're damned if they do, damned if they don't, then what incentive is there to continue even supporting them at all?
Because they feel the Linux market is worth supporting. They don't do it to make Torvalds happy.
>> "Linux needs Nvidia. Nvidia doesn't need Linux."
Android is Linux. If Nvidia wants to eventually deal itself out of the cell market they can be my guest.
I don't know about the NVIDIA/Android problems but on the desktop NVIDIA has always been waaaaaay better than ATI. That may have changed in recent years, I don't know because I stopped buying ATI stuff a long time ago.
So, you've no idea what you're talking about. Good to know.
What I know is when nvidia came out, I was seeing thousands of posts from people desperately seeking answers on how to get them to work, and thousands more on how to make their X Window survive upgrades. Nvidia is the reason they came up with the mantra, "Don't use a GUI package manager!", because if it upgrades X, it'll kill the pkg. mgr. doing it.
Meanwhile, I've been using ATI for more than a decade with zero problems past their initial teething stage. However, I don't care about 3D, gaming, Wine, or MS Windows. I have no trouble playing DVDs, youtube, or flash. IF I think there's anything wonky going on with video support, I run "X -configure" as root and the wonkiness disappears.
I will never buy a box with nvidia in it if they continue this way.
"Tongue tied and twisted, just an Earth bound misfit
If I were nvidia, i'd be glad to make drivers. An unusable card does not sell very well.
I wasn't aware that NVidia had their own OS. So NVidia makes no Windows or OS X drivers then?
Well, there's spam egg sausage and spam, that's not got much spam in it.
Then how come when I am running their driver and some issue requires me to Ctrl+Alt+F1 to get a console to fix X or something that is bogging down X, I get a total crap video mode with glyphs I cannot read, and bit splatter in the video buffer than X cannot clear up when I Ctrl+Alt+F7 to get back to X? FYI, this never happens with nouveau ... so it is clear the NVIDIA hardware CAN do text mode well. The NVIDIA programmers need to fix even the text mode or at least arrange for driver splitting where they hand off to nouveau in text mode.
Oh, and did I mention, they need to keep up with the kernel versions? Yeah, yeah, I know, the pace of change is fast. If they were to just open source the driver AND continue working on changes, sharing with the community, then the community can share back (and then we can openly see who is able to do better support).
now we need to go OSS in diesel cars
Hum. Actually, yes. Yes it is. Or their cards would just be a complex mass of metals, plastic and rare earths with no use whatsoever. Except maybe as a suboptimal heater.
N.
Then who's job is it?
Who's job is it to create reference drivers and release specifications for the hardware that nVidia makes?
nVidia seems to make it their job by refusing to release specifications for the hardware they create. They create this hardware to work with other open-specification hardware and software, and yet, they intentionally keep their own specifications secret.
I made no points. I explained to people what was being discussed in the video. Why are you responding to me ? I framed the context. You don't agree with the context I framed ?
"Not to mention all the idiots who use words like boxen."
Anonymous Coward on Monday August 04, @06:49PM
you are not a Nvidia paying customer, you are a customer of whomever made the laptop. Nvidia supports the laptop maker by providing them technical details and drivers for the operating system the maker wants, which I assure you is not the freetard crap you put on it.
Point is Nvidia is supporting the paying customer, and Linus is whining that they are not getting the same treatment for free
> They only support a narrow range of product before they fall off, and you get the 2D only version.
News to me. I have pre AMD buyout ATI 9200's on AGP slots still in production. The run Compiz pretty well. And they ran right out of the box, no futzing with odd repos, limiting to specific kernels etc. Just install and go.
Avoid the newest and AMD just works. Nvidia doesn't. Yet.
On the other hand I have an Nvidia in in my MythTV and I do have to futz with drivers in exchange for accelerated HD playback with GPU assisted deinterlacing.
It is stupid, keeping the specs secret is a lose/lose for everyone.
Democrat delenda est
To be fair, the summary article asks what people's experience has been with NVidia drivers, so take a pill. The article is not just about the kernel developer's experience; it's asking about deployment experiences.
And on that note: I've never had anything but rock-solid performance from NVidia's drivers. However, the only custom kernel building I've had to do for several years is building the wanpipe module for telecommunications.
I do not fail; I succeed at finding out what does not work.
There should never be intellectual property in an INTERFACE. I don't GAF what is going on inside the video card to accomplish what is asked of it by software. Put the IP in the hardware/firmware, open the interface, and lets move forward. Simple as that. A blob for the firmware image itself is fine if they don't want to store it in flash on the card. Get some memory, load the blob from disk, transfer the blob to the card, free the memory, and move on.
now we need to go OSS in diesel cars
Drivers are not an OS.
NVIDIA should make the hardware and firmware that runs it. The main CPU should be the realm of the OS. These two should talk to each other. NVIDIA is not cooperating with that.
now we need to go OSS in diesel cars
There was also one person from the NVIDIA in the audience :)
Linus actually opens up the reason, why he made a comment with the word:
http://www.youtube.com/watch?v=MShbP3OpASA&feature=youtu.be&hd=1&t=1h00m25s
A reference driver is fine. Open source it. Then the Linux source tree can include it. Then when the hardware maker adds new hardware or firmware features, submit patches. If they make a whole new architecture that is not compatible, submit a whole new driver ... as source code. Then it's in the Linux tree and it can be maintained by kernel developers when the kernel changes that requires something to change in the driver (for example a change in number of parameters needed for some kernel function call to support some new feature).
now we need to go OSS in diesel cars
The problem isn't that nVidia doesn't put out functioning binary drivers. They do. Their binary ones are much better than ATI ones IMHO. The problem is that the binary drivers don't always survive kernel updates So people who rely on nVidia's proprietary binary drivers can't always update their kernel or they lose their graphics until nVidia puts out an update. Now, there are open source drivers for nVidia that get updated with every kernel update; however, nVidia does not put out enough specifications so that these drivers are able to use full card functionality like full 3D acceleration. It wasn't until recently that the open source drivers have been able to reverse-engineer some of the functionality.
Well, there's spam egg sausage and spam, that's not got much spam in it.
> When the OS is mostly a loss to the company. Linux then it's Linux's job.
Nvidia sells a lot of their high end gear to Linux customers.
That's why there's drivers for their consumer grade kit.
The idea that Linux doesn't make Nvidia any money simply ignores the facts. This seems to be more of a "purity" issue than a "support" issue.
A Pirate and a Puritan look the same on a balance sheet.
> If it costs them money to support Linux and they're damned if they do, damned if they don't, then what incentive is there to continue even supporting them at all?
It doesn't.
I think people nowadays just don't understand what Linux is anymore.
This discussion has nothing to do with desktop, performance or even servers.
Nowadays, Linux is shipped on 900000 phones every days and that's a very lucrative business.
Nvidia has a share of this with its Tegra chips but their way of supporting it makes it a pain in the ass for others inside the kernel development community.
From that point, Linux complaining is totally fair. PR is basically his only weapon.
Its their job to make graphics cards. Until they release a full API/ABI with a permissive license, yes its their job to write drivers.
It should be noted, that nVidia cards are the new hardware of choice of parallel super-computers, over traditional CPU chips, all which run linux.
But ... they don't. The majority of my system crashes are due to NVIDIA drivers being poorly programmed. Nouveau has never caused any such problems since 2.6.38.
now we need to go OSS in diesel cars
So I can yank out one of my nvidia cards and put it in a Mac then and all will be sunshine and roses?
If some Lemming troll wants me to test his assertion that support for Linux lags, it's no problem for me to go down to Frys and prove him wrong. It's not quite so easy with a Mac.
Most of them simply aren't designed to accomodate any random video card I might pick up at a flea market.
A Pirate and a Puritan look the same on a balance sheet.
It isn't NVIDIA's job to make drivers for someone else's OS.
If nVidia does not make drivers for someone else's OS who, how do they make it for? They don't have their own OS. Their entire business relies on someone else's OS. So does nVidia make drivers for Windows and OS X or not?
Well, there's spam egg sausage and spam, that's not got much spam in it.
> Point 1. PPAs are not official nVidia's work
So? The only relevant question is whether or not they work. This they do very well. They work because Nvidia decided to release a driver. The fact that Canonical or some power user decided to put a pretty bow on that driver really isn't relevant.
The drivers in the PPA has to come from somewhere.
> Linux doesn't offer a way to keep using the same binaries between releases
Sure it does. That's all automated now and has been for awhile. Hardware vendors don't have to be concerned about it beyond making sure they properly install stuff to use current features of Linux.
If they don't, someone else can. That's one way that different distributions can distinguish themselves. They can take up the slack in terms of integration work. They fill the role that Apple is reputed to for it's platforms.
A Pirate and a Puritan look the same on a balance sheet.
Nobody asked Nvidia to do any driver. Linus is here complaining that they aren't COOPERATIVE. That's very different. Besides that, yes, it should be Nvidia's job, since they are the ship makers. Also, they do use Linux themselves. So they just take, and don't give, which isn't fair.
> What I know is when nvidia came out, I was seeing
> thousands of posts from people desperately seeking
> answers on how to get them to work, and thousands
> more on how to make their X Window survive upgrades.
Yeah, and they solved that problem. An entire module rebuild facility for kernel upgrades was probably developed just for Nvidia.
That benefits ATI blob drivers too. This is a good thing since you are unlikely to get suitable performance (if you care about that sort of thing) without the blob driver.
A Pirate and a Puritan look the same on a balance sheet.
Actually, there are kernel developers willing to sign an NDA for the specs ... provided they can release the SOURCE CODE they produce. That a compromise that NVIDIA seems unwilling to work with.
now we need to go OSS in diesel cars
> OMFG NOOOOO there is no possible way that NVIDIA could operate like every other chip maker on the face of the planet.
No, we want them TO operate like 'every other chip maker' and get with the program. Name another major chip vendor who hasn't figured out that getting into the Linux kernel is a required checkoff for market success. Doubly so for any product used in the enterprise vs the fanboi market. NVidia's CUDA is about the entire list these days, the last major holdout.
A few still maintain a desperate final stand in the embedded market but few new vendors go the closed route and every year brings another of the dead enders over to the open camp. First to fall were the storage products, then ethernet and cpu makers. Wifi is holding out on the blobs due to fear of the spectrum regulators but most now support an open driver for the kernel to firmware interface.
Democrat delenda est
Nvidia drivers were actually the driving force behind the concept of kernel tainting where an oops dump reports that non-free modules were in use. Nvidia drivers were creating a huge number of oops reports that couldn't be debugged due to being closed source.
The problem is that nvidia doesn't even provide a documented interface to build a driver on top of. If they want the software working with their card, then it is up to them to provide the glue. I imagine they could more of the logic into the firmware and then make the driver a basic shim.
The other alternatives is for Nvidia to come out and indicate what they need from Linux to make their lives easier.
Jumpstart the tartan drive.
I like Linus. He speaks his mind, and that is good. He does not strive to be a politically correct suck-up like most of the soulless corporate speaking heads you see all over the place.
He has every right to say "Nvidia, fuck you". How should his message be sugar-coated? Should he write a 500-page NY Times bestselling book about the matter? Hold a seminar? Issue a press release? Have a meeting with Nvidia CEO, CTO and CIO, presenting empty Powerpoint fluff and wanking around the issue in such abstract terms that it can be interpreted in any which way, after which everyone thinks they've done their part but nothing happens as a result? No. It suffices with three small words. Why waste more time and effort? To not hurt someone's feelings? Don't be such a baby.
I think part of how Linus comes through as he does is a cultural thing. Although he has lived in the USA a lot, he's still a Finn. If you need to deliver a message to someone who is not behaving, you deliver a message, wrapping it up in a pink box with a greeting card full of hearts is pointless. And let's face it, Nvidia hasn't been a model citizen - if you're a dick, don't be surprised that others are dicks towards you.
And you ask: what incentives does Nvidia have to support Linux? Well, how about not making life hard for the people who pay actual real money for Nvidia's products? And not making life hard for the people who try to support the Nvidia products on a great OS on their free time?
It is stupid, keeping the specs secret is a lose/lose for everyone.
When I worked for a chip company, we weren't allowed to release specs.
Why? Guess.
Patents. We had no idea whether we were violating some obscure patent that no-one had ever heard of, and we weren't willing to put the specs out there where any troll could sue us for millions.
Until they release a full API/ABI with a permissive license
Perhaps *Linux* should create a stable ABI. Then vendors like Nvidia could write a driver and not have to worry about each point release of the kernel breaking it.
I don't always use unix-like operating systems; but when I do, I prefer FreeBSD.
This is only true if your definition of "full-featured" does not include KMS or complete XRandR support.
They added XRandR 1.2/1.3 support in 302-series.
See e.g. http://www.phoronix.com/scan.php?page=news_item&px=MTEyMDk
Kernel panic!
from 09 F9 11 02 9D 74 E3 5B D8 41 56 C5 63 56 88 C0
to 45 2F 6E 40 3C DF 10 71 4E 41 DF AA 25 7D 31 3F
Let us know how they work out on Windows 8.
Last I heard nVidia wasn't keen on disclosing technical specs for their chips, even under NDA, so only nVidia can release Linux device drivers that stand a chance of working under pressure (yes I'm aware of Nouveau). This means Linus can't write the driver himself.
Anyway compared to ATI, nVidia has always been a breeze. Every time I've put an ATI card in, I've had a headache. And, at risk of offending Linus' sensibilities, ATI's driver quality hasn't been very good, for any OS, since they sent it all overseas and open sourced. These aren't trivial cards to work with, they're about as hard of a device driver model as you can possibly find in consumer gear.
There's a couple of points here.
1. Should the driver API be stable? Usually not: a long term stable API means that it's hard to make changes when necessary. For example, the Linux USB subsystem has been substantially re-written 4 times. This is never a problem, because when someone changes the kernel API, they also are responsible for updating all drivers in the tree that are affected by it. It means that Linux's USB support isn't hamstrung by lots of legacy cruft.
2. Should the ABI be stable? No. This breaks pretty much every time the kernel is compiled. The solution: recompile the drivers.
The only problem is that Nvidia don't want to play by Linux's rules: they want to ship a binary, rather than source driver. The result is that Nvidia (and nobody else) gets snarled up on the API/ABI policy which works exceptionally well for all the open-source kernel drivers.
The argument for a stable ABI is rather like the (claimed) USP of Java: write once, run anywhere. The thing is, if you can recompile on your target platform, that advantage disappears. Why would anyone care about binary compatibility if they can have source-compatibility?
Aside: there is a very different logic with the Posix (system-call) API between userspace and kernel space. This means that, for example, fopen() works exactly the same way now that it did 20 years ago.
At least the binary GPU drivers work. I had to move off of nouveau because every time I resumed from suspend the GPU fan sounded like a UFO taking off. Granted that may arguably be nvidia's fault by not giving the nouveau dev's what they need to write the drivers properly.
But, I haven't had issues getting nvidia cards working under EFI either; particularly those in Mac's. On the other hand the only way I have gotten ATI cards to work properly is by using fbdev. I have seen supposed ways to get this working by dumping the bios when booting in legacy mode and then using loadbios in grub 2, but have never personally gotten it to work.
So, they may not be great to work with, but at least they're throwing us a bone, which is more than I can say for ATI in most cases.
Ok so you don't know how to setup graphics on Linux
We are WAY past that being a valid statement. It isn't 1990 anymore.
This story starts more than a decade ago. There was a hugely popular software vendor concerned that maybe one day people might choose to not use their software. They had vast sums of money and controlled access to the immediate future for software and hardware vendors alike.
Foreseeing a potential difficult future they chose to defend themselves in a particular way. They formed subsidiaries they controlled and gave them patents, and filled them with developers skilled in the finer (and secret) nuances of how to interact with their software, and they kept them informed with advance knowledge of how it would work in the future.
These subsidiaries approached hardware designers with a simple message: they would accept the patented technologies and use them; they would let the subsidiaries write the drivers that had special hooks into the software; they would do this under non-disclosure and never tell - or they wouldn't. If they accepted they would not be able to publish open specifications about how their own hardware worked because that would be exclusively cross-licensed with the subsidiaries in exchange for access to the patents. The hardware makers who wouldn't play along wouldn't get as good compatibility with the big company's software, nor inclusion in their distribution CD and OEM images. The refusers would be plagued with difficult installation, buggy drivers and unhappy customers and fail in the market. The software would change in ways the refusers could not predict, but the accepters could. Some accepted, and some refused. Those who accepted survived, those who refused mostly died.
This has continued to the present day and as the hardware has evolved the agreements persist in ways that are now not removable.
Nobody involved in Linux wants hardware manufacturers to write the device drivers for them. They only want open and clear specifications for how the hardware works so they can make their own drivers. They aren't going to get that from NVidia, nor ATI, nor any others whose technology is intertwined with this compromise from yesteryear. This boon is now beyond their ability to grant without starting again from the beginning.
Help stamp out iliturcy.
Of course, but the point it still there. No one owes anyone anything. Nvidia has absolutely zero responsibility to make their chips work with Linux. They are free to decide exactly which platforms they want to support. Some people in the Linux community is however so used to getting everything they want for free that they for some reason think that they should have everything for free and that companies that don't do that are somehow evil. No they are not evil, it just happens that they are not especially friendly either. It is fair.
No, it's totally unfair. Have you ever shopped for a graphic card recently, with the goal to put that in your Linux box? There's currently only 2 choices: Nvidia or ATI. Both have totally horrible drivers in Linux, because the chip makers aren't being COOPERATIVE. That is, just not giving enough so that someone can make a decent driver. The problem isn't that Nvidia isn't helping, the problem is that they aren't helping AND we have no other choice.
I hate to be in such a position that I'm forced into buying a product that:
1/ I don't like (cards are too big, often with stupid fans)
2/ Is too expensive for what it does (I'm just asking for my computer output on DVI / HDMI / VGA... what's that hard and expensive to make?)
3/ Has features which I don't care about (eg: 3D and gaming shit...)
But there's simply no alternatives.
The only thing I'd like would be to have a fucking decent card that I can plug on a screen (if possible, multiple, all supported). But in this day and age, it's not possible to have simply THAT, working correctly. So yes, we do have all the reasons to hate Nvidia and ATI/AMD.
Oh, another one. Again, nobody asks for software, just documentation. It'd be even better if they were not even shipping at all a Linux driver, because their non-free stupid software is crap. In fact, I HATE as well the bloated screen configuration that Nvidia delivers on their site. It's simply not convenient at all. To switch from the laptop's screen to TV, you need around 15 clicks. Also, why should we use something special for Nvidia, and not the screen manager that's in Gnome by default? This proprietary software needs to DIE, especially that we have no choice but that one.
Absolutely, you're dead right.
My point is if the Jesus Christ of Linux, Torvalds, is attacking them for their support, then that risks harming their marketshare. It may actually lead to the Linux not being worth supporting, that's kind of the point.
Tao Presentations is a 3D presentation software that runs on Linux as well as on Windows and MacOSX. We had mixed experience with nVidia support. Sometimes, it just works. In other cases, major functionality is missing (e.g. a laptop where the HDMI port is simply not detected). That being said, except when we hit a major bug, OpenGL performance is overall rather close to what we get on the same machine on Windows, which indicates that nVidia takes Linux somewhat seriously.
Actually, I don't think nVidia has any kind of anti-Linux strategy in place. It's rather that their portfolio is big and their overall strategy is sometimes confusing as a result. Consider stereoscopy for example, which matters a lot for Tao Presentations. Both nVidia and ATI have this puzzling idea that only "pro" customers can have stereoscopic support for OpenGL. This leads to situations where a machine with an nVidia chipset will connect to a 3D projector perfectly... as long as it runs MacOSX. The exact same hardware won't offer quad-buffer OpenGL support when running Windows or Linux. Why not?
So it's not about Linux, it's about lining up so many little pieces that sometimes, one of them is missing and the whole thing collapses. Linux is probably at the bottom of the list of things to fix, so that's where you see more problems.
-- Did you try Tao3D? http://tao3d.sourceforge.net
It's been established for a while that nVidia is not going to open source their driver. It's not like this is a surprise. In the past, Linus has gone on record to say that binary blobs are better than no driver at all.
The turnaround on a kernel release would need to be a month or so for a company like nVidia to make the required changes to their driver and have it ready when a new kernel is launched. Hell, even the Evil Microsoft provides developers access to pre-RTM builds with enough time to make sure that their drivers work at launch.
What kind of OS changes their driver API so much that a driver compiled for one version doesn't "just work" with an incremental update? An immature one. Frequent kernel updates are basically patches. If your driver API is changing that much, you need to re-examine how you're doing your development.
We have every right irritated with Linus here. I've written software for Linux, Windows, and embedded RTOSes. Linux was by far the most painful. Boost was the only thing that made it tolerable. Berating a company that supports a user base which represents 1% or less of their market without any modern-day language tools at their disposal (STL, Boost, a decent IDE) is just counter-productive.
If Linus wanted to do something productive, he'd help to stabilize the various APIs in the kernel so that this stops being an issue.
Bottom line: this goes both ways. Either you allow binary blobs and give the providers of those blobs a chance to get their drivers working before you put out a new kernel, or you launch a kernel whenever you feel like it and live with the fallout.
Graphics cards are, nowadays, a bit more than 3D gaming. Nowadays there are a number of markets that companies such as NVidia may cater and are of fundamental importance, such as smartphones/tablets (remember Tegra?) and HPC (remember CUDA/OpenCL?).
What these markets have in common is that linux is the only reason they exist and are relevant. Windows is,at the very best, a "also ran" in mobile devices. In the HPC world linux is essentially the only game in town. In fact, there is currently only a single entry proprietary OS entry in the Top500 list.
Do you expect NVidia to abandon any of those markets in protest of Linus Torvalds pointing out that NVidia sucks at supporting linux? Think again.
Slashdot, fix your code or at least hire someone who is competent at it to do it for you.
Linus Torvalds is also not required to enjoy or approve of NVidia's policies, particularly when they generate bad publicity for Linus Torvalds' project
Except that's bullshit. Linux Torvald's project is generating bad publicity because it's bad at graphics drivers. ATI is more than accommodating and helpful--and the open source community fails miserably at creating stable drivers. So just about everybody demands Nvidia or ATI *fix* Torvald's failed project. If Nvidia opened up their specs more there's nothing to suggest that the drivers would be any better than the Open Source community's crappy job with ATI drivers. At least Nvidia offers a workable driver set even if it's a binary blob that gives Linux a workable video card option.
If it weren't for Nvidia's blob drivers getting anything done in Linux that requires a video card would be a hell of a lot harder and far less interesting. I sure as hell wouldn't rely on an operating system that performs as well as Linux on ATI's open source drivers. Having a working driver option for Linux generates far more good publicity for Linux than the alternative of a crappy but ideologically pure driver.
My alienware m11x begs to differ sir. It comes with a hybrid nvidia/intel onboard and I'm able to use nvidia perfectly. It uses the GT 335M and it worked on Gentoo, Mint and more recently Debian.
Of course I'm willing to contend it works because in the bios I can either have the hybrid enabled (forget the exact name of the procedure) or just have nvidia enabled but wanted to correct your statement that has been modded up :).
Cheers,
Maq
On the contrary. Have you seen the size of NVIDIA's (and AMD's) drivers lately? Even after scraping out the bloat they're huge - they're on the scale of Windows 95/98, and all of that is code.
At this point they are an OS; they're performing code compilation, thread scheduling, power management, memory management, providing APIs, etc. Video drivers have become a sub-OS to manage the GPU in a fashion very similar to what Linux does with the CPU, which is just insane if you think about it. But it's also why both NVIDIA and AMD are so sheepish about open sourcing their existing drivers.
I think you've got it reversed.
It's bad hacks like Optimus that get dropped on the floor because they are marginal and offer little real benefit from a business point of view.
Most people buy nvidia kit to get rid of crap like Intel and are happy not to run it even if it is force bundled on whatever laptop or desktop they happen to have. Optimius is a peculiar beast not worth the noise you're making over it.
A Pirate and a Puritan look the same on a balance sheet.
No. The thing that cause you to be "fucked" is not being able to boot a new kernel.
The idea that you won't be able to compile your own kernel modules because of Microsoft's locked booter is a novel and interesting concept.
A Pirate and a Puritan look the same on a balance sheet.
No, that's because they're major releases, when it's OK for the ABI to change. Again, something that every other remotely OS manages quite well.
Yes it does, and yes it is. Drivers breaking between minor revisions within a major release is very uncommon on pretty much every platform except Linux.
Heck, it's not unusual to see drivers working across even major revisions.
Windows, OS X (more recent versions, at least), Solaris, FreeBSD, etc. It's a struggle to find any remotely major OS other than Linux without stable ABIs.
Nonetheless, they aren't sisu-fueled supermen and there's a reason that during the Cold War they made serious compromises with Moscow.
Ah finnlandisierung meine freunde.
Seriously, Cold War time wasn't all that bad time for us. It was hard, but not completely bad. I know it well as I'm old enough to remember it well since sixties. We did have homie-russians some time that tried hard to influece and mostly they succeeded to get people self-sensor telling truth about many matters what people really thought about eastern neighbour that is what finlandization wich is german invented term of the time describes. We lost part of Karelia true, we did lost Petsamo too up north, and we got Stalins advisors (valvontakomissio ie. supervisory comission) to look after that the war criminal prosecution went on direction they wished. Hanko peninsula, the south tip, was a short time also rented for Russian military base, but it did not last long before they left. Supervisory comission left quite soon after the war criminal prosecution was over. Surely KGB had is's men Russian embassy but so did many other western and eastern block embassies too.
We also paid heavy compensation to USSR, but luckily that also rapidly helped build our factories to produce goods that later took us from agricultural society to a modern industrialized nation. Once compensations were paid it was nothing much but just playing with sordino after that. We have saying that if you are made to sleep next to bear, better not make too much noise to wake-up. it It was open secret how screwed USSR was, and besides politicians in officials and trade negotiations jokes were kept aside otherwise russians were laughingstock of everyone. And they were not only in Finland, ask anyone from Baltic countries or anyone from Poland, it was same there. Ofcourse there were communist minded minority, being communist here is not criminal offense, but they never got large support in elections and besides only a very minor fraction of them actually wished we would merge with USSR. Finally they got the clue after USSR dissolved and disappeared from political map.
We did quite a bit bilateral trade with USSR and that provided work to many on our side and russians got some industrial products we produced, that was the good part of it to both sides. If you still remember those two MIR mini-subs Russians used couple of years ago to visti Nort pole, those were built on that time.
After Cold War it suddenly stopped for some time and that was greatly contributing the recession early nineties, then bit trade continued with Russian Federation now with currency. There have been and will be challenges next to Russia as any neighboring country can tell. Finland has managed quite well not to kick russian bear ass too much and often to wake it up wrong foot and hopefully it remains that as well. Not all USSR/Russian neighbors did not manage as well, unfortunately for them.
Cheers,
ac
Did Intel cease to exist in in the past 24 hours, or am I in a parallel universe?
Syllable : It's an Operating System
Actually it costs them more to develop their own binary drivers in house, than it would to open source them and allow third parties (including the kernel devs) to take up some of the slack...
Not supporting linux would lose them business, almost certainly more than it costs them to support the drivers... Linux may not be huge on gaming desktops, but GPUs are also targeted at high performance computing, and Linux is very big there.
http://spamdecoy.net - free throwaway anonymous email - avoid spam!
Have you tried the FOSS drivers? Because you really shouldn't complain when AMD did what the community asked them to do and handed over the specs, or did everyone forget how many times we've heard "Just open up the specs and we'll support the hardware" on this very forum and others? AMD took that one step farther by actually hiring developers to assist the FOSS driver devs in getting up to speed, and from what I've been reading they've been coming along nicely, although focus has naturally been a little heavy on the APUs since so many of them are out there.
This DOES highlight what i consider to be a major failing in Linux for quite some time, the fact that its damned near impossible to JUST get security updates, as package A needs kernel B and depends on packages E-G so to keep the thing updated you end up with an "all or nothing" so you can't just update say the XBMC software without changing graphics drivers and a bunch of other shit. People can scream bloody murder all they want but THIS IS WHY a hardware ABI is a GOOD thing, because if I want to keep my 3 year old graphics drivers while being fully patched and running the latest of everything else on Windows? not a problem, I just don't have to update the graphics driver. this is also why AMD's support phase isn't a problem on Windows, as one can simply stick with the last driver and be fine for the life of the system and after 4 years they've squeezed all the power they are gonna out of a chip. Again like it or not the ONLY REASON that that Nvidia or AMD have to keep releasing new drivers for old hardware in Linux is because you simply can't use the old drivers with new kernels or the whole thing falls down.
So I don't see how the community has any right to complain about AMD, you got exactly what you asked for, all the specs opened and handed to you on a silver platter. AMD simply has a hell of a lot more on its plate than just graphics so continuing to support 4+ year old chips on an OS with maybe 5% market tops is simply a waste of resources. if you want to complain pitch a fit at Torvalds for making driver support such a damned mess, even one of the big Red hat developers says the current way of doing things simply isn't sustainable, that a single group can't control 20,000 packages and drivers and keep it working, and recommends an ABI and a much more stripped down design that allows you to concentrate on the core while letting those that sell the hardware provide drivers. I wonder how much money Nvidia has blown keeping a team of devs around to do nothing but constantly update the Linux drivers when Torvalds constantly breaks the damned drivers with kernel fiddling? bet it isn't cheap, not cheap at all.
If handing you the full specs like you asked for STILL isn't enough? Maybe its time to look in the mirror and consider that maybe, just maybe, you're doing things the wrong way. There should be no damned reason why you can't take the last release that AMD made for that HD3200 and have it run perfectly on the latest distro and the fact that you stand here and admit that it doesn't work just shows what is wrong with linux in a nutshell. After all how do you expect the smaller hardware guys to support you if the big guys have to pay entire teams to constantly fix the damned things just to make the drivers work?
ACs don't waste your time replying, your posts are never seen by me.
Torvald's is carrying out the unproductive one.
Your so-called productive approach has been entirely unproductive for more than a decade. It is way past time to say "fuck you".
Finally! A year of moderation! Ready for 2019?
There was all this chatter about how if the GPU companies would just open up, legions of extremely smart programmers would make grad-A OSS drivers, better than the Windows counterparts!
So AMD does and... Nothing. We have a broke ass, "sorta works" OSS driver. Apparently the legions of programmers are either busy playing WoW or maybe, just maybe, writing a graphics driver for a modern card is way harder than people give it credit.
I think part of the problem is you get people who've written something like a NIC driver and say "Oh this driver writing isn't bad." The problem is most hardware is peanuts compared to a GPU. They are just amazingly complex. You can see it in driver sizes. A NIC or RAID driver will generally be 100ish kbytes, sometimes less. On my system, the primary WDDM nVidia driver file is 20MB, and it won't even work completely with that alone. It's driver to support OpenGL is another 25MB, another 10MB for D3D10/11 components, 7MB for CUDA, and so on, never mind support stuff like the control panel.
Basically it is a really complex problem, and of course each new version of the graphics hardware brings in a new setup to deal with. So it isn't so easy to bash out a high quality driver for graphics cards.
Thus the OSS AMD drivers really aren't any good, despite AMD playing nice. The community has not managed to produce some amazing driver that is fast, stable, feature complete, that makes Windows people say "Man I wish I had that." Had that happened, I'd be more inclined to say "Get with it nVidia." However as it stands, nVidia is able to produce a Linux driver that is in every way as good as their Windows driver, and that is damn good. Given that, I'd say they are doing it right.
Been saying that for years. ATI/AMD did what the community wanted and guess what the community found out? Writing good graphics drivers is really freaking hard.
I also agree that an ABI is not badly needed. Even if you are going to produce your own FOSS drivers and an ABI is a big help.
The current FOSS solution makes a good enduser experience really hit or miss for a desktop user.
1 Write a driver for your hardware as FOSS.
2 submit it to the Kernel.
3 wait for it to get put into the Kernel.
4 Hope that the big distros adopt that Kernel soon.
Then end user can not tell if the this or that device is supported half the time without knowing what freaking chipset it uses.
If you have a binary driver interface then you can stick a driver in the box and say "Supports Linux 4.xx" and it should be just fine
See my blog http://ilovecookes.blogspot.com/ for light hearted technical information.
Name another major chip vendor who hasn't figured out that getting into the Linux kernel is a required checkoff for market success.
So, what you're saying is, NVidia isn't a market success? Strange, it appears the market disagrees with you.
Just because you're paranoid doesn't mean there isn't an invisible demon about to eat your face
Apple might work with nVidia to release a driver through Apple's distribution channel but nVidia releases them separately
Well, there's spam egg sausage and spam, that's not got much spam in it.
The problem is simple: You are asking me to code something I could get paid a LOT of money to work on, for free with nothing gained from the time and effort spent away from my family... outside of my work. People like myself who could be doing this sort of work exist and we are freely available at a good market rate, but we would rather be making money than donating our time and effort to something we do not see as practical, efficient, or worthwhile. Open source is great for simple things, or if somebody is just learning, or if you are really skilled, really bored, and motivated by your education (Like Linux itself was started on as a school project, right?).. but if you are like most people working on something that technical for no money is a waste of time and energy as the people who can make it career already have, and I for one do not want to be the guy who pressures somebody else that I respect to step aside so I can be "them" in the OSS community. I respect the upper tier of open source - the Linus's, Alan's, etc, of the world - too much to be that much of a jerk. Its also not practical. Worse, as things advance the driver will be surpassed or just not work on a chipset.. and then you will have people like Linus belittling the effort you made into it. Nobody wants to be belittled for working on something nobody else wants or has the skills to do. Or you could just get sued for violating an nda, or if you didn't, for researching things and learning its secrets on your own. If you are not going to make yourself a target, why should you expect others to? I love open source; But its reasons like this that it has so many gaps and parts of it outright sucks.
- d
What I know is when nvidia came out, I was seeing thousands of posts from people desperately seeking answers on how to get them to work,
The first time I ever used linux semi-seriously was in a computer class in like 2004. During downtime, since the comps had nvidia cards, I wanted to play Unreal Tournament, so i decided to install the drivers. The steps: .\driverinstaller
1)Go to nVidia.com, and download the driver installer.
2) run
3) play unreal tournament.
Ever since then I have periodically gone back to Linux, each time with an nVidia card, and each time the process was the exact same. Download the installer (helpfully linked here!), run the installer, reboot.
Ubuntu (and I imagine other distros) has for the longest time also had the nvidia drivers in its repos, so you can install it from there even easier ("apt-get install nvidia-drivers-binary" or whatever) and not have to worry about kernel upgrades.
Its not that hard, and it basically has never been that hard (at least for the last decade).
What I know is when nvidia came out, I was seeing thousands of posts from people desperately seeking answers on how to get them to work, and thousands more on how to make their X Window survive upgrades
Synaptic is basically a front-end for apt, and I imagine synaptic's other-distro brothers are similar in that regard. If an upgrade like that is breaking things, the package itself might be broken. Regardless, IIRC the driver is a kernel module and shouldnt be broken by just an X upgrade, though kernel upgrades do have the potential to cause issues if you DONT use a package manager.
I'm going to give Torvalds the benefit of the doubt and assume he might have overlooked this on the mailing list: http://www.phoronix.com/scan.php?page=news_item&px=MTA0ODE but NVIDIA proposed a very reasonable solution to the Optimus on Linux problem, and everyone just started arguing that it needed to be more Stallmanesque. Sitting there demanding that NVIDIA open up[ their source code is silly.
Actually it costs them more to develop their own binary drivers in house, than it would to open source them and allow third parties (including the kernel devs) to take up some of the slack...
No, it wouldn't and even AMD agrees on this. Between licensed code, patents, DRM and a host of other reasons an OSS driver could not fulfill their customers' requirements on Windows. That is to say OEMs who have obligations to Microsoft who have obligations to the MAFIAA, not you. Not to mention the FPS junkies would probably not enjoy the performance hit because the third party IP would have to be ripped out.
Effectively you can either share closed cross-OS code like the Catalyst/nVidia driver does, or you can share open source code with the rest of the Linux community. Those two options are mutually exclusive, and no the those few bits you get from the community are no replacement for the 90-95% "free" cross-OS work the closed driver gives them. What you say is only true if you could flip the switch from "closed" to "open" and have everything you had before plus some more free work.
In a technical, nerdy sense you of course could do that since code doesn't magically break or become useless by publishing it. But legally that is impossible, they'd get sued to hell and their permissions to play any kind of DRM'd media would go away and with it any rights to be in a "designed for Windows $foo" sticker machine. How bad is that? Well, I'll let Bridgman that handles the open source OSS driver answer that, this isn't an official statement or anything just a forum post but:
If the worst case was as minor as not being able to release any more specs we wouldn't be worrying so much. The kind of risks we are worrying about are much larger, ie things which would either kill or cripple our graphics business.
Worst case is that we lose the ability to sell our products into the Windows market as a result of releasing info which results in our DRM implementation no longer being considered sufficiently robust. Without the Windows market (which is >90 % of our revenues) we would, for all practical purposes, cease to exist as a GPU manufacturer, especially since we would probably lose the Mac market at the same time.
Next worst case is that we find a way to continue shipping into the Windows market but get sued under one or more of the DRM-related agreements we have signed. These all have high dollar-value penalties, again enough to significantly impact our ability to continue operating.
There are a bunch of smaller risks but we spend proportionally less time worrying about them. What makes all this complicated is that we have to consider not just the information we release but the information which is likely to be reverse-engineered and published. Each time we release information we simply raise the bar for where reverse engineering starts, and it's the combination of released plus "likely to be reverse-engineered" info that we need to consider.
If we tripped any of these risks then the impact would not only affect the GPUs we are shipping today but anything we have in the pipe. Best guess is that we would lose the next generation (ie the one after 7xx) and see significant delays in the one after that.
Since we don't want that to happen (right ?) the alternative is to trim back the information we release until it appears safe, going through the review process each time until we find an appropriate level.
That's the consequences of open sourcing the binary driver, could it get much clearer?
Live today, because you never know what tomorrow brings
No, it's totally unfair. Have you ever shopped for a graphic card recently, with the goal to put that in your Linux box? There's currently only 2 choices: Nvidia or ATI. Both have totally horrible drivers in Linux, because the chip makers aren't being COOPERATIVE. That is, just not giving enough so that someone can make a decent driver. The problem isn't that Nvidia isn't helping, the problem is that they aren't helping AND we have no other choice.
Well if you hate all powerful graphics cards, use Intel onboard something. Especially if you hate gaming shit.
If you want graphics performance (3D) you will need either ATI or NVIDIA. NVIDIA works well under Linux for more than a decade now. The provide drivers for all their hardware, which are definitely superior to any free driver I have tested so far. They also incorporate most of the interesting recent features of the Linux Kernel, like power saving, suspend etc. And in contrast to ATI they support pretty much the same features on Linux as on Windows, within a reasonable time frame. (AFAIR build from similar sources)
They wouldn't need to do this, >90% of the PC-Gamers market still runs Windows. But they do and I don't see much point of complaining.
It is totally their decision, whether they want to release their IP about how to program the graphics pipeline.
If that's the case, then you probably heard about UEFI secure boot? You know, that thing where everything, including the kernel AND the kernel drivers will have to be signed?
I swear, kids should learn history, because they keep coming back with the same old bad shit over and over again until a clueless generation accepts it. Back in the late '80s there was a boycott against copy protection, and companies dropped it -- for a decade or so, when it was reborn as DRM, and you kids pretty much accepted it.
Ten years ago they had Palladium and we users squashed it like a bug. Now MS is trying to do the same goddamned thing all over, and you kids aren't complaining nearly loud enough.
Wake up, you're being oppressed. Fight back.
Free Martian Whores!
AMD has comitted in trying to improve the whole process for open sourcing future generatino of graphic cards. Anything which wasn't in the pipeline until after AMD started to help open sourcing the drivers is more and more being designed with collaboration with open source in mind, so there is going to be less ping-pong between lawyers and designers before specs can be released.
Also the process of releasing specs and helping the OSS drivers is also becoming more streamlined.
All this mean that the delay between the release of new hardware and new OSS support is getting shorter. AMD has been reported hoping that HD 9000 and beyond could get same day Linux support (as is already the case with Intel hardware, for example).
Now what we also need is more workforce to similarly bring up to date the generic part of the stack (the OpenGL state trackers, etc). As AMD is having paid developpers for Linux and Intel is shifting toward Gallium (and even non-graphics companies like Google are getting interested - because of their netbook OS), that could bring also faster support for newer standards and the gap between OpenGL standards and Linux support could close over the next few years.
(Look at the situation with OpenCL: this standard was released more recently and with all the current expertise in writting drivers, OpenCL support got added rather quickly and is not lagging too much behind the published standards, although OpenCL isn't that much important for graphics - where most of the developing energy goes).
So, okay, maybe today, development is still partially hindered by bad documentation and necessary legal department clearances, but the process is getting slowly better. In a few year, AMD could probably offer acceptable opensource support out of the box.
"Sufficiently advanced satire is indistinguishable from reality." - [Tips: 1DrYakQDKCQ6y52z6QbnkxHXAocMZJE61o ]