Beta

Slashdot: News for Nerds

×

Welcome to the Slashdot Beta site -- learn more here. Use the link in the footer or click here to return to the Classic version of Slashdot.

Thank you!

Before you choose to head back to the Classic look of the site, we'd appreciate it if you share your thoughts on the Beta; your feedback is what drives our ongoing development.

Beta is different and we value you taking the time to try it out. Please take a look at the changes we've made in Beta and  learn more about it. Thanks for reading, and for making the site better!

The SLI Godfather

ScuttleMonkey posted more than 8 years ago | from the insightful-or-just-bitterly-dissapointed dept.

86

CaptCanuk writes "Phoronix has an insightful article about the motivation behind Nvidia's alternative operating system support. From the article: 'When it comes time for a user to upgrade their computer hardware, and decide to go with a choice from a leading manufacturer of graphics solutions, software support is a given, correct? Wrong.' Read on to find out what truly funds their development and why some think they treat Linux as a second hand citizen."

cancel ×

86 comments

This should be on the front page (5, Insightful)

BadAnalogyGuy (945258) | more than 8 years ago | (#14997332)

This sort of thing should be common knowledge to every single person interested in computers. This is how everything works in the "real world" or software development. It boils down to following the money and who needs something the most.

If Microsoft didn't have such a significant segment of the PC market, they would also have to make deals with hardware manufacturers to get drivers written. NVIDIA needs to support Microsoft, so NVIDIA foots the bill with tons of help from MS. HP needed NVIDIA support, so HP was the one who ended up paying for the development.

It's not about conspiracies, it's about money and the need to have a hand in a market segment. If Linux owned a significant percentage of PCs, you'd see NVIDIA tripping over themselves to get a driver written (if it weren't a trade secret risk).

Ballmer needs to stomp his feet and party's over! (4, Insightful)

Dr. Spork (142693) | more than 8 years ago | (#14998453)

What I learned from TFA is that even mediocre graphics driver support for Linux is hanging by a thread. There are the occasional fortunate (and according to TFA, tenuous) corporate allignments, like HP's funding of NVidia's Linux driver development. Thank you HP! But NVidia themselves come off looking rather indifferent about the Linux drivers issue.

They're in it for the money, and their real customer base consists of Windows gamers. Now, these customers are rather picky about stable and optimized drivers. They read articles about benchmarks, and a driver that squeezes out an extra 5pfs will in many cases make the difference between $300 of revenue or similar money in the pockets of the competitor. That's why NVidia work hard on Windows. It's their lifeline.

We're living in an age when Microsoft doesn't fear Linux on the desktop. They just don't; they think it's a joke. Suppose something happens to change their mind, and they really start competing in their ham-fisted, machiavellian way. They really only need to do one thing to destroy desktop Linux: Make a phone call to NVidia. Ballmer: "Hey, you know all that work you do on Linux drivers that makes you almost no revenue? Well, stop it. Stop it or you will find some rather unfriendly code in Vista sp1. End communication."

That's all it would take. Remember that starting next year, if you don't have a 3D-accelerated desktop, your machine will look like a dinosaur. So never mind Linux games. Just the regular desktop will look and work like crap without the proper GPU acceleration. And proper GPU acceleration on Linux is impossible without the mercy of GPU manufacturers. This is really the greatest Achilles' heel of OSS. Just one phone call by Ballmer (maybe involving a thrown chair) is enough to cut off the air supply of OSS on the desktop. There is no remedy. Linus was writing code for a chip (386) with documented internals. He did a great job. GPU manufacturers won't document the internals, they keep changing anyway, and trying to reverse-engineer something is probably banned by the DMCA.

This is the grim lesson I leaned from TFA.

Re:Ballmer needs to stomp his feet and party's ove (1)

TheGavster (774657) | more than 8 years ago | (#14998708)

Just the regular desktop will look like crap without the proper GPU acceleration.

A non-accelerated desktop may not have the flash of these flashy new 3D setups, but I am dubious as to the functional improvement gained with 3D acceleration.

Re:Ballmer needs to stomp his feet and party's ove (1)

ichigo 2.0 (900288) | more than 8 years ago | (#14998942)

I'd say that mostly depends on the implementation. The Apple/Microsoft approach with flashy desktops isn't necessarily the best approach, but it is an easy way to make it look new. It's also important to note, that GPU acceleration doesn't have to be used on displaying the desktop, other uses could include encoding/decoding video for example.

Re:Ballmer needs to stomp his feet and party's ove (1)

sethstorm (512897) | more than 8 years ago | (#14999070)

There is no remedy.
It's called heavy handed regulation.

Re:Ballmer needs to stomp his feet and party's ove (1)

GreyWolf3000 (468618) | more than 8 years ago | (#15004014)

It's called heavy handed regulation.

I have another one: it's called an educated consumer base. If we don't educate consumers, then they (being the majority) won't give a rip about whether or not MS is screwing Linux over. In which case, such regulation could not be acheived through popular consensus.

A lot of people out there get sold on the "corporations are evil, hence we need lots of regulation" mantra, and to me it's just silly. Consumers can fight evil just as effectively as the government which represents those consumers. And if the people all decided that MS screwing over Linux was wrong, they'd sure as hell wouldn't need the government to put an end to it. They could simply stop buying MS products to begin with.

Liberal economic policy tends to divide the populace into the 5% of people smart enough to decide what's best for the other 95%. Which is exactly what I hate about neocons as well, only for them it's richeousness, not intelligence. Arrogance hiding inside a shroud of "do-gooderness."

Re:Ballmer needs to stomp his feet and party's ove (2, Insightful)

Anonymous Coward | more than 8 years ago | (#14999426)

Ballmer: "Hey, you know all that work you do on Linux drivers that makes you almost no revenue? Well, stop it. Stop it or you will find some rather unfriendly code in Vista sp1. End communication."

And it takes just one nVidia employee to spill the beans, and Microsoft finds itself in some rather hot water. I'm not saying that MS wouldn't do such a thing, but they would want to think very long and hard about the approach they take; something that ham fisted would be prima facie evidence of monopoly abuse.

All we would need then is somebody in the US government with the backbone to take such a charge and make it stick. Oh. Never mind.

Re:Ballmer needs to stomp his feet and party's ove (1)

ickleberry (864871) | more than 8 years ago | (#14999518)

TFA only really talks about SLi drivers, something which most linux desktop users don't need and dont want since they are not hard-core gaming nerds who need the extra 5 fps. Since there are about 25 million linux users out there it is well worth it for them to write a linux driver for their ordinary graphics cards. I remember tons of people bitching in forums about the lack of ATI drivers for linux, i'm sure the amount of people who bought a nVidia card over a ATI because they are known to work on linux will pay for the "poor" engineer who had to write them.

Re:Ballmer needs to stomp his feet and party's ove (1)

DeadChobi (740395) | more than 8 years ago | (#15004553)

That's actually a violation of antitrust laws here in America. If Microsoft really did that and nVidia had proof of it, nVidia could submit that proof to the Attorney General's office and Microsoft would be facing one fat lawsuit. There would be no escaping this one either, as recording a threat like that is proof that Microsoft is engaging in anti-competitive business practices. So I'm thinking that nVidia has little to worry about. Just forward a threatening email to some powerful people and Microsoft is stuck fighting a court battle. If Microsoft tried to weasel out of the lawsuit by secretly implementing code that made it harder to develop video card drivers, and it was determined that they were specifically targeting nVidia, they'd get raped a bit harder. Too bad anti-trust trials are only civil proceedings.

Re:Ballmer needs to stomp his feet and party's ove (1)

Dr. Spork (142693) | more than 8 years ago | (#15006625)

Your response assumes that NVidia want a war with Microsoft... over the issue of Linux drivers. You must be living in dreamland. If you read the article, you'd see that NVidia are really not very enthusiastic about writing Linux drivers in the first place. They don't seem to need much of an excuse to bow out.

I mean, come on, use your immagination: I was being blunt for the sake of humor. The real email from Ballmer would look like "MS and NV would both profit from a closer software collaboration to optimize Windows driver performance." Sounds a lot more innocent, means the very same thing. NVidia aren't stupid, they understand subtext like anyone else.

You really think NVidia would take MS to court over a threat about a market segment which makes them little, no, or perhaps even negative profit?

Re:Ballmer needs to stomp his feet and party's ove (1)

sznupi (719324) | more than 8 years ago | (#15005702)

There will still be solutions with OSS drivers...yeah, not many of them (out of currently sold: only Intel AFAIK, and somehow Matrox if you count, still sold, G550...but lets be serious), but still something...

Another topic (-1, Redundant)

FST (766202) | more than 8 years ago | (#14997354)

In addition to the various things mentioned in the article, I feel that another topic for pondering is the possibility that SLI may, or may not, ever see the official light of day under FreeBSD. While NVIDIA's code is similar between Linux/Solaris/FreeBSD, there seems to be no corporate customer at this point -- or even the appropriate lobbying for a free port. It is over three months since Linux and Solaris SLI have co-existed and to this point we have heard no official word from NVIDIA representatives in regards to this matter. Inside the FreeBSD i386 user's manual, the same SLI page as what was found in the Linux and Solaris manuals can be found, but this support has yet to be mentioned in their official release notes.

Re:Another topic (0)

Anonymous Coward | more than 8 years ago | (#14997387)

You just ripped that paragraph directly from TFA.

Re:Another topic (1)

thc69 (98798) | more than 8 years ago | (#14997459)

It should be modded "troll", then, as he was trolling for mods who don't read TFA.

Re:Another topic (3, Interesting)

Homology (639438) | more than 8 years ago | (#14997450)

In addition to the various things mentioned in the article, I feel that another topic for pondering is the possibility that SLI may, or may not, ever see the official light of day under FreeBSD. While NVIDIA's code is similar between Linux/Solaris/FreeBSD, there seems to be no corporate customer at this point -- or even the appropriate lobbying for a free port.

Here you see what happens when only binary blobs are available. At some stage even your old hardware will stop working because the manufacturer will not provide updated binary blobs drivers.

NVIDIA is anti-open source. They will happily peddle some binary blobs for some archs (i386) and some OS, but refuse to give any hardware documentation or even tell the name of their various chipsets.

As long as the Linux/FreeBSD crowd accepts binary blobs in order to get their hardware to work, then NVIDIA will happily continue to only handout binary blobs.

Have a look at the FreeBSD nve (NVIDIA nForce MCP Networking Adapter device driver) [freebsd.org] driver:

This driver is a reimplementation of the NVIDIA supported Linux nvnet
driver and uses the same closed source API library to access the underly-
ing hardware. There is currently no programming documentation available
for this device, and therefore little is known about the internal archi-
tecture of the MAC engine itself.

And this is just a NIC? What's so secret about that? And this is acceptable?

Have a look at what OpenBSD does: Reverse engineer and offer the first open source driver nfe (NVIDIA nForce MCP Ethernet driver) [openbsd.org]

[/rant]

Re:Another topic (1)

tomstdenis (446163) | more than 8 years ago | (#14997614)

Um... Linux has sported a "forcedeth" [sp] network driver for a long time. It may be based on the BSD driver, I dunno the back story.

I'm personally using it right now on a Tyan 2P motherboard [nForce4 Pro chipset] and it works fine.

Tom

Re:Another topic (0)

Anonymous Coward | more than 8 years ago | (#14997776)

The forcedeth driver has been problematic for me. The transfer hangs and only a cold power cycle brings the interface back up.

Re:Another topic (1)

level_headed_midwest (888889) | more than 8 years ago | (#14999475)

Me too. I am running a brand-new ABIT KN8 board and the NIC would just blink on and off after about 12 hours' use with the forcedeth driver. Shutting down the computer did not stop it from blinking- only switching off the pSU did. The nvnet driver is rock-solid, though.

Re:Another topic (1)

tomstdenis (446163) | more than 8 years ago | (#15000711)

most likely it's a chipset problem. A few K8N4 boards I've seen choke on gigabit. It should work fine for 100mbit though [which is what I use mine for]. My Tyan board has been working fine at 100mbit ever since I turned it on a week and a bit ago.

If you really need gigabit use the DLINK 530-T PCI card. It's supported by the skge/sk98lin set of drivers [can't recall which] and works smoothly at gigabit speeds. The card retails for all of $30 Canadian.

Tom

Re:Another topic (4, Insightful)

edwdig (47888) | more than 8 years ago | (#14998101)

Here you see what happens when only binary blobs are available. At some stage even your old hardware will stop working because the manufacturer will not provide updated binary blobs drivers.

This is what happens when your kernel developers refuse to provide a stable driver API.

Yes, it would be better if drivers were open, but it wouldn't be nearly as much of an issue if Linux provided a stable driver API. It'd make everyone's lives easier if the APIs were more stable. People who won't release an open driver for whatever reason would at least be more likely to develop closed drivers, users already using closed drivers would have less issues going forward, and people writing drivers would no longer have to worry about hitting a constantly moving target.

Re:Another topic (1)

foxxer (630632) | more than 8 years ago | (#14998409)

Exactly! The argument against a stable binary driver interface makes me want to start killing open source hippies left and right.

Stable API only helps out of tree drivers (2, Insightful)

Sits (117492) | more than 8 years ago | (#14998496)

It can be argued that fixed APIs will hurt the kernel itself as the amount of glue code to keep old things poking at the internals rises along with the need to never change things causes unintended side effects.

I was chatting to Linux kernel developer about a year ago and he described how in the early 90s he found a remote security hole in a closed source operating system. He let the vendor know but the vendor did not patch the hole for over a year. To fix the hole the vendor had to change the API (which of course was set in stone) which would break all sorts of other things so the problem sat around unfixed until the next major release of the operating system.

The number one reason for running an out of tree driver on Linux is because it is a binary driver. And there are Linux developers who don't want to help binary driver developers [kroah.com] . The prerogative is with the Linux devs - it's their kernel and perhaps it is those very open drivers that are keep said developers working on it. Secretly, I think you need the resources of Microsoft to produce APIs that don't change for years on end and support a large range of software but I'm told the NetBSD folks do this too. Why don't people simply use NetBSD rather than complaining?

out-of-tree drivers suck (2, Informative)

r00t (33219) | more than 8 years ago | (#14998646)

I deal with 3 or 4, depending on how you count. They piss me off! I waste so much time screwing around with these drivers. They are always breaking when I upgrade the kernel, and they make it near-impossible to get support or debug things myself. They also prevent me from making a non-moduler kernel, which is a tad faster and much easier to manage.

  • NVidia's crap. IMHO, fancy video and 3d is for wankers, but I need this driver because my messed-up BIOS gets the LCD resolution wrong. The NVidia driver ignores the BIOS, while the free driver obeys the bogus info.
  • VMWare's crap. This is 2 drivers, neither of which I have working. In this case I want to use a Fedora Core 4 kernel which was compiled with gcc 4.0, but I upgraded my compiler to gcc 4.1 already. It seems that only Debian supports installing more than one compiler, so I'm screwed until I do something really non-standard.
  • Digium's crap. Digium's drivers for Asterisk are actually GPL, but too defective to be accepted into the kernel. Of course, the claim is that "development happens too fast", which is total bullshit to anybody who knows anything about the Linux development process.

Re:out-of-tree drivers suck (0)

Anonymous Coward | more than 8 years ago | (#14998976)

NVidia's crap. IMHO, fancy video and 3d is for wankers, but I need this driver because my messed-up BIOS gets the LCD resolution wrong. The NVidia driver ignores the BIOS, while the free driver obeys the bogus info.

Get an ATI card and use the free software drivers.

VMWare's crap. This is 2 drivers, neither of which I have working. In this case I want to use a Fedora Core 4 kernel which was compiled with gcc 4.0, but I upgraded my compiler to gcc 4.1 already. It seems that only Debian supports installing more than one compiler, so I'm screwed until I do something really non-standard.

Use kqemu [bellard.free.fr]

Digium's crap. Digium's drivers for Asterisk are actually GPL, but too defective to be accepted into the kernel. Of course, the claim is that "development happens too fast", which is total bullshit to anybody who knows anything about the Linux development process.

The code is there, send patches and stop whining.

Re:out-of-tree drivers suck (1)

r00t (33219) | more than 8 years ago | (#15000331)

I happen to have an NVidia card at work. I didn't choose it. I have to live with it. Also, why should I believe that the free ATI drivers are any "better" than the free NVidia drivers? ("better" is debatable; no driver should ignore the BIOS but no BIOS should be giving wrong info)

The kqemu page you linked to says this about the driver: "unlike the rest of QEMU it is a closed source proprietary product". That is no different than VMWare.

I have indeed considered submitting Digium's drivers for kernel inclusion. The kernel developers strongly frown upon this. It is expected that you submit your own work, directly or via a subsystem maintainer. The driver would probably be rejected on that reason alone, never minding the crappy code itself. Doing things right requires a rewrite of the driver, including a different interface to user apps, which would thus mean a rewrite of Asterisk as well. No thanks.

Re:Another topic (2, Insightful)

swillden (191260) | more than 8 years ago | (#14998547)

People who won't release an open driver for whatever reason would at least be more likely to develop closed drivers, users already using closed drivers would have less issues going forward, and people writing drivers would no longer have to worry about hitting a constantly moving target.

So fork Linux and create a version with an API that promises to be stable, backporting improvements from Linus' version.

I'm actually not suggesting that you, personally, do this, just pointing out that someone could and if it were that valuable, someone probably would. Red Hat, IBM, Novell and others have the resources to provide Linux kernels with a stable driver API, but they obviously don't feel it's worth the effort, and buy into Linus' position that it would cost Linux more than it would gain Linux.

It's a tradeoff, and the concensus decision is that flexibility, ease of debugging and the ability to keep the APIs clean are more important than enabling closed-source drivers. Keep in mind that the core team of Linux developers, headed by Linus, aren't really open source fanatics. Their motivation for not helping closed-source drivers isn't because they have an RMS-like abhorrence of closed source, but because it makes their jobs much harder in real, pragmatic ways. It's not that they discourage closed drivers in order to force companies to provide open drivers, but that they don't want closed drivers to hobble and destabilize Linux.

Re:Another topic (1)

SanityInAnarchy (655584) | more than 8 years ago | (#15001232)

This is what happens when your kernel developers refuse to provide a stable driver API.

Wait, what is what happens? Mod parent -1 offtopic if this isn't about Nvidia's drivers.

Nvidia keeps pace with x86 Linux, often better than I do. I haven't had a problem with video drivers since one computer and two video cards ago, when I had an ATI card. I just have to remember to recompile/install the nvidia drivers whenever I compile/install a new kernel, and I'm set.

This was not true once, and after fighting with it for a day, I updated my system and found new nvidia drivers. Less than a day and they'd fixed the problem. Now, they're typically ahead by a bit -- release candidates will work fine. Either the 2.6 kernel has been relatively stable, or nvidia's been doing an excellent job supporting it.

And I run a 64-bit Linux. On a Reiser4 filesystem, not that it matters much. Nvidia's drivers worked out of the box, tested with quake3, doom3, and quake4.

So the problem is not the driver API or the lack of source code / specs, but the unwillingness of the driver maintainers (in this case nvidia) to keep the driver up to date with the capabilities of the hardware.

Was OpenBSD really first with OSS nvidia ethernet? (2, Informative)

Sits (117492) | more than 8 years ago | (#14998424)

Look I'm an OpenBSD fan but even I'm a little unsure on this one... The Linux folks reverse engineered the Nvidia ethernet driver in forcedeth [kerneltrap.org] and in fact forcedeth was helpful in the creation of nfe [undeadly.org] .

Are you sure that you want to claim that OpenBSD had "the first [nforce ethernet] open source driver" (emphasis is mine)? Can you give some links to back this claim up? I haven't found any yet but then again I don't hang out on the OpenBSD lists all that much...

Re:Was OpenBSD really first with OSS nvidia ethern (1)

Homology (639438) | more than 8 years ago | (#14998457)

I was wrong about OpenBSD beeing first out.

Driver support (3, Insightful)

ubersonic (943362) | more than 8 years ago | (#14997392)

Most people I know choose hardware based on the fact that they MIGHT at some point run Linux on them.
Even if they are never going to use Linux, they still get an NVIDIA instead of an ATI card, just because NVIDIA provides the better drivers.

None of them provider good OS drivers tho :(

Re:Driver support (0)

Anonymous Coward | more than 8 years ago | (#14997645)

You are a statistical outlier. Most people you know may have Linux ambitions, but most of everyone else doesn't.

Re:Driver support (5, Informative)

ubersonic (943362) | more than 8 years ago | (#14997774)

> You are a statistical outlier. Most people you know may have Linux ambitions, but most of everyone else doesn't.

Maybe where you live, but here in germany Linux is a lot more mainstream.

Re:Driver support (-1, Troll)

Anonymous Coward | more than 8 years ago | (#14998297)

lol, so it's on 3% of computers instead of 1%? nice job, idiot.

Re:Driver support (0)

Anonymous Coward | more than 8 years ago | (#14998265)

NVIDIA has never supported OS drivers at all! Try using basic 2D features like Xv acceleration with the nv driver on modern NVIDIA hardware. Tough luck. Happen to run less mainstream software like FreeBSD for amd64? You can keep waiting for the proprietary drivers nvidia promised months ago! Most people I know who leave the obsolete ia-32 world behind and join FreeBSD/amd64 have to resort to Ati hardware to get basic functionality. When NVIDIA first released the FreeBSD drivers I thought it was pretty cool. Later we learned it was a marketting ploy and no real insterest in supporting the FreeBSD community. Screw them, two times. All my FreeBSD boxen have Ati hardware.

The only reason NV supports Linux.... (4, Interesting)

otis wildflower (4889) | more than 8 years ago | (#14997399)

.... Is 'cuz of folks doing workstation graphics (like CGI, visualization, modeling, etc). The more folks move to Linux from SGI, Solaris, etc, the more attention Linux drivers will get. The fact that the chipsets are similar enough for consumer-grade graphics boards to be supported is a nice plus, but I very much doubt the Linux gaming community plays much more of a role than that of testers and bugreporters.

How is this article insightful? (4, Insightful)

bernywork (57298) | more than 8 years ago | (#14997432)

I ask you, it's a complete opinion piece, there is no fact in there whatsoever from what I have seen. The only thing that is based in fact is that HP have a certain workstation line, and that they install RHEL on them and that HP is short for Hewlett Packard. I think the people that have these workstations would probably be reformatting them with a standard build anyway.

I don't doubt that some of it might be true, but at the same time, I don't see anything in here that really makes me turn around and go "Wow, HP paid xxxxxxxx for NVidia to write Linux drivers"

From what I have seen previously, the reason that NVidia make the driver available is because it's an easy port. That's why their IP is worth so much. Admittedly this isn't backed up with fact (Or at least a link to a website) either, but a quick google should see you good, right?

*sigh*

I disagree (but you're right) (4, Insightful)

BadAnalogyGuy (945258) | more than 8 years ago | (#14997448)

The article itself isn't very insightful, and FWIW, it's pretty badly written. "abecedarian"? How about learning to walk before trying to fly?

Anyway, I disagree. While the authors do not prove any of the points they are making, it is very much standard industry practice for one company to pay another to develop software. If HP needs Linux drivers for their latest CGI-oriented workstations, then they will need to pay NVidia to develop them. If NVidia really needed those Linux drivers, it would have been their first priority to develop and ship them with the release of the HW.

There really isn't a conspiracy to keep drivers out of FreeBSD or Linux or whatever niche OS you're running. The only question is who is going to pay for those drivers. If you need it the most, you will pay for it. NVidia *needs* Windows drivers, so they pay for it themselves. Try getting NVidia to release drivers for Symbian. It's never going to happen without a wad of cash.

Re:I disagree (but you're right) (1)

Homology (639438) | more than 8 years ago | (#14997469)

There really isn't a conspiracy to keep drivers out of FreeBSD or Linux or whatever niche OS you're running. The only question is who is going to pay for those drivers. If you need it the most, you will pay for it. NVidia *needs* Windows drivers, so they pay for it themselves. Try getting NVidia to release drivers for Symbian. It's never going to happen without a wad of cash.

NVidia does not even release any hardware documentation for any of their many chipsets. So any open source driver for NVidia hardware has to be reverse engineered, but the Linux crowd seems to prefer binary blobs.

Re:I disagree (but you're right) (1)

BadAnalogyGuy (945258) | more than 8 years ago | (#14997498)

That's a red herring. Just because the Linux culture encourages the release of hardware specs, it does not follow that any hardware maker must release those specs. Maybe if they were required by law, but otherwise beggars can't be choosers.

NVidia will provide drivers for the right price. Maybe a lot more for source code too. Maybe never if the requirement is that the drivers be licensed under a so-called Free license. But there is no reason to expect that every hardware manufacturer is going to bend over backwards for a niche OS.

Re:I disagree (but you're right) (1)

Homology (639438) | more than 8 years ago | (#14997532)

That's a red herring. Just because the Linux culture encourages the release of hardware specs, it does not follow that any hardware maker must release those specs.

So why does not Linux developers support OpenBSD efforts to get hardware docs? The Linux culture, sadly, seems to be to accept documentation under NDA (for instance, UltraSparc III support) and write obfuscated "open source" drivers, or think the binary blobs are fine.

NVidia will provide drivers for the right price. Maybe a lot more for source code too. Maybe never if the requirement is that the drivers be licensed under a so-called Free license. But there is no reason to expect that every hardware manufacturer is going to bend over backwards for a niche OS.

We're asking for hardware documentation, not binary blobs.

Re:I disagree (but you're right) (1)

BadAnalogyGuy (945258) | more than 8 years ago | (#14997547)

And you won't get them until the technology is out of date or NVidia decides to go whole hog on the FOSS thing. Some companies just won't release this stuff without very restrictive licenses. I have a desk strewn with hardware documentation that is watermarked with CONFIDENTIAL. Want to know how I get them? We partnered with those companies (or gained access as subcontractor to partners of those companies) and agreed to not share the information with other people.

That's the agreement we had to come to in order to get access to these documents. It is very difficult, if not impossible, to get a company who is unwilling to release anything unless it is covered by NDA to release something not only uncovered by NDA but in fact essentially wide open to the world.

Re:I disagree (but you're right) (4, Insightful)

Homology (639438) | more than 8 years ago | (#14997573)

The sad thing that NDA/binaryblobs acceptance seems to be representative of the "Linux culture". One day we are going to wake to the fact we cannot run Linux without binary blobs, even for basic hardware like a NIC. The NVIDIA binary blobs for the nForce MCP Networking Adapter is an example of this trend.

Re:I disagree (but you're right) (1)

tomstdenis (446163) | more than 8 years ago | (#14997605)

I dunno about you but I shop for devices that work in Linux natively. Like sk98/skge network cards, cmipci sound cards, etc.

If you just stopped buying the "Best Buy" special variety of addon devices the market wouldn't think it's ok to box up mediocrity.

Tom

Re:I disagree (but you're right) (1)

The Warlock (701535) | more than 8 years ago | (#15010682)

What 3D graphics card are you using? The nVidia one that requires closed-source drivers, or the ATi one that requires closed-source drivers?

Re:I disagree (but you're right) (0)

Anonymous Coward | more than 8 years ago | (#15000554)

It's representative of Linux gamer culture. If you give a damn about 3D acceleration on Linux at all, chances are you want it to play UT2004 or Doom 3. Those games are already closed-source commercial software, using a closed-source commercial driver to play them makes very little difference.

When accelerated graphics become useful for general desktop users, and if general users are happy with closed binary drivers, then feel free to complain.

Re:I disagree (but you're right) (1)

bernywork (57298) | more than 8 years ago | (#14997611)

it is very much standard industry practice for one company to pay another to develop software. If HP needs Linux drivers for their latest CGI-oriented workstations, then they will need to pay NVidia to develop them

That it may be, and there is a theory there as well that NVidia could have developed the drivers for Linux knowing that the CGI market exists. Does anyone have any numbers on how many machines are used for the purpose of CGI?

I don't know, but it could quite well be that one of the studios asked NVidia for the drivers as well, quite possibly with the threat of making it an ATi marketing bonanza if ATi releases a decent linux driver. It's just more likely that NVidia would do it simply because of their size.

At the end of the day though, back room deals happen a lot, and the person who wrote this article seems about as informed on the subject as I am.

Re:I disagree (but you're right) (0)

Anonymous Coward | more than 8 years ago | (#14998085)

http://dictionary.reference.com/search?q=abecedari an [reference.com]

"One who is just learning; a beginner."

Re:I disagree (but you're right) (1)

sethstorm (512897) | more than 8 years ago | (#14999404)

It's never going to happen without a wad of cash.
To paraphrase a well-known line with applies here...
"Your lack of faith in regulation is disturbing."

It might be enough to get one by paying them off, but putting regulation back in applies it to all. Just save your wad of cash for the politician and get it done that way.

Re:I disagree (but you're right) (1)

Omega Hacker (6676) | more than 8 years ago | (#15001275)

> The article itself isn't very insightful, and FWIW, it's pretty badly written. "abecedarian"? How about learning to walk before trying to fly?

Amen. That has got to be one of the most pretentious yet utterly incoherent articles I've ever read. About half the time I came to the end of a sentence, I had to back up, read it over again, then read it backwards, and then guess at the intended meaning. The author writes as if he thinks he's being clever with the language, but in reality he's just totally mangling it.

If this is indicative of what people are being taught (or rather, what they're learning) in schools these days (sheesh, I'm talking like an old fogey, and I'm not even 30 yet...), then, well, <sigh>

Re:How is this article insightful? (0, Troll)

antifoidulus (807088) | more than 8 years ago | (#14997687)

Meh, this is slashdot, where it seems most of the stories that get accepted aren't really "tech" at all so much as they are ideological drivel with some conspiracy theories thrown in. You want insightful news go somewhere else, that is what I am going to do. I'm sick of this site and all its fanboys....

Windows drivers! (2, Interesting)

Frozen Void (831218) | more than 8 years ago | (#14997446)

We need a something that allows Linux to run windows drivers,like wine runs a layer of binary compatibility.
Before you critique this approach,look
and count the windows drivers.

Re:Windows drivers! (0)

Anonymous Coward | more than 8 years ago | (#14997493)

It exists already, although it works mainly with drivers for wireless adapters. Go google up ndiswrapper.

Re:Windows drivers! (1)

Frozen Void (831218) | more than 8 years ago | (#14998260)

I mean a layer which can run all of windows drivers,not few .A wrapper
is a emulation of API which already exists.Its like a designing a modern
destroyer vessel looking like a spanish
16th century galleon.It another matter.

Re:Windows drivers! (1)

tomstdenis (446163) | more than 8 years ago | (#14997584)

Why not just write drivers for Linux as well?

Look, the bulk of your driver SHOULD be portable, e.g. "set port to value X, read port, wait X, etc". What changes is the interface to the kernel. Nvidia seems to be doing alright with their approach.

What...? You think your PCI or PCI-E device operates differently because you're running Linux? Hell it wouild work the same way if you were running an Z-80 8-bit processor behind the scenes!!!

Device manufacturers usually don't write Linux drivers because they lack the ability to find talent. Then failing that they don't document the device. So even though there are OSS folk out there who would love to add more support to the Kernel for popular devices they can't because companies think their secrets would spill out if someone knew how to talk to it...

Tom

Re:Windows drivers! (1)

Frozen Void (831218) | more than 8 years ago | (#14998267)

You fail to understand what i propose is different.
I think of that "interface to kernel" being implemented(changed to be windows-compatible). And not to rewrite device drivers(i never proposed new drivers).

good drivers don't work that way (2, Informative)

r00t (33219) | more than 8 years ago | (#14998689)

Good drivers are NOT portable. Portability makes a driver unreadable and slow. Each OS will have its own set of abstractions and coding style.

I worked for a hardware manufacturer that made a portable driver. This driver ran in Windows NT 4, Windows 2000, SunOS (pre-Solaris), Solaris, IRIX, VxWorks, and a few other things. The driver was well over a megabyte and had to include a C library. That's disgusting. At the time, a whole kernel was a few megabytes at most.

Re:Windows drivers! (1)

Jeff DeMaagd (2015) | more than 8 years ago | (#14997986)

An kernel API emulator layer for graphics drivers? Yeah, that's going to be efficient and easy to code.

It is probably not necessarily stable either.

Re:Windows drivers! (1)

Frozen Void (831218) | more than 8 years ago | (#14998277)

Not a local emulation,i mean a Binary compatibility on the level of wine( no wrapping or rewriting).
The "interface to linux kernel" at the basic level.Making the drivers execute as kernel modules. Instead of making drivers portable,making a "portable kernel" which runs all of them.

Re:Windows drivers! (2, Insightful)

Anonymous Coward | more than 8 years ago | (#14998299)

Except for the fact that a lot (most 3rd party) of Windows drivers *suck* and are one of the biggest causes of instability. Now, I realize it would be a step up compatibility-wise, but it would be a giant step down quality wise. If you just set up something like that, people are just going to use that instead of writing actual Linux drivers, like the Cedega situation, except a *LOT* worse. And then, when everyone's using the shitty Windows drivers on their Linux boxes, Linux is going to get a bad name instead of the original authors of the drivers who were too lazy/stupid to write real Linux drivers, and then Linux will lose serious credibility points. "Why use Linux? It's just as unstable as Windows, with less applications." So kindly shut up. Your idea is made of lose and fail.

Re:Windows drivers! (1)

Frozen Void (831218) | more than 8 years ago | (#14998485)

Ok,then you have to write your own stable drivers(And alot of them).Or just change the kernel?

I hope ReactOS
http://en.wikipedia.org/wiki/ReactOS [wikipedia.org]
or other OS,will be a better alternative.
last day for Microsoft is when an OS runs every DLL VXD EXE OCX and stuff independently of windows.WINE is just rewriting the DLLs(mostly wrapper development),
the big step will be making them executable as in windows. Windows API
is the reason microsoft retains a monopoly.With alternative API
which runs all of drivers (i.e. like ReactOS suppose to) and software any free OS will be unstoppable.

Project Evil (1)

Quince alPillan (677281) | more than 8 years ago | (#15012886)

This was done somewhat in FreeBSD in Project Evil.

See link here [freebsd.org] .

Quote from the linked page:

> What in the world is Project Evil?

Project Evil (aka the NDISulator) is a special binary compatibility layer for the FreeBSD kernel that lets you use Windows NDIS drivers for network adapters with FreeBSD/ia32.

The announcement is the previous article in the thread.

Re:Project Evil (1)

Frozen Void (831218) | more than 8 years ago | (#15016607)

How about adding such layers for video drivers,Soundcard drivers,mouse drivers,PnP layer,etc?

and they call me a troll (1)

hildi (868839) | more than 8 years ago | (#14997576)

who gives a shit? dual gpus? are you fucking insane? gamers need to shut the fuck up and realize they arent the only people on the planet.

Nvidia is bad? ATi is worse. (3, Interesting)

Tinfoil (109794) | more than 8 years ago | (#14997833)

I recently purchased a new laptop from Acer, an Aspire 5672. It's a Core Duo running @ 1.67Ghz, 2GB RAM and an ATi X1400 w/ 128MB dedicated. I'll admit right from the start, I didn't do my research very well. I knew the wireless would be touchy but the ipw3945 project may support it. I didn't think I would have a problem with the video. Nor did I think I would have a problem with the Broadcom BCM5789 gigabit lan, but that's another story.

Was I ever wrong.

The binary ATi drivers do not support any of the X1000 series cards. Hell, even the latest & greatest windows drivers do not support my X1400 chipset officially.

The beta ATi drivers apparently support my chipset, but ATi supports 24bit graphics and nothing else. Alas, the display panel in the laptop is 16 or 32 bit. Running at 24 bit yields a display that looks like something one would expect to see after dropping a couple hits of acid.

Even worse, when trying to use the vesa xorg drivers, I am not able to use the native 1280x800 resolution as when the vesa drivers poll the graphics chipset for the available modes, 1280x800 isn't listed! No amount of fussing with the xorg.conf file has yielded a working solution. The final straw is that I am unable to tell the laptop not to scale lower resolutions up to 1280x800, so 1024x768 (4:3 ratio) is scaled to fit the panel, which is 16:10, which just makes things ugly.

So, until I can get native resolution, Linux is useless on this laptop. The display is too fuzzy and stretched to be usefull. Thankfully I still have my old laptop, as it has an nvidia chipset in it. Sure, the laptop is slow compared to the Core Duo, but atleast the display works properly.

Re:Nvidia is bad? ATi is worse. (1)

swillden (191260) | more than 8 years ago | (#14998590)

Alas, the display panel in the laptop is 16 or 32 bit.

I really doubt it. 16-bit, maybe (with 32 intensities of red and blue and 64 of green), but most likely the panel itself is 24-bit, supporting 256 intensities of each red, blue and green. 32-bit color is just the same as 24-bit color, with the addition of an alpha channel to support transparency, which doesn't actually exist at the display level.

Most likely, what's going on is that the beta driver really doesn't properly support your chipset, or else it's using a video mode with timings that your display doesn't support. Color depth is unlikely to be the issue.

Re:Nvidia is bad? ATi is worse. (1)

Tinfoil (109794) | more than 8 years ago | (#14998665)

You may be right on that, swillden. However, I know that in windows the only options I have for colour depth are 16 or 32 bit. When I try 24 bit under Linux, the cursor is displayed properly but the desktop itself is just... well, it's crazy.

Re:Nvidia is bad? ATi is worse. (1)

mixmasta (36673) | more than 8 years ago | (#14999188)

Usually you can turn off the display scaling in the bios.

Also, you may get lucky... My widescreen laptop with intel 852/855 graphics was underutilized until some geek on the internet released some code to patch the video bios. I run a command before X to add 1280x768 to the list. Messy, but it works.

I wish the code would make it into the official driver.

Re:Nvidia is bad? ATi is worse. (1)

Tinfoil (109794) | more than 8 years ago | (#14999247)

heh, I tried that intel graphics hack just for sh*ts and giggles. No go. Too bad I couldn't code my way out of a paper bag!

Re:Nvidia is bad? ATi is worse. (1)

greg1104 (461138) | more than 8 years ago | (#14999196)

Running at 24 bit yields a display that looks like something one would expect to see after dropping a couple hits of acid.

Well, that's at least a huge cost savings for you.

As for reasearch, unless you find someone with the exact same model, even accounts of chipset compatibility in laptop land are not all that reliable. For example, in your case, it sounds like there may be a BIOS problem that's screwing up your VESA support; may not have anything to do with the GPU chip itself, could be a shoddy integration job by Acer (it's not like VESA is important to Windows users so there's little incentive to test).

My experience with running Linux on random laptops has has been so bad that I find one of the machines and boot the Ubuntu and/or Knoppix Live DVDs on them before I'll buy. If I can't get a desktop that's at least usable with those (usually the VESA driver is good enough) I run away.

Re:Nvidia is bad? ATi is worse. (2, Informative)

batkiwi (137781) | more than 8 years ago | (#14999580)

1. ATI has NEVER provided ANY support for laptop chipsets. That is up to your laptop provider. You can get "inf fix" drivers which are the newest drivers + the device IDs to allow you to install them, but if you check out ATI's site that is spelled out very clearly.

Yes it sucks.

2. This is a known problem with almost all ATI embedded chips. If you google around, there's a utility that "forces" a new modeline into the bios temporarily. What you do is choose a modeline to replace with youre 1200x800 and it just pops right in. I don't remember the name, but if you google around you'll find it.

Re:Nvidia is bad? ATi is worse. (1)

Tinfoil (109794) | more than 8 years ago | (#14999994)

Re: #2. Yes, there is a util that will overwrite the video bios in ram to support a new modeline, but the only one I've found thus far is for intel graphics.

And yes, I've tried it for the heck of it.

Re:Nvidia is bad? ATi is worse. (0)

Anonymous Coward | more than 8 years ago | (#15000015)

I wonder if you could run Linux in a window in a virtualization layer. I know you'd still be stuck in Windows(R) techincally, but you should be able to get some productivity out of the laptop in the Linux window. (My sum experience of Linux is boot CD's, which btw are really useful. So, maybe it isn't possible. But I'd think it has to exist, like SheepSaver for Macintosh.)

Re:Nvidia is bad? ATi is worse. (0)

Listen Up (107011) | more than 8 years ago | (#15001750)

Your first mistake was that you didn't buy an Apple.

Your second mistake was that you didn't realize if you hadn't made your first mistake you could right now have *nix and a fully working, beautiful GUI as well as fully supported hardware drivers.

Re:Nvidia is bad? ATi is worse. (1)

Tinfoil (109794) | more than 8 years ago | (#15001967)

I already have two macs, but thanks for playing.

Re:Nvidia is bad? ATi is worse. (1)

tonitonitoni (966040) | more than 8 years ago | (#15059338)

I had the same problem with my laptop.
I've modified the official driver (8.23.7) to recognise the X1400 card, but that's just a workaround. At least I can use the native resolution now (1280x800).
Visit http://toni.to/ati.html [toni.to] for details.

Toni

NVidia may be pro Linux, but not open source. (4, Interesting)

(H)elix1 (231155) | more than 8 years ago | (#14997941)

One thing worth pointing out is NVidia has been pretty good producing Linux drivers for most of the stuff they put out. It started with the video cards, but as they moved to chipsets they kept it up for all the bits on the chipset/mainboard as well. The place that people find fault is they release the drivers as binary rather than source form, and make it exceptionally difficult to roll your own as they don't release any under the cover info. They say it is partly due to licensing on their side, partly to keep the competition in the dark.

Now for me, I use the OS as a development platform. I don't expect source for any Win32 driver I use nor do I care if I have source for Linux or Solaris for that matter. As long as it works and does the job, I'm happy. I suspect I'm a pretty typical Linux user. The Linux developers would have problems with this - having to poke around a black box is a pain in the ass. My pain point comes with having to deal with them at install/update time. I also keep a small stack of Matrox Millennium (4M PCI) cards around because they do 'just work' without binary drivers. If they made them source based it would be more convenient for me, but NVidia has been pretty good keeping up with the multiple kernels and major distros. I'd call them pro Linux, but not open source.

This article hits and misses (4, Interesting)

unr_stuart (883885) | more than 8 years ago | (#14998052)

Yes, of course, nVidia isn't going to spend time developing drivers for 0.01% of their customer base. The reason why Linux has any support at all is because nVidia sees it as a growing market, and because the drivers for Windows and Linux share 98% of their code. This isn't true of other platforms. Look at the Mac for example, their driver interface is completely different than that of Windows or Linux, which is why it takes longer (even though they have a somewhat full team of engineers for the Mac).

For the Linux drivers, the engineers simply say "what do we need more urgently, these bug fixes, or these features?" If they need the features, they borrow the code from Windows and put it in, with possibly some minor glue code. With other platforms, some poor engineer has to learn enough about that one particular OS to get a driver working. Again, how does diverting this portion of time equate to revenue for ATI without a guaranteed contract from the hardware vendor? It doesn't.

nVidia has a steady stream of revenue from Windows users (gamers and casual users) and Linux users (research and education), but the same is not always true of other manufacturers like HP, Sun, etc. And again, why would a business invest their time and money if they don't have a reasonable assurance of profit?

Re:This article hits and misses (1)

SanityInAnarchy (655584) | more than 8 years ago | (#15001099)

why would a business invest their time and money if they don't have a reasonable assurance of profit?

I don't know, but some businesses do. I know id has no such guarenteed contract, yet they not only release all their games natively on Linux, but release the source code of all but their latest generation.

Re:This article hits and misses (1)

unr_stuart (883885) | more than 8 years ago | (#15003116)

I don't know, but some businesses do. I know id has no such guarenteed contract, yet they not only release all their games natively on Linux, but release the source code of all but their latest generation.

True, but I would argue that id does have a reasonable assurance of profit from their Linux efforts. First off, id still uses OpenGL, so the graphics engine is pretty much cross-platform, with possibly some small exceptions in the world of extensions. The windowing system used is typically just plain Win32, and there isn't that much code involved (when viewed in the scope of the entire engine), so when id goes to port, they just use the SDL on Linux and call it good. What I'm trying to point out here is that id puts forth maybe 0.001% of their overall coding into porting the engine from windows to linux. Since I bet (and I'm sure id bets) Linux people enjoy gaming as much as windows people, and Linux has more than a 0.001% desktop share, id is pretty comfortable with the assertion that the Linux port will draw revenue, even though they have no guarantee (and heck, for that matter, id doesn't have a guarantee of their windows games selling either, but they do have a reasonable assurance).

As for the source code release, can't argue there. The one point I would make though is that nVidia licenses some of their driver code, and thus cannot release all of their source code. Also, nVidia makes their money off of selling their hardware design (I've never seen an nVidia brand card, only a third party card with an nVidia GPU), while id makes money off of licensing their newest engine. nVidia builds off of its old hardware, where as Carmack has admitted several times that his team starts from scratch. Thus, nVidia giving away specs of their older hardware is not quite the same as id giving away its old source code.

Re:This article hits and misses (1)

justins (80659) | more than 8 years ago | (#15002330)

The reason why Linux has any support at all is because
...back in the day, when they still had the money to do it, VA Linux and SGI paid them to do the grunt work of a port. It's been in maintenance mode ever since.

Sensibility (1)

Bad Boy Marty (15944) | more than 8 years ago | (#14998999)

IMHO, the concept of making the useful working of a GPU only obtainable through NDA is about as sensible as having the same restriction on the instruction set of a CPU: not at all. The fact that Microsoft is willing to pay -- to my mind -- is a clear indication of their collusion with both NVidia and ATI to keep useful technology out of the hands of those who would benefit the most: we, the users. People, please vote with your wallets, and make it known *why* you refuse to use these products.

Re:Sensibility (1)

SanityInAnarchy (655584) | more than 8 years ago | (#15001173)

People, please vote with your wallets, and make it known *why* you refuse to use these products.

That'd be really nice, if it was really a choice.

I do vote with my wallet against Sony. I vote with my wallet against all major record labels. I refuse to buy games that I would have to no-CD crack. These are things I can live without. There are plenty of substitutes -- I already own most of the games I want, and I buy the ones I can download, which don't have horrendous copy protection. There's tons of music from sources which are not evil. And Sony I don't have to touch at all.

But, tell me, where can I get a high-performance (gaming) video card that isn't from ATI or nVidia? My choices are: Go nvidia and be stuck with binary drivers that aren't as good as they possibly could be, go ATI and be stuck with binary drivers that absolutely suck, or go ATI or anyone else who has an open source driver, but which won't play anything beyond Quake 3, if that. I want my Doom 3, I want my Quake 4, and I don't want the eye candy scaled back to a Voodoo 3.

In other words, the collusion actually worked here. I suppose I could get a console and have my computer be pure, but then I'd have to have a console.

Or, put another way: It's easy to vote with my wallet and decide I'm not going to buy any games that require insane copy protection. It's much harder to decide not to buy any games that require decent 3D acceleration.

Where are RedHat, Novel, IBM, etc on this? (1)

soldack (48581) | more than 8 years ago | (#14999094)

I don't understand why the folks who have the money don't pay to get better drivers for linux. It is pretty sad that things like the ndis wrapper have to exist. I am pretty sure Apple pays to get its drivers.
The problem isn't nvidia here. I don't have an issue with them not releasing open source drivers. In my opinion, they spent a lot of time and money to just get a few frames ahead of the competition and I don't have problem with them not giving it out. I am not anti-open source, I just don't think it should be forced down someone's gut.
Driver development is difficult and linux driver development requires constant effort since there isn't a stable ABI in the kernel. You have to stay on top of things because they can change at any time. While other operating systems change as well, they make a nice attempt to maintain backward compatibility. This constant churn makes it very expensive to support Linux kernel devices. If you become an expert kernel person in the 2.4 series and then work on another project and then come back to 2.6 land, you are in for fun. There are so many upgrading from 2.4 to 2.6 horror stories I have heard and personally experienced. On the other hand, I experienced smooth sailing with windows driver changes because I could choose when I added the support for new features. Driver architecture changes in windows always built on what you knew before. It is amazing but I have always felt I knew what the Windows kernel was doing more than I could the linux one even though I had soure only for linux. Over time you get a feel for how things work in an operating system. This can't happen when you have significant architectural changes to the kernel.

So if Linux wants good drivers, the Linux vendors should make it happen. Heck, if they expect me to pay for a distro, I want more than support; I want drivers that work!
-Ack

Re:Where are RedHat, Novel, IBM, etc on this? (3, Insightful)

binford2k (142561) | more than 8 years ago | (#14999337)

All nvidia needs to do is open source their driver and then it's maintenance requirements drop to approximately zero.

Nvidia's Business Plan (0)

JuzzFunky (796384) | more than 8 years ago | (#14999707)

Phase 1: Write Linux drivers
Phase 2: ???
Phase 3: Profit!

Second hand citizen? (1)

Expert Determination (950523) | more than 8 years ago | (#15007158)

I've no idea what that is unless you mean a pre-owned watch? [ebay.com]
Check for New Comments
Slashdot Account

Need an Account?

Forgot your password?

Don't worry, we never post anything without your permission.

Submission Text Formatting Tips

We support a small subset of HTML, namely these tags:

  • b
  • i
  • p
  • br
  • a
  • ol
  • ul
  • li
  • dl
  • dt
  • dd
  • em
  • strong
  • tt
  • blockquote
  • div
  • quote
  • ecode

"ecode" can be used for code snippets, for example:

<ecode>    while(1) { do_something(); } </ecode>
Create a Slashdot Account

Loading...