Reverse engineering: more than NVIDIA deserves?
One of the most prominent reverse engineering projects at the moment is Nouveau, which is starting to have some real success in making NVIDIA graphics adapters work with free software; see this week's Kernel Page for an article on the state of this project. NVIDIA hardware has been a problem for a long time, of course. It is said to be nicely-designed, and it is certainly present in a significant percentage of new machines, but NVIDIA has had no interest in making free drivers (or documentation) available for some years. So the only way for owners of this hardware to use it with reasonable performance under Linux is to use NVIDIA's proprietary kernel module, and that is a price many of us are not willing to pay.
There are currently about eight developers working to make the Nouveau driver better. They have reached a point where their understanding of the hardware and their reverse engineering tools are quite good; that, in turn, is enabling fast progress toward the creation of a working driver. With this kind of developer attention, the Nouveau driver may reach a stable state over the course of the next year, at least for some versions of the hardware. And that, it seems, should be a good thing.
Except for one little issue. NVIDIA's competition in this market is provided mainly by Intel and AMD/ATI. Intel provides free drivers for its hardware as a matter of company policy, and AMD has pushed a much more friendly policy onto ATI since the middle of last year. So free drivers for Intel video adapters come with distributions, and the first ATI drivers are beginning to become available.
One rather perverse result of this situation is that there are almost no community developers working on the Intel drivers at all. The development and maintenance of those drivers is an expense carried by Intel alone. One could argue that the lack of hardware documentation from Intel has made it hard for other developers to participate; Intel is now beginning to address that problem by burying the community in comprehensive, Creative Commons-licensed hardware programming manuals. It will be interesting to see how much more community help Intel gets as a result of its documentation release.
ATI, which has not, to date, provided working, free drivers, is arguably getting more help from the community and, especially, from distributors who have an interest in working drivers. But that company, too, is putting in resources of its own toward that goal.
NVIDIA, instead, is giving us nothing - and, in return, we are giving it an eight-person development team dedicated to the production of free drivers for its hardware. Once Nouveau is in a working state, Linux users will be able to buy NVIDIA hardware in the knowledge that it will simply work without requiring them to download and use binary-only kernel modules. The result of that can only be higher sales for NVIDIA.
While talking to developers at linux.conf.au, your editor heard a number of them say that NVIDIA does not deserve a gift of this magnitude from the community. We are now quite close to having free support for video hardware at all performance levels, supplied by friendly companies. Rather than penalize those companies by making a free gift to their biggest competitor, some say, shouldn't NVIDIA be made to pay for its behavior by exclusion from our community until it comes around?
There is a point here. The biggest lever we have when talking with hardware companies (or any company, for that matter) is money. Companies which see themselves as missing out on the Linux market will find a strong incentive to change their behavior. So if NVIDIA finds that system resellers are not using its chipsets for Linux-based systems, it will have to reconsider its position with regard to free drivers.
In the past, there was no credible alternative to NVIDIA, so the company had no real reason to fear that it could lose money as a result of its uncooperative behavior. Now there are well-supported alternatives at the lower end of the market, and the prospect of the same for high-end graphics as well. So there will be no need to buy hardware from this particular vendor, and, since the alternatives will be well supported, every reason to buy from somebody else.
Unless NVIDIA's hardware, too, is made to work via a community-supported driver. Should this happen, one could well say that we, as a community, have taken a prize away from companies which have treated us well and handed it to their competitor (which has not). Arguably, the community should not pursue the creation of reverse-engineered drivers in situations where competing vendors are playing by our rules. Otherwise, we are sending a rather conflicted message to both types of companies. It may really be true that, in the long run, the Nouveau driver is harmful to our real interests.
All of this discussion may be moot. There's no way that any of us could keep
others from reverse-engineering their hardware and writing drivers, even if
we wanted to. Anybody arguing against the mainline inclusion of a
GPL-licensed driver for popular hardware is likely to end up in a minority
position, to say the least. So, as a community, we cannot make a
collective decision to stop this kind of development. But, as individual
developers, we may occasionally want to give a moment's thought to the
question of whether our activities are truly beneficial in the long run.
Posted Feb 18, 2008 20:14 UTC (Mon)
by Felix.Braun (guest, #3032)
[Link]
Posted Feb 18, 2008 20:22 UTC (Mon)
by tetromino (guest, #33846)
[Link] (34 responses)
Posted Feb 18, 2008 20:37 UTC (Mon)
by jospoortvliet (guest, #33164)
[Link] (8 responses)
Posted Feb 18, 2008 22:11 UTC (Mon)
by einstein (subscriber, #2052)
[Link] (7 responses)
Posted Feb 19, 2008 8:22 UTC (Tue)
by khim (subscriber, #9252)
[Link] (5 responses)
I have nothing against nVidia and binary drivers per se: you want/need to use them - to do. No problem. But to spend a lot of resources to produce open-source drivers for nVidia looks like useless waste of time: by the time free drivers will reach maturity (year from past experience) nVidia hardware will be obsoleted anyway. And for the next 2-3 years closed-source proprietary drivers are Ok. So the only way to keep Nouveau relevant is to waste efforts forever and keep adding support for newer and newer models. And this looks like stupid thing to do. But of course there are no rush: if/when AMD's drivers will reach maturity Nouveau support will dry up. I think it'll happen automatically if free AMD drivers will be any good...
Posted Feb 19, 2008 9:37 UTC (Tue)
by liljencrantz (guest, #28458)
[Link] (4 responses)
Posted Feb 20, 2008 6:04 UTC (Wed)
by drag (guest, #31333)
[Link] (2 responses)
Posted Feb 20, 2008 15:42 UTC (Wed)
by liljencrantz (guest, #28458)
[Link] (1 responses)
Posted Feb 21, 2008 2:17 UTC (Thu)
by pr1268 (guest, #24648)
[Link]
Saving $600 is worth a few regrets.
Posted Feb 20, 2008 22:20 UTC (Wed)
by jayavarman (guest, #19600)
[Link]
Posted Feb 28, 2008 21:34 UTC (Thu)
by alext (guest, #7589)
[Link]
Posted Feb 18, 2008 22:09 UTC (Mon)
by ikm (guest, #493)
[Link] (10 responses)
Posted Feb 19, 2008 9:27 UTC (Tue)
by yodermk (subscriber, #3803)
[Link] (9 responses)
Posted Feb 19, 2008 16:20 UTC (Tue)
by ikm (guest, #493)
[Link] (8 responses)
Posted Feb 19, 2008 18:12 UTC (Tue)
by vmole (guest, #111)
[Link] (5 responses)
The "mere users" made the choice to buy unsupported hardware. Why should I change my principles to support their bad habit? The way to help people addicted to tobacco is not to provide them with free tobacco, but to help them stop smoking.
Posted Feb 19, 2008 19:05 UTC (Tue)
by ikm (guest, #493)
[Link] (4 responses)
Posted Feb 19, 2008 19:40 UTC (Tue)
by vmole (guest, #111)
[Link] (3 responses)
You did suggest that I change my priniciples. You said I shouldn't say bad things about NVidia because they won't provide the information needed to support their hardware properly. (And actually, I don't say bad things about them; I simply don't buy *any* of their products, and, if asked, recommend that others avoid them as well.)
And sorry, this is harsh, but if you don't care enough about free software to avoid products that only have proprietary drivers, then you're not part of my community. Yes, that means you can't play Duke Nukem Forever. Such is life.
Now, don't get me wrong. If people want to spend their time working on Nouveau, I won't recommend that they be stopped, somehow. But I think it's perfectly reasonable to ask why they are supporting the one common 3D HW companies that is not making any effort at all to support the free software community. And no, I don't count closed source drivers that only work with certain kernels and certain architectures as "support".
Posted Feb 19, 2008 20:34 UTC (Tue)
by ikm (guest, #493)
[Link]
Posted Feb 21, 2008 19:02 UTC (Thu)
by amikins (guest, #451)
[Link] (1 responses)
Posted Feb 21, 2008 19:52 UTC (Thu)
by vmole (guest, #111)
[Link]
Of course I'm aware of that. But I'm also aware those users, who have money to spend, did not use their buying power to influence one of the 3D companies to provide free drivers. They have taken advantage of the hard work of others to get off the expensive SGI workstations.
Posted Feb 19, 2008 19:23 UTC (Tue)
by mrfredsmoothie (guest, #3100)
[Link] (1 responses)
Posted Feb 19, 2008 20:41 UTC (Tue)
by ikm (guest, #493)
[Link]
Posted Feb 19, 2008 7:19 UTC (Tue)
by rsidd (subscriber, #2582)
[Link] (8 responses)
Posted Feb 19, 2008 8:40 UTC (Tue)
by michich (guest, #17902)
[Link]
Posted Feb 19, 2008 9:36 UTC (Tue)
by yodermk (subscriber, #3803)
[Link] (1 responses)
Posted Feb 22, 2008 15:23 UTC (Fri)
by wilck (guest, #29844)
[Link]
Posted Feb 19, 2008 20:35 UTC (Tue)
by AJWM (guest, #15888)
[Link] (4 responses)
Posted Feb 20, 2008 1:37 UTC (Wed)
by BeS (guest, #43108)
[Link] (3 responses)
>When Gnash works as a Firefox plugin for YouTube videos, I'll switch. Good news for you: Gnash works as a Firefox plugin for YouTube since version 0.8
Posted Feb 20, 2008 7:05 UTC (Wed)
by AJWM (guest, #15888)
[Link]
Posted Feb 20, 2008 22:27 UTC (Wed)
by zlynx (guest, #2285)
[Link] (1 responses)
Posted Mar 1, 2008 1:19 UTC (Sat)
by zenaan (guest, #3778)
[Link]
Posted Feb 19, 2008 10:07 UTC (Tue)
by debacle (subscriber, #7114)
[Link]
Posted Feb 20, 2008 13:12 UTC (Wed)
by jmayer (guest, #595)
[Link] (1 responses)
Posted Feb 28, 2008 9:32 UTC (Thu)
by forthy (guest, #1525)
[Link]
Well, one can speculate that, but how can this come true? NVidia then
might not work on a kernel.org kernel, but a simple patch would remove
this limitation. The legal question about the NVidia kernel module is
about the same as the ndiswrapper discussion: Both are designed to load a
Windows driver module (or something very similar to such a module) into
the Linux kernel. Both wrappers are available under the GPL, and
therefore compatible with the kernel license. The modules they load are
not designed for the Linux kernel, and therefore not a derived work. One can argue that creating such an interface is a Bad Thing(tm), like
a plug-in interface to GCC has been considered as such, but that's it
(even though I agree to the argument). And the kernel is "tainted" when a
Windows driver runs in its space; but for a license that excludes any
warranty whatsoever, the consequence of "tainted" is not that
important.
Posted Mar 2, 2008 8:43 UTC (Sun)
by gvy (guest, #11981)
[Link] (1 responses)
Posted Mar 9, 2008 16:23 UTC (Sun)
by nix (subscriber, #2304)
[Link]
Posted Feb 18, 2008 20:31 UTC (Mon)
by briangmaddox (guest, #39279)
[Link]
Posted Feb 18, 2008 20:42 UTC (Mon)
by paravoid (subscriber, #32869)
[Link]
Posted Feb 18, 2008 20:42 UTC (Mon)
by stevenj (guest, #421)
[Link] (1 responses)
Let's suppose that, in the future, ATI really does provide high-quality high-performance free drivers. They are still going to have a significant advantage over nVidia, because Nouveau's support (even when it matures) will inevitably lag some time behind nVidia's latest products.
I suspect that the greatest incentive to continue working on Nouveau has nothing to do with new hardware purchases, but rather in dealing with old hardware. There are a lot of machines out there with plenty of life left in them, but which are unfortunately saddled with nVidia cards. Getting these older machines working properly with free drivers integrated into the Linux kernel and X will benefit a lot of people, while contributing little or nothing to nVidia's bottom line.
(On the other hand, to play devil's advocate, I suppose people could purchase nVidia hardware and plan to use the closed-source driver in the short term and then switch to the free driver in the long term, lessening the advantage of a free ATI driver.)
Posted Feb 18, 2008 20:53 UTC (Mon)
by sbergman27 (guest, #10767)
[Link]
Posted Feb 18, 2008 20:46 UTC (Mon)
by smoogen (subscriber, #97)
[Link] (4 responses)
Posted Feb 18, 2008 21:12 UTC (Mon)
by sbergman27 (guest, #10767)
[Link] (3 responses)
Posted Feb 18, 2008 22:15 UTC (Mon)
by Cato (guest, #7643)
[Link] (1 responses)
Posted Feb 18, 2008 23:37 UTC (Mon)
by madscientist (subscriber, #16861)
[Link]
Posted Feb 18, 2008 22:19 UTC (Mon)
by epa (subscriber, #39769)
[Link]
Posted Feb 18, 2008 21:16 UTC (Mon)
by jejb (subscriber, #6654)
[Link] (8 responses)
Posted Feb 18, 2008 22:05 UTC (Mon)
by arjan (subscriber, #36785)
[Link] (6 responses)
Posted Feb 19, 2008 3:05 UTC (Tue)
by xoddam (subscriber, #2322)
[Link] (5 responses)
Posted Feb 19, 2008 8:31 UTC (Tue)
by khim (subscriber, #9252)
[Link] (4 responses)
If something 'built on top of' a free work is not a derivative work,
it is not subject to the free work's copyright licence.
Posted Feb 19, 2008 13:45 UTC (Tue)
by flewellyn (subscriber, #5047)
[Link] (3 responses)
Xoddam seems a bit confused. I think I understand the source of the confusion, though. One of the most prominent free software projects, the Linux kernel, explicitly states that the boundary between "derived work" and "mere aggregation" for the kernel is at the system call boundary (and presumably the /proc and /sys filesystem interfaces as well). Any user-space program that uses the system calls is not bound by the kernel's GPLv2 license, but kernel modules and other code which interact with internal kernel interfaces is operating inside the kernel's "license domain", if you will. The same does not necessarily hold true for other projects, though! If the license for a particular user-space library is GPL, or some equivalent copyleft license, you must abide by that license's terms if you link it to your code. This isn't the case for libraries that are LGPL, or under a non-copyleft permissive license like the BSD or X11 licenses. So you can write programs that link to GLIBC without having to make them GPL, and of course you can write X programs under any license too. But the idea that all free software allows you to build "on top" of it without license concerns is not even wrong; it's too vague to be evaluated.
Posted Feb 19, 2008 14:39 UTC (Tue)
by khim (subscriber, #9252)
[Link] (1 responses)
When you are poking files in /sys directory you are directly playing with kernel internals, there are no clear well-defined API. There are talks about declaring some parts of /sys as some sort of stable API, but certainly not the whole /sys. Otherwise you can say that "my program which used clearly defined API over /dev/kmem is not derived work" even if said program in fact injected huge kernel module this way...
Posted Feb 19, 2008 15:47 UTC (Tue)
by flewellyn (subscriber, #5047)
[Link]
Okay, that makes sense. Thanks for the correction. It doesn't change the rest of what I said, though. :-)
Posted Feb 21, 2008 1:37 UTC (Thu)
by jdivine (guest, #18042)
[Link]
Posted Feb 18, 2008 23:02 UTC (Mon)
by sayler (guest, #3164)
[Link]
Posted Feb 18, 2008 22:31 UTC (Mon)
by kbengston (guest, #6153)
[Link] (4 responses)
Posted Feb 19, 2008 9:49 UTC (Tue)
by IkeTo (subscriber, #2122)
[Link] (3 responses)
Posted Feb 19, 2008 16:56 UTC (Tue)
by ikm (guest, #493)
[Link] (1 responses)
Posted Feb 19, 2008 17:31 UTC (Tue)
by IkeTo (subscriber, #2122)
[Link]
Posted Feb 19, 2008 21:59 UTC (Tue)
by rfunk (subscriber, #4054)
[Link]
Posted Feb 18, 2008 23:15 UTC (Mon)
by zblaxell (subscriber, #26385)
[Link] (6 responses)
Posted Feb 18, 2008 23:23 UTC (Mon)
by robertknight (guest, #42536)
[Link] (5 responses)
Posted Feb 18, 2008 23:33 UTC (Mon)
by notamisfit (guest, #40886)
[Link]
Posted Feb 18, 2008 23:33 UTC (Mon)
by einstein (subscriber, #2052)
[Link] (3 responses)
Posted Feb 19, 2008 1:07 UTC (Tue)
by drag (guest, #31333)
[Link] (2 responses)
Posted Feb 19, 2008 2:41 UTC (Tue)
by elanthis (guest, #6227)
[Link] (1 responses)
Posted Feb 19, 2008 8:42 UTC (Tue)
by khim (subscriber, #9252)
[Link]
Then come back and say it again. EULA (which you are supposedly agreed with but looks like in reality to not even read) forbids a lot of stuff and there were a lot cheating embedded in nVidia drivers (in extreme cases drivers just ignore shader code totally and are using totally different hand-crafted shaders which don't even look like original). Sorry but this analogy is closer to the reality then what you are implying...
Posted Feb 19, 2008 0:04 UTC (Tue)
by airlied (subscriber, #9104)
[Link] (2 responses)
Posted Feb 19, 2008 1:44 UTC (Tue)
by arjan (subscriber, #36785)
[Link]
Posted Feb 28, 2008 19:43 UTC (Thu)
by m94mni (guest, #50822)
[Link]
Posted Feb 19, 2008 2:05 UTC (Tue)
by drag (guest, #31333)
[Link]
Posted Feb 19, 2008 4:10 UTC (Tue)
by midg3t (guest, #30998)
[Link]
There's no evidence of nVidia becoming nice, so I think the wise thing to do is keep reverse engineering — for the users.
I bought a laptop with a broadcom wireless chip. At the time there was no driver for it, so I just used wired networking for a year. Then the
One commenter pointed out that reverse engineered drivers are usually months or years behind their competitors. Combined with a large user base, that becomes noticeable in a business sense (I think they call it "lost sales"). An example here is the
There was some interesting discussion between Dirk Hohndel and Dave Airlie at the end of Dirk's talk at LCA (video).
Dave's point was that nVidia misses out on big contracts such as when Dell seeks suppliers, because Dell requires that all the hardware have supported, free drivers. Again, money talks.
Corrections welcome.
Posted Feb 19, 2008 5:39 UTC (Tue)
by grouch (guest, #27289)
[Link]
NVIDIA's attitude is the reason I haven't purchased anything with their name on it in a very long time. That includes motherboards that mention their name. NVIDIA provides a strong incentive to avoid their products.
The Nouveau developers provide rescue for trapped users. Nvidia provides traps. IMO, there's nothing wrong with thanking the rescuers while warning about the trap-maker.
Posted Feb 19, 2008 9:07 UTC (Tue)
by lolando (guest, #7139)
[Link]
Posted Feb 19, 2008 11:17 UTC (Tue)
by Richard_J_Neill (subscriber, #23093)
[Link]
Posted Feb 19, 2008 16:55 UTC (Tue)
by tjc (guest, #137)
[Link] (5 responses)
Posted Feb 19, 2008 17:27 UTC (Tue)
by wingo (guest, #26929)
[Link]
Posted Feb 19, 2008 21:16 UTC (Tue)
by oak (guest, #2786)
[Link]
Posted Feb 20, 2008 17:10 UTC (Wed)
by mrshiny (guest, #4266)
[Link]
Posted Feb 20, 2008 17:21 UTC (Wed)
by ikm (guest, #493)
[Link] (1 responses)
Posted Feb 21, 2008 22:20 UTC (Thu)
by tjc (guest, #137)
[Link]
Posted Feb 19, 2008 17:54 UTC (Tue)
by tzafrir (subscriber, #11501)
[Link] (1 responses)
Posted Feb 21, 2008 16:02 UTC (Thu)
by tjc (guest, #137)
[Link]
Posted Feb 19, 2008 23:05 UTC (Tue)
by filipjoelsson (guest, #2622)
[Link]
Posted Feb 19, 2008 23:31 UTC (Tue)
by ncm (guest, #165)
[Link]
Posted Feb 20, 2008 1:27 UTC (Wed)
by th0ma7 (subscriber, #24698)
[Link]
Posted Feb 20, 2008 3:22 UTC (Wed)
by landley (guest, #6789)
[Link] (1 responses)
Posted Feb 20, 2008 17:37 UTC (Wed)
by ikm (guest, #493)
[Link]
Posted Feb 20, 2008 4:55 UTC (Wed)
by Ford_Prefect (subscriber, #36934)
[Link] (5 responses)
Posted Feb 28, 2008 10:43 UTC (Thu)
by ketilmalde (guest, #18719)
[Link] (4 responses)
Posted Feb 28, 2008 21:06 UTC (Thu)
by nix (subscriber, #2304)
[Link] (2 responses)
Posted Feb 29, 2008 8:01 UTC (Fri)
by ketilmalde (guest, #18719)
[Link] (1 responses)
Posted Feb 29, 2008 22:20 UTC (Fri)
by nix (subscriber, #2304)
[Link]
Posted Mar 2, 2008 0:31 UTC (Sun)
by jabby (guest, #2648)
[Link]
Posted Feb 21, 2008 10:23 UTC (Thu)
by Felix_the_Mac (guest, #32242)
[Link]
Is reverse engenieering unethical?
Open source software is written by people with an itch to scratch, and -- unfortunately -- no
amount of philosophical reasoning will provide free graphics drivers for people on NVIDIA
hardware. Thus, the only way these people are going to get high end consumer hardware to work
on their boxes, is to either use the proprietary driver or to write drivers themselves.
It is true that this effort seems to punish NVIDIA's competitors who are either open source's
poster child in this area (intel) or making noises of gradually improving a previously bad
situation (ATI/AMD). But, to resolve this apparent problem, all one has to do is to ask, how
we got into the current state. Why do people have an itch to scratch, that we rather they
wouldn't?
It's because a short while ago, when the nouveau effort started, there was no credible
alternative for high end consumer graphics cards with open drivers. Intel, as the article
correctly points out, occupies the low end of on-board graphics refusing to offer a
stand-alone version of their products that would be able to compete with NVIDIA's or ATI's
offerings. AS far as I know they are planning to enter that market with the Larrabee cards,
planned for release in 2010. As for ATI / AMD there is, to my knowledge, still no open/free
driver for any of their recent chips, although we have been hearing rumors that things are
going to get better Real Soon Now (TM).
So in effect, the punishment that intel and ATI may be feeling now is due to the fact that
they are too late in providing a solution for people's needs in high power GPUs. Had any such
alternative existed say two years ago, I'm sure that people would long have started voting
with their wallets. I know I would have. Instead, lots of intelligent people have bought
NVIDIA hardware. And if you have lots intelligent people sharing the same itch to scratch,
eventually you will get a solution to that problem...
Reverse engineering: more than NVIDIA deserves?
You know, before complaining about NVIDIA's lack of cooperation, we should look at the
respective track records of NVIDIA's closed-source driver team and of the free software
community. And if you take an honest, hard look, you will see that NVIDIA's closed-source
Linux drivers beat *all* existing free drivers, for any piece of graphics hardware, in terms
of how much performance they can extract from the hardware, their reliability, the speed with
which support is added for new hardware, and the rate at which new features are implemented.
I hope that one day, we the community will finally start making drivers that actually work on
all hardware that we claim them to work on, that really do properly support all features that
we claim to support, and that don't cause our machines to lock up for no good reason. But
until that day comes, instead of complaining about NVIDIA, we should be thanking them for
releasing an excellent (yet unfortunately closed-source) driver.
Reverse engineering: more than NVIDIA deserves?
I think you missed the point of the article entirely...
Reverse engineering: more than NVIDIA deserves?
I wouldn't say that he missed the point, but that he's reflecting some good old fashioned
practicality into what was a purely philosophical discussion.
He IS missing the point
You're missing the point
Strongly disagree.
nVidias drivers are flaky and unstable in my experience. Using them makes my laptop
significantly less likely to come out of sleep mode working. There are various minor graphical
glitches when using Compiz, like window borders sometimes getting the wrong transparency level
and the mouse cursor getting the wrong color. Sometimes when switching resolution, the screen
starts to flicker, and doesn't stop until you reboot you system. On my previous desktop
machine, the computer would lock hard when using both video outputs at once. Because my
desktop machine had an old graphics card and my laptop has a low volume laptop GPU, these
issues are not prioritized by nVidia and will very likely never get fixed.
All in all, the driver is crappy, and because it is closed source, I have no other option than
to sit around and hope nVidia will accidentally fix this in a later release, which seems
somewhat unlikely.
You're missing the point
> All in all, the driver is crappy, and because it is closed source, I have no other option
than to sit around and hope nVidia will accidentally fix this in a later release, which seems
somewhat unlikely.
Well, with hindsight, what you should of done was never purchase the hardware in the first
place. With these sort of things your not only paying for the hardware, but your paying for
the software.
That is without the drivers the hardware is useless (or nearly useless). Nvidia, by keeping
stuff closed, is using their software as part of the product you are purchasing. One is
nothing without the other.
That is because you bought Nvidia's hardware you are paying for them to continue to develop
closed source drivers. (In comparison how much have you paid to develop open source drivers?)
So the other course of action, right now, is sell your Nvidia stuff and buy something with
Intel on it. So if you have problems with their driver support yourself or somebody can
actually do something about it.
If you cannot do that because of the money. Oh well. Better luck next time.
If you cannot work with Intel hardware because of performance issues, then you'll never be
able to work with the open source nvidia drivers either. There will never be the developer
support or community support nessicary to get those drivers up to the same level of Nvidia's
own drivers in a timely fasion. So your screwed coming and going.
You're missing the point
Your points are mostly valid, but Intel doesn't sell any desktop cards, and back when I bought
my hardware ATI where nowhere near open either, so I really had no option there.
I really wanted to buy a laptop with an Intel GPU, but the exakt same laptop that I bought but
with Intel graphics cost a full $600 more than the one I bought. They where selling the laptop
I bought at almost half price because they had introduced the exact same model but with Vista
certification. Thanks, Micorsoft!!! While I strongly wanted to support Intel, $600 was simply
too much, and I caved in. I have some regrets.
You're missing the point
You're missing the point
My experience has been quite different. On my laptop the nvidia driver works pretty much well
and stably. I just close the lid, the laptop sleeps and then comes back again. I can get
several days of uptime. The power management seems to also work quite well, although the
chip/driver is a bit too laggy to increase the frequency when needed.
Reverse engineering: more than NVIDIA deserves?
Not really, he is saying that Free Software developers can't develop as good drivers with no
documentation of the hardware as people who have are informed about every essential nugget of
configuring and operating the boards to the max. If the NVidia drivers weren't the best you
really would hope they would fire the engineers!
I've thought from the start nouveau was a mistake and more so every time AMD or Intel release
spec's for hardware. My next machine won't have NVidia in it unless they are free by then and
I think this whole affair is just making people realise that others deserve their support
where they didn't know different before. I didn't. So NVidia need to react or start to lose
share.
There are practical reasons, if I can have a machine that requires no special treatment (even
with the helpful Ubuntu restricted drivers tool for example) to run at its best I will choose
it over one with just the hiccup of an extra task. That's the practical reality.
I second that. It's just awkward to state that Nvidia is "giving us nothing". Their drivers are unmatched. Yes, they are closed source. And, as such, yes, if you've got a problem with your Reverse engineering: more than NVIDIA deserves?
Xerox Nvidia board, you're done, go search forums, find other clueless people and file bug reports to Nvidia. But somehow, in practice, I have more issues with my integrated Intel than with my Nvidia board. And people tend to vote with money based on something more substantial than just some theoretical niceness. If there are benefits to be had in the future, it's in the future where the pro-votes are to take place. For one, buyers don't feel like investors, they just want stuff that works and does that good.
Reverse engineering: more than NVIDIA deserves?
> It's just awkward to state that Nvidia is "giving us nothing".
Depends on who the "us" is. In the context of this article (and, just about every article on
LWN), "us" is the Free Software community, those who care about openness because of its many
advantages.
In that context, nVidia has truly given us nothing. They sell hardware that works with Linux
(because they made it work), but that does not advance the cause of those who believe they
should be able to know about the internals of the hardware they buy.
Reverse engineering: more than NVIDIA deserves?
Is it right to draw the line the way you did between open-source developers and mere users who
just need to get some work done today? Furthermore, isn't it just impolite to throw stones
that big into a company which actually does provide linux support, though in the only form
they can?
Reverse engineering: more than NVIDIA deserves?
I think you don't have to change your principles in order to recognize that these people can be a part of community. What alternative would you suggest for people who need high-end 3d under linux now? To stop having these needs, right? Or to go develop their own drivers? Or maybe even go develop their own hardware? It's ok to have principles, but some grip on reality would be nice as well. Particularly regarding the fact that people with different principles and different needs can still coexist in the same world without making it look like a checkered board.
Reverse engineering: more than NVIDIA deserves?
Reverse engineering: more than NVIDIA deserves?
Reverse engineering: more than NVIDIA deserves?
3d is not only for self-indulging, as you're suggesting. And I'm certainly not a fanatic. I
just happen to have work to do. You have suggested nothing in how to accomplish that. Suit
yourself.
Reverse engineering: more than NVIDIA deserves?
... Wait, what? You -ARE- aware there's REAL WORK that requires 3d graphics acceleration to be
anything resembling efficient?
There's modelling objects or products, either prior to production, or as the actual production
in the case of media. Architects, engineers, animators..
All these people can reasonably require extremely high end 3d graphics to get their work done.
Then there's simulations. Astronomers, physicists.. They, too, can need 3d modelling in order
to get their work done; it isn't all pure number crunching in the background. You have to
-show- what's happening, too.
Oh, and then there's the game developers, too...
Reverse engineering: more than NVIDIA deserves?
Reverse engineering: more than NVIDIA deserves?
The only form they CAN? You know for a fact that NVidia is legally constrained from releasing
free drivers for their hardware?
Reverse engineering: more than NVIDIA deserves?
Of course not. They are just unfriendly people who despise linux crowd because they think they
are too geeky.
Reverse engineering: more than NVIDIA deserves?
I totally agree, and there's another thing: the number of Linux users is small but growing;
but the number of Linux users who care so much about free software that they will not use the
NVidia driver must be quite microscopic. (I suppose those are the same users that won't use
Adobe's flash player, or Adobe Reader -- which is still the only real option for filling
forms. Personally I don't know any such people, though I'm sure they exist.) Vendors who
want to pre-install Linux are unlikely to be put off by NVidia's proprietary driver. I don't
foresee the Nouveau driver being real competition any time soon, and I don't think abandoning
the Nouveau project will punish NVidia in any realistic way. Meanwhile, I agree with the
parent -- till some time last year, a Linux user who wanted high-end graphics would have had
reason to feel grateful to NVidia, which had both high-end hardware (unlike Intel) and
high-quality free-beer drivers (unlike ATI).
Reverse engineering: more than NVIDIA deserves?
Vendors who want to pre-install Linux are unlikely to be put
off by NVidia's proprietary driver.
They should be. It's one thing to download a proprietary driver and use
it on one's machine, but distributing it together with Linux is another
matter. The 'mere aggregation' clause of the GPL does not apply here,
IMO.
Reverse engineering: more than NVIDIA deserves?
> I suppose those are the same users that won't use
Adobe's flash player, or Adobe Reader
Vastly different context than kernel modules/closed hardware.
I use Skype, Flash, and (rarely but occasionally Acrobat Reader). Although I would be
grateful for adequate Free alternatives, there is nowhere near the urgency of replacing those
as there is of replacing closed kernel modules. Closed kernel modules have a good list of
practical disadvantages, including being tied to the vendor when you want to upgrade the
kernel or x.org. If there's a problem, *only* the vendor can fix it, not the hundreds of
awesome kernel hackers. And there are potential legal problems.
(Yes, I use the closed nVidia driver on my laptop now, but I'm not happy about it. I'll
switch to Noveau when it's ready and I'm certainly buying ATi on my next computer.)
> Vendors who
want to pre-install Linux are unlikely to be put off by NVidia's proprietary driver.
Haven't you read the comments from the Dell Linux guy? Dell now *actively* prefers hardware
with open specs, *even for systems they pre-install Windows on*!!!
Reverse engineering: more than NVIDIA deserves?
> Haven't you read the comments from the Dell Linux guy? Dell now *actively* > prefers
hardware
> with open specs, *even for systems they pre-install Windows on*!!!
Please have a look at Dell's offerings. Except for the low-end, all laptops have NVidia
boards. Even the "Open Source PC" comes with an NVidia board.
Reverse engineering: more than NVIDIA deserves?
> the number of Linux users who care so much about free software that they will not use the
> NVidia driver must be quite microscopic. (I suppose those are the same users that won't use
> Adobe's flash player, or Adobe Reader -- which is still the only real option for filling
> forms. Personally I don't know any such people, though I'm sure they exist.)
Well, you may not personally know me, but I avoid NVidia hardware so that I don't have to care
about their proprietary driver. (An ATI 9250, with a free driver based on specs they released
before they went closed, gives me a perfectly adequate 30 fps in FlightGear FlightSim.)
I don't use Adobe Reader either, there are fine free PDF readers out there, and I have no need
for filling out PDF forms.
I'll admit to using Adobe's flash player -- but note a key difference between using Adobe's
no-charge downloadable software vs NVidia's you-pay-for-it-by-buying-the-card software. When
Gnash works as a Firefox plugin for YouTube videos, I'll switch.
Reverse engineering: more than NVIDIA deserves?
Reverse engineering: more than NVIDIA deserves?
Cool. I think I last looked at it at 0.7.1. I'll give the latest a try.
Thanks.
Gnash and YouTube
For values of "works" that include non-working, randomly positioned play/stop buttons, 100%
CPU usage, bad network buffering.
I used to use Gnash but if it's installed when I load my 80+ entry Comics tab, Gnash tries to
play *every* flash animation loaded even if it isn't visible on the page or on the tab. At
100% CPU *per animation* load climbs to 20+ before it falls over from memory exhaustion.
Gnash and YouTube
So did you submit the URL to the Gnash guys, so they could debug the problem?
Reverse engineering: more than NVIDIA deserves?
I probably will never know how good or bad proprietary drivers are, because I refuse to use
them. Of course, I'm not thanking NVIDIA for their drivers, just because I don't care about
non-free software. If I would like to use non-free software, I wouldn't use Linux in the first
place.
Reverse engineering: more than NVIDIA deserves?
<SPECULATION>
Some things make me think that eventually binary only drivers will be
banned completely from being loaded into the kernel. If that day comes,
having the most stable and most performant driver will not help the least
and with OSS drivers being available for Intel and AMD cards it might be
that kernel developers will just decide that there is sufficient choice to
go forward with the ban, whether it hits Nvidia users or not.
</SPECULATION>
Reverse engineering: more than NVIDIA deserves?
+1
Worse, newbie hackers tend to break basic functionality for fancy stuff no one sane really
needs to get things done! Intel driver was clearly broken some half a year ago, judging on
numerous frustration reports in mailing lists I follow; Driver "ati" (at least radeon part)
broke for me with 6.7.x -- no it's not fun to get arbitrary 96dpi on 133dpi display at all.
So before moaning and shooting with dirt it's really worth looking without those special
glasses, who's actually doing better even in presence of specs for hardware which does require
some expertise to drive. And that expertise seems to be slowly disappearing in xorg project
with older developers getting silent...
+1
The authors of the ATI and Intel drivers are not `newbie hackers' by any
definition, and breaking basic functionality in development branches while
restructuring things is entirely expected.
Reverse engineering: more than NVIDIA deserves?
See, I have to disagree about this is "rewarding" NVIDIA or hurting other
projects. It's the old "scratch an itch" thing: a group of people like
the NVIDIA hardware and wanted a free driver so they're working on it.
Eight people out of the entire community isn't really a resource suck that
I see hurting Intel and ATI video cards. People are free to start their
own projects to try to get more people to work on Intel and ATI hardware.
I think that what's actually helped NVIDIA to get the interest that it
does in the community is that it provided binary-only drivers that
actually WORKED. Yes, this is an odd situation, but for years they had
the only cards with almost identical 3D acceleration as Windows, while ATI
kept putting out that joking monstrosity that they called drivers. Thus
more people in the community bought NVIDIA hardware and so it got a large
user base. Then comes Nouveau which is doing a great job at making
totally open drivers since there was a critical mass in the community. I
think that a large number of users annoyed with the binary only driver is
what brought this about.
Linux has more open drivers than any other OS because people decided to
write free drivers to scratch their own itch. If we end up with open
drivers that make the NVIDIA cards work as well as the binary drivers do,
so what? People are free to buy whatever hardware they want, and it's
never a bad thing to have drivers out there. Besides, instead of spending
time and energy being grumpy and saying it's rewarding NVIDIA and we
shouldn't do it, I think we as a community should be proud that these
eight developers are making an open driver in spite of the lack of
documentation and corporate help. To me that says a lot about what's
often criticized as a group of non-professional hackers from the
Internets ;)
Reverse engineering: more than NVIDIA deserves?
One can only hope that when sufficient information about the chips gets reverse engineered and
released, Nvidia will open up parts of their driver and/or devote part of their team (which,
from what I'm hearing, they're doing a pretty good job) to the free driver.
IIRC, something similar happened with the NForce driver.
Nouveau's impact is probably greater for users of older hardware
Nouveau's impact is probably greater for users of older hardware
Any of us who have to support the random hardware thrown at us know that broad hardware
coverage is an invaluable asset to us. Worrying about whether eight or nine people working
towards FOSS Nvidia compatibility is more of a gift than we should give to NVidia is
pointless. They could hire 8 or 9 people of the same competence level in a heartbeat, give
them full access to the specs, and have a superior driver out in no time... without ever
really caring about FOSS users other than as just another source of revenue.
Reverse engineering: more than NVIDIA deserves?
I just don't see any way of telling someone not to scratch an itch.. or even worse enforce
people not to do so. I mean how? Revoke CVS, email privs, make a McCarthy blacklist from
anyone who works on Nouveau? [Yes hyperbole ontop of hyperbole..]
Yes it sucks that NVIDIA has basically screwed Linux over and over again.. and gets some
people to fix their stuff. But in some ways you can say the same about most FLOSS. If RMS
hadn't been pissed about proprietary Emacs and Linus hadn't been peeved about the state of
proprietary Unix.. Would we have openssh if the OpenBSD team had not been peeved about the
propietary nature of later SSH's? Would we have the amount of Free Software that we have
today?
So I think it is a two edged sword that we need to think of how to better reward companies
that play with us versus looking at how to punish those who 'reward' those who don't.
Reverse engineering: more than NVIDIA deserves?
"""
If RMS hadn't been pissed about proprietary Emacs
"""
When was Emacs proprietary?
Reverse engineering: more than NVIDIA deserves?
One example of a proprietary Emacs was Gosling Emacs, which started out open source (of a
sort) then went proprietary as Unipress Emacs. It was nowhere near as nice as GNU Emacs once
that matured, but it was around before that - early 80s at least. I once wrote a filtering
newsgroup reader based on Gosling Emacs - this tool worked quite well but dealing with the
fairly horrible and slow Mocklisp included in that Emacs was painful...
Reverse engineering: more than NVIDIA deserves?
My recollection of Gosling Emacs was that the embedded language was more C like than Lisp
like... I might even still have a manual in my basement somewhere.
Reverse engineering: more than NVIDIA deserves?
Reverse engineering: more than NVIDIA deserves?
It depends what you think the pain points for NVIDIA actually are. Having done similar sorts
of things in the past, I think it's mainly:
1. Running an entire engineering team just to keep up with the latest greatest API breakage so
the binary module will still work
2. Having to make sure the distribution model works on a huge variety of vanilla and vendor
kernels (this becomes a huge validation and installation effort).
Having a reverse engineered Nouveau driver does nothing to address either of those.
Furthermore, for an evolving hardware platform (which the NVIDIA graphics cards are), reverse
engineered drivers are always behind the curve because you actually have to see the hardware
to test and fix things.
Conversely, I don't think Intel (and eventually AMD) actually expect the community to take
over their drivers. In many ways, companies like to keep control of their products, so they
tend to hire the driver writers who work on them anyway.
The key benefits companies gain from open sourcing are
1. Community assistance: bug fixes, end test cases (even Intel can't test all their chip
configs)
2. Freedom from distribution pain ... it's just upstream and the distros ship it
automatically.
3. Franchise in the development model. Imagine what would happen if Nvidia sent an email to
x.org asking for changes in the X server to support their hardware ... now imagine what
happens when Intel does it ...
So Nvidia still has all of the costs and none of the benefits even with the Nouveau driver;
it's hardly a gift to them (in fact, if they actually look at it it might end up being a
trojan horse because they could get GPL contamination of their binary blob).
Reverse engineering: more than NVIDIA deserves?
Intel very much wants people to work on the graphics (or wireless or .. or ..) drivers. And
thankfully this is being done somewhat in the last year or so. It's not about control really;
There is pain to have binary graphics drivers as you mentioned; but it goes beyond the kernel.
X is (thankfully!) now going forward at a faster pace since the X.org split/modularization.
The one big thing Open Source has over proprietary "parasites" [1] is to keep the pace of
innovation up to a level that users pick the new innovated versions over proprietary older
versions. This is what the Linux kernel has over, say solaris. And now X.org is thankfully
innovating and improving rapidly.
To some degree the Linux desktop could use another burst of innovation; while there's a lot of
work going on there I'm at the point where I'm hoping that a next big thing will rock the boat
there and innovates the Linux desktop leaps beyond the current status quo.
[1] No disrespect, I mean companies that build on top of open source but themselves giving
nothing or little back. Some open licenses allow that, others.. less so. Either way, the
parasites exist.
Parasitism
> I mean companies that build on top of open source but themselves
> giving nothing or little back. Some open licenses allow that,
> others.. less so.
*All* Free Software copyright licences permit any product to be
'built on top'. It's part and parcel of the Four Freedoms.
Copyright can only restrict what is 'built on top' in circumstances
where the new product is considered to be a derivative work; to
make or to disseminate distributed works requires permission from
the original copyright owner, except where Fair Use provides otherwise.
If something 'built on top of' a free work is not a derivative work,
it is not subject to the free work's copyright licence.
Many free software copyright licences are so permissive as to allow
even derivative works to be distributed on non-free terms.
Parasitism
If something 'built on top of' is not a derivative work then how the hell you can say it's 'built on top of' ? It's separately developed thing which is just tied to free software somehow...Parasitism
/proc - may be, /sys - not in your life
/proc - may be, /sys - not in your life
Parasitism
Defining the boundary between "derivative work" and "mere aggregation" is not a matter for the
kernel people to decide. It's a matter of copyright law. I have no idea how a court would
actually rule on this issue, but I thought I'd point out that it's not really for the kernel
people to decide. I suspect, however, that a court might think any arbitrary technical
"boundary" -- whether that be system calls, dynamic linking, whatever -- is irrelevant. US
Copyright law says that derivative status depends on whether the work in question is "based
upon" preexisting work.
Imagine the following scenario: A video card manufacturer writes a Windows driver for its
product. Later, they decide that they'll port the existing Windows driver to run on Linux.
(Whether that is actually feasible is not relevant to this thought experiment.) So using the
"clean room" approach, one engineer documents the Linux system calls that the driver needs to
hook into, and posts that information publicly. A second engineer takes that documentation
and uses it to port the driver. Is this driver now "based upon" the Linux kernel? The bulk
of the software existed before the kernel entered the picture, and the guy who developed it
never even looked at the kernel code. Is the API documentation itself a "derived work?"
That being said, I don't approve of (and try to avoid) proprietary kernel modules and
proprietary software in general. I just doubt that there can be a "technical test" to
determine what is and is not a derived work as a matter of copyright.
Reverse engineering: more than NVIDIA deserves?
"(in fact, if they actually look at it it might end up being a
trojan horse because they could get GPL contamination of their binary blob)."
Surely we can all politely stop paying service to this silly idea?
Competition among graphics chips
NVIDIA's 16March'07 10k statment says (p9):
"We expect substantial competition from Intel's publicized focus on moving to selling platform
solutions dominated by Intel products, such as when Intel achieved success with its Centrino
platform solution. ... If Intel and AMD continue to pursue these initiatives, we may not be
able to successfully compete in these segments."
Competition among graphics chips
> "We expect substantial competition from Intel's publicized focus on moving
> to selling platform solutions dominated by Intel products, such as when
> Intel achieved success with its Centrino platform solution. ... If Intel
> and AMD continue to pursue these initiatives, we may not be able to
> successfully compete in these segments."
I think this reveals the current situation much better than any other text in this article and
its reply. What I perceive includes:
(1) good 3D graphics on Linux is, up to the current moment, a near monopoly that NVIDIA is
enjoying;
(2) they can do 3D graphics well basically because of the 3D drivers they have produced;
(3) the inability for others to do 3D graphics well is, at least in part, because NVIDIA
drivers had been close-source;
(4) the near monopoly is economically favorable to NVIDIA since they believe the number of
sales increased by this monopoly can cover the cost of developing them; and
(5) IBM and AMD are leading efforts to create free drivers, and once that matures NVIDIA
expects that they will lose their monopoly.
So my (rather conservative) speculation is that once IBM and AMD gets their drivers right,
NVIDIA will stop developing their close-source drivers. What I expect is that they will
open-source them and ask the community to take over: it is one thing move from "the only
provider" to "one of the providers", it is a completely different to move from "the only
provider" to "the only non-provider".
Giving this light, I think it makes sense to really be focusing on improving the IBM and AMD
drivers. If we will get open-source driver anyway, why we have to create them ourselves? The
only question: the 8 people team might not be interested...
Competition among graphics chips
The original text was about the highly-successful Centrino platform-marketing initiative --
nothing was said about the drivers or Linux at all.
Competition among graphics chips
Then I've understood the whole thing wrongly. Sorry for my misinterpretation.
Competition among graphics chips
Your quote from nVidia talks about Intel and AMD, then you talk about IBM
and AMD. Intel and IBM are completely different companies.
Reverse engineering: more than NVIDIA deserves?
Frankly, the lack of open-source driver development going on in the ATI and Intel camps are
their problem, maybe even their own fault. I'm not sure how depriving NVidia of open-source
drivers helps this situation.
NVidia has put in considerable effort not only to produce good video hardware, but also good
video driver software, on Linux and on other platforms. From Matrox, NVidia, ATI, Intel, and
S3, NVidia is the only one I know of that has interesting performance combined with drivers
that actually work on Linux and other platforms.
NVidia have decoupled their video drivers from the kernel interfaces, and provided a
sophisticated installer that downloads and compiles the kernel interface, the Xorg interface,
and the video hardware driver for the specific circumstances of the end user. This is a big
deal--just about every other out-of-tree device driver I've seen on Linux requires upgrading
the hardware-specific code at the same time as the kernel interface code, which means kernel
upgrades imply device-specific hardware driver upgrades at the same time, which provides an
extra and often unnecessary source of regressions and bugs. NVidia has solved this problem,
and even provided a mechanism for updating the kernel interface layer over the network at
install time.
About the only thing wrong with the NVidia drivers is the license and lack of source code--in
every other respect, they are a model for how out-of-tree drivers should work on Linux.
If open source developers are going to create an open-source video driver, it only makes sense
to choose the most popular chipset as the target. The only thing that would change this
choice is the pre-existence of high-quality open-source drivers for the target, which of
course is not the case for NVidia.
Intel and ATI keep alleging that they are developing or have released open-source drivers,
while NVidia has consistently asserted that there will be no open-source drivers for their
chipsets. Why should the community bother reinventing the wheel when there's a signficant
chipset in the field with no open source drivers at all, not even on the horizon? Vaporware
FUD is a double-edged sword (even if the wares are not really vapor, and the FUD isn't
intentional).
If you're going to go through the effort of contributing driver code for a chipset, you want
the chipset to still be around when you're done. Also, you need a large pool of people to
choose developers and testers from, so the biggest existing population of users is a good
place to start.
Certainly I hope no one is proposing that people should refrain altogether from developing
open-source video drivers; however, suggesting that people develop open-source video drivers
for an obscure niche market chipset, or a chipset vendor who might leave the market in the
near future, is the same as suggesting they don't work on a video driver at all.
Reverse engineering: more than NVIDIA deserves?
> About the only thing wrong with the NVidia drivers is the license
> and lack of source code--in every other respect, they are a model
> for how out-of-tree drivers should work on Linux.
That is like giving a restaurant a great review and commenting that the only bad things were
the food, the ambiance and the price.
Reverse engineering: more than NVIDIA deserves?
Ambiance and price I can possibly see, but food? The whole point behind 3D video drivers,
proprietary or not, is to drive applications that use 3D, and NVIDIA's drivers are quite
effective in that regard.
Reverse engineering: more than NVIDIA deserves?
> > About the only thing wrong with the NVidia drivers is the license
> > and lack of source code--in every other respect, they are a model
> > for how out-of-tree drivers should work on Linux.
> That is like giving a restaurant a great review and commenting that the only bad things were
the food, the ambiance and the price.
Not really - the food and ambience would be akin to the performance and the quality of the
display, which are both great. The price would be akin to, well, the price - also very
competitive.
Perhaps a better analogy for the less than ideal licence, and the closed source blob would be
e.g. the inconvenient location of the restauraunt, and the too-short hours of operation. These
are real issues, but let's give credit where credit is due -
Ristorante Nvidia features excellent food, charming ambiance and competitive pricing, but with
the downsides of an inconvenient location with insufficient parking and restrictive hours of
operation (4 to 7 pm, Tuesday-Thursday-Sunday)
Reverse engineering: more than NVIDIA deserves?
If you want accuracy...
How about in order to eat at the Nvidia resturant they have to pass government laws requiring
you to be blindfolded, drugged, drove around the countryside until your completely
disoriented.
Then when you got to the resturant you are force-fed a certain amount of food of a certain
type.. becuase that is what will make the resturant seem most impressive.
Then to give your review you are forced to sign a EULA were you can't realy tell anybody about
what sort of food is at the place, or what you ate, or what you didn't and did like... but you
can happily talk about future products that they decide to allow you to and you can make
graphs comparing the food you ate to other food you've eaten and how fast the stuff passes
through your digestive track.
This is all to protect that resturant from other competition.. they don't want anybody leaking
anything about their recipes.. even though that has very little to do with the actual act of
eating and enjoying the food.
Reverse engineering: more than NVIDIA deserves?
How about you all stop stretching an analogy well beyond its original context? :)
Read the EULA, please
Reverse engineering: more than NVIDIA deserves?
So this article is missing some info...
1. Intel does get community development on its driver. Red Hat have done a lot of work on the
Intel driver to bring up new X features. Having an open source driver means we can develop new
core X features and things like kernel modesetting. Before I joined Red Hat I wrote a lot of
the kernel modesetting driver for Intel hardware, I also wrote some support for driving the
external chips on those machines. DRI2/modesetting/TTM is all happening on Intel hardware
primarily.
2. AMD have employed Alex Deucher to work on their open drivers, I also contribute code and we
also get major contributions from the community (rs690 support for 3D was a contributor we
have never seen before). They are also paying SuSE to work on radeonhd. However I'm not sure
how much community contribution radeonhd gets. So I don't think AMD have a major advantage
over Intel in this area, they had more community contributors since they stopped helping the
open source community, but they had no real support model for their cards for their enterprise
distros except fglrx. So currently the AMD area is still in major flux and cannot be used as
an example of a stable situation.
3. NVIDIA only care about money. The reasons for Intel/AMD to open up their drivers won't work
on NVIDIA, NVIDIA don't have major money to lose in other areas due to not having open source
GPU products, Intel and AMD do. The biggest problem NVIDIA will have will when the community
developed driver starts being shipped in enterprise distros their enterprise customers will
start to push back on them to support it instead of supporting the nv driver. This happened
before with network drivers. How this will work out is unknown at present, but I think
developing the nouveau driver is not in any way helping NVIDIA, their customers are not you
and me, they are Dell and HP, until they put pressure on them anything the community does is
irrelevant.
It's all about Ubuntu
very good comment; I totally agree that only HP/Dell/IBM/etc can make nvidia change their
mind.
However I suspect it's all about Ubuntu. 3D cards ship primarily on non-server machines (just
to avoid the word "desktop":), and that's the domain ruled by Ubuntu (and Red Flag in PRC). So
it's waiting until Ubuntu changes to nouveau to see any kind of traction.
I hope nouveau gets to a level soon where distros can default to it.
That doesn't mean it needs to have full complete super duper fast 3D; it means it needs to
have everything for a good destop (xrandr, composite etc) and maybe some basic 3D to make some
of the compiz fancy stuff work
Reverse engineering: more than NVIDIA deserves?
There you have it, I agree completely that a likely scenario is that the nouveau driver gets
popular, and NVIDIA is compelled into supporting it or open sourcing their own.
As have been stated my many posters, people buy NVIDIA to get superior hardware. When the
built-in driver (nouvaeu in the future) starts to be *almost* all what people need, I believe
many customers (individuals and companies/organizations) *will* start complaining about it.
To save face, NVIDIA might need to make sure the driver works better.
Reverse engineering: more than NVIDIA deserves?
I like that people are working on free software Nvidia drivers.. those people are doing some
cool stuff and are bringing in much needed improvements to the whole open source driver stack
that are going to benefit ATI and Intel driver improvements.
I like what they are doing, I appreciate what they have accomplished and what they continue to
do.... So don't get me wrong when I say this:
I'll use Nvidia hardware if I have a need for it. So they'll get my money, and that's all they
care about and I know they couldn't give two craps about my opinion of them. But otherwise I
will avoid them like the plague (and I do.)
Still I tell people that if they need 3D performance in Linux that they should buy Nvidia.
Why? Because that's the truth. And unfortunately Nouveau just isn't going to match the
performance or stability of the Nvidia hardware in any sort of effective timeframe. It's just
very unfortunate. Maybe I am wrong, hopefully I am wrong.
I feel the efforts on creating a open source Nvidia driver is wasted on the end users. So if
the developer's goal is to make open source drivers for people to use on their nvidia
hardware, then that's a total bust from the beginning. They are making a mistake.
Conversely, If their goal is to learn hardware, learn software, and personal satisfaction of
working with very modern hardware (or other things along that line), then that's a entirely
different thing and I wish them all the luck in the world.
The most Nouveau will ever get used for, at this point or any other point in the future (until
the supported hardware is so obsolete that Nvidia cease caring about the people still running
it), is to let Ubuntu boot up with 3D support long enough so that users can click the 'yes'
button to install proprietary drivers.
Why?
* People who care about open source drivers are going to purchase Intel or AMD hardware.
(preferably Intel, IMO, since AMD has released no documentation on 3D stuff and has released
no code for it.. while Intel has released full documentation and full source code)
* People who do end up purchasing Nvidia hardware for Linux either do not care about open
source drivers (or don't care about them that much) or require the performance Nvidia offers
for their purposes, and thusly will install the nvidia drivers due over the open source driver
in almost every case.
By buying Nvidia hardware in the first place they are voting pro-proprietary driver (in the
eyes of the Nvidia corporation) in the strongest manner available to a end user.
* New users to Linux who cluelessly (through no fault of their own) use machines with Nvidia
hardware will simply not have the desire to keep using the inferior performing driver and will
want the same level of performance they are used to in Windows.
That's all.
I want it to be known that I do not have a problem with them working on it. I don't think it's
going to 'reward' Nvidia in any way.. I don't think that Nvidia gives a crap, and even if they
did I don't. Even if it _totally_ benefits Nvidia, I still ain't going to worry about it. Life
is to short to avoid doing good things because it may benefit somebody you have a problem
with.
From a purely selfish standpoint I would like them to devote their time to supporting _my_
hardware (Intel GMA stuff), but I can't see how that fact would excite them or motivate them
in any fashion. I mean I would _love_ to have faster graphics and be able to tell people to
purchase AMD or Intel (for better compatibility and stability) without the caveats of low
performance with OSS drivers.
So my vote is for them to drop everything that they are doing and work totally for the best
Intel driver humanly possible in the shortest time frame. ( They should be happy, and probably
are, that my vote has utterly no impact or control over anything they do, nor should it. )
Do it for the users
bcm43xx
driver became available (now b43
) which has been marvellous for allowing me to use my hardware. Remember that free drivers are a chicken and egg problem. By providing reverse engineered drivers, more users will be able to use Linux effectively on their hardware, leading to a larger market.
nv
driver compared with the radeon
driver — radeon
has full XRandR 1.2 support, whereas nv
has only very limited support. This has been enough for me to choose ATi over nVidia, and because the radeon
driver is good enough to drive my dual-head desktop with OpenGL, I have no need to install proprietary drivers.
The stockpile of existing NVIDIA cards need free drivers. The Nouveau development team's work will deal with these.
Thanks Nouveau; dry up nVidia
Reverse engineering: more than NVIDIA deserves?
While I see the point of the article, I think some mitigation is missing. Nouveau people are
probably great at what they do, but they can only support past Nvidia cards. From my meagre
understanding of how driver development works (and from what I read about radeonhd), each new
generation of hardware needs a very different driver. So future Nvidia cards won't be
supported right after they reach market, while it's quite possible that ATI and Intel cards
are.
So even if there eventually is a working driver for new Nvidia cards, there will still be an
advantage for the other brands: the other cards will be supported in-tree (and out of the box)
right now, rather than a year later when the card is obsolete (from the marketing point of
view I'm quite happy with my five year old Radeon 9200).
Reverse engineering: more than NVIDIA deserves?
There is a flip side to this: if the nouveau people weren't reverse-engineering the nvidia
driver, there'd be less incentive for Intel/ATI to do the right thing.
Personally, I'd love to buy an AGP (or PCI-X) card from Intel, but there's none available. And
I do need a dual-head card, with DVI rather than VGA.
As for ATI, have had endless trouble with fglrx, and am now running my laptop with the vesa
driver. Nvidia's driver is a pain to install, but at least it usually works reasonably well.
Also, don't forget the Open Graphics Project.
Who Cares? (besides gamers)
I'm wondering, is there anyone who *doesn't* play 3D games who even cares about this?
I've been using Intel's open-source drivers for years without any problems. I'm in the process
of buying a new notebook, and the first thing I did was eliminate from consideration anything
that doesn't have Intel GMA X3100 graphics. That still leaves me with a lot of good systems
to choose from.
I guess if I were a gamer I would just dual boot Windows. If you're going to use proprietary
software for something as critical as a graphics driver, why not go whole-hog and use a
proprietary OS as well?
Who Cares? (besides gamers)
A working nouveau is important even to those who use nv; without it, my ppc laptop won't
display to a projector. I haven't had 3d for years -- it sounds nice in theory ;)
Who Cares? (besides gamers)
> I'm wondering, is there anyone who *doesn't* play 3D games who even
cares about this?
Hm. I care about things like: stability, low noise / power consumption /
heat (especially in summer, integrated gfx chips are great here), good
video quality & connections, full support for latest X extensions (Xv,
Xrandr, ...) etc. Some 3D support is nice, but my 3D gaming is mostly
retro, so about any 3D card suffices.
> I guess if I were a gamer I would just dual boot Windows. If you're
going to use proprietary software for something as critical as a graphics
driver, why not go whole-hog and use a proprietary OS as well?
Or buy a games console...
Who Cares? (besides gamers)
I bet a lot of the nVidia linux users are windows dual-booters. I, for one, dual-boot Windows
to play games. But I still use the proprietary nVidia driver because it beats the pants off
the nv driver. In fact my current notebook doesn't even work with the nv driver, but even on
my last two PCs the nv driver was only barely adequate.
Some users have certain requirements from their hardware: for me, acceptable 3D for games is
one requirement, and also, I stopped buying ATI after I had numerous bad experiences with
their (proprietary windows and free linux) drivers. When I buy a nVidia card I know that my
3D will work, my dual-head will work, and my TV-out will work. And because I do use Windows
for gaming I can't settle for an Intel card even though I would like an open driver.
Given that I am already going to buy a nVidia card for use in Windows, is it still a
contradiction that I want a free driver in Linux? I'd say no. My only other choice would be
to buy a game console, but that's even less free/open than a computer.
As for "going whole-hog" and using Windows exclusively... let's not exaggerate. Windows is
for certain tasks only, mainly games. Just because I play games doesn't mean I shouldn't be
using Linux the rest of the time.
Who Cares? (besides gamers)
> I'm wondering, is there anyone who *doesn't* play 3D games who even cares about this?
Content producers (as opposed to content consumers) 3d modeling, games/3d-enabled soft
development, CAD applications (though I'm not sure there are Linux apps for the latter). 3D is
used not only to draw some fantasy settings, but to visualize real-world structures
(chemistry, medical, physical appliances etc). Another use for 3d hardware with Linux is to
build public terminals/etc with 3D eye candy. Stuff like that. This crowd is not large,
though.
Who Cares? (besides gamers)
> This crowd is not large, though.
That was my thought, that this is 99% gamers, and 1% everything else.
OT: S3 / VIA adapter drivers?
Off-topic: what's the status of S3 Unichrome and such drivers on on-board Via chipsets?
How (un)cooperative is Via?
http://wiki.openchrome.org/tikiwiki/tiki-index.php?page=3DStatus
OT: S3 / VIA adapter drivers?
Missing perspective
There's an open driver for Intel, and the AMD/ATI people are slowly delivering specs - but
where exactly does the contributed drivers/specs plug in?
Until recently a little of it went into the kernel, and then a duplication of effort in X,
with some 2D stuff completely divorced from the 3D stuff that went into an opengl
implementation. And using both frame buffer driver and X.org driver for the same card was
discouraged (sometimes or always? dunno).
Now stuff are evolving into a coherent infrastructure, with Gallium 3D picking up the 3D
interface - and kernel duplication slowly migrating out of X.org (with the vision of not
having to run X as root some time in the future, yay :). If this infrastructure is built
primarily around one hardware implementation, it may turn out not to be as useful as we are
currently hoping. So the more, the merrier.
I think Nouveau development isn't detracting from the other free implementations, since it
adds in the common parts of free 3D graphics and since it raises the general level of
expertise (sp?). Do we know for a fact that these developers would have been working on
Intel/ATI drivers, if there had been no Nouveau project? (Well, I mean apart from David
Airlie... ;)
Old hardware
I run the nv driver on my laptop and on my desktop. I use an nvidia card in my laptop because
the Intel chip would steal bus cycles. I put a spare nvidia card in my desktop machine last
month because the X server driving the Intel chip had begun crashing; thus far it hasn't
crashed with the nv driver.
I don't see any way for the above to be forced into the notion that stopping development on
Noveau would punish Nvidia or help ATI or Intel. That seems like many interesting and
plausible hypotheses that turn out to fail to connect with anything in the real world.
Reverse engineering: more than NVIDIA deserves?
I am actually planning to buy an upgraded video card since the last 6 months...
Although their drivers are open source and well supported Intel has nothing interesting at the
moment. And I'm so damm tired of fighting with closed source drivers (either ATI or NVIDIA
particularly with their new legacy ones) that I'm currently waiting for either a working
Nouveau driver and update to a GeForce FX abc or a working Radeon driver and buy an AMD/ATI
xyz.
I'll probably end-up waiting until next Christmas before making a final choice since I presume
one of the two projects (or even both) will have sufficient supported hardware in both 2D &
3D.
I actually dream that, running Linux, I may end-up having that choice to make between the
two... unless nVidia buys-up AMD :)
Reverse engineering: more than NVIDIA deserves?
Keep in mind that both Intel and AMD are bundling 3D accelerators onto new
processors, and this has been common knowledge for something like a year
now:
http://hardware.slashdot.org/article.pl?sid=07/03/29/1252203
http://arstechnica.com/news.ars/post/20070211-8810.html
Here's actual product names (Intel's "Nehalem" and AMD's "Fusion") and
shipping schedules. It all comes out about a year from now:
http://www.reghardware.co.uk/2007/11/26/intel_cpu_integra...
Ars Technica has a good summary of Intel's follow-up, explicitly comparing
Intel's plans to IBM/Sony's Cell processor:
http://arstechnica.com/news.ars/post/20070416-intel-offic...
http://arstechnica.com/news.ars/post/20070604-clearing-up...
The basic driving force is that transistor budgets keep going up. Even
the venerable Pentium M had 2 megabytes of L2 cache, and Core 2 duo and
Core 2 Quatro put 2 or 4 entire processors on the die in an attempt to
soak up the transistor budget and translate that into performance gains
and profit margins. But most desktops can't soak up more than a couple of
processors before it's just not noticeable. (Servers may be able to, and
developer workstations can, but most home computers doing email, web
browsing, watching the occasional youtube video... The third and fourth
cores just sit idle, let alone cores 5-8 on an 8 way system.)
Bundling a GPU on the die is something all end user desktops want these
days, and it just _sucks_up_ transistors. Now instead of 4 processors
sharing a pool of L2 cache, you can have 2 processors and a GPU, and your
average desktop can keep them all running at full speed. It also means
you can increase the L2 cache size again (because it's now used as texture
memory too, so you can go to 16 megs, 32, 64...), and it means that the
highest clocked hardware in the system is locally processing graphics with
the fastest possible interconnects with the CPU. (There isn't even a
_bus_ between the CPU and GPU anymore.)
Of course if Intel's doing this, AMD is too. (Why do you think they
bought ATI?)
Where does that leave Nvidia? Well, nvidia is trying to stay relevant by
purchasing a physics engine company and hoping all the game consoles start
using that:
http://www.pcper.com/article.php?aid=222
http://technologyexpert.blogspot.com/2008/02/geforce-8-gp...
That's really what Nvidia cares about: game consoles. If they have to
make a choice between game consoles and PC GPUs, it's pretty clear where
their money comes from.
They're also trying hard to grab as much volume as they can before Intel
and AMD bundle GPUs on-die with the CPU, perhaps to get game developers
hooked on their physics engine before the market for standalone 3D chips
goes the way of the northbridge:
http://www.reghardware.co.uk/2007/10/29/gpu_market_q3_07/
To which Intel replied:
http://www.reghardware.co.uk/2007/09/17/intel_to_buy_havok/
*shrug* It's interesting to watch. The market is driving Intel and
Nvidia into direct collision (especially as people try to use GPUs as
general purpose compting devices), and Intel is pretty darn good at what
it does...
Reverse engineering: more than NVIDIA deserves?
Interesting read, thanks.
Reverse engineering: more than NVIDIA deserves?
I think this article is a surprisingly extreme critique of what a bunch of people decide to do
with their own time.
NVidia really isn't getting free drivers out of this. Unless they actually support this
project, they're going to have to keep providing their own drivers. The Nouveau devs benefit
because they're having fun, and the community benefits from open source drivers, but NVidia
gets nothing unless they officially start supporting the Nouveau project. People who choose to
not buy NVidia hardware for lack of openness will still not buy their hardware, and people who
don't care about openness will continue to not care.
Reverse engineering: more than NVIDIA deserves?
> I think this article is a surprisingly extreme critique of what a bunch of
> people decide to do with their own time.
Amen. And with their own computers, I might add.
Nvidia has been our -- well mine, at least -- sole provider of working 3D (and other features)
on Linux. Sure, I'd prefer an open source driver, but I actually, you know, *use* my
computer, I don't keep it as a tribute open source religion.
I used to laugh about the old-times comparison of free software to communism, but the emphatic
instence from vocal elements that I should only use my computer in specific ways to fulfil
their moral views, that is right there with oppressive dictatorships - and thank god these
people don't have any actual way of enforcing this. (Although attempts are being made at
sabotaging my user experience by legal threats against distributors)
What ever happened to the idea that open source was about the freedom of the user? That I
shouldn't be bound by the whims of my software supplier to decide how to use my own computer?
You don't like nVidia, fine: go buy Intel or whatever floats your boat. Help ATI, the
prodigal son of open source, develop drivers. Blog about configuration. Or, flame me for
being morally corrupt and not part of the community (although I do develop some free software,
being part of the community seems to be more about moral outrage about the free, individual
choices others make. Who's our glorious leader anyway, Linus Torvalds or L. Ron Hubbard?)
Corbet says:
> NVIDIA, instead, is giving us nothing - and, in return, we are giving it
> an eight-person development team dedicated to the production of free
> drivers for its hardware.
Nvidia has done nothing for the free software community, well, except making free software a
viable option for more people. Without Nvidia, I'd still need to have a Windows partition.
And I don't know who the "we" are here - I certainly aren't paying for anybody to work on it.
It seems very strange to be doing all this "giving", and at the same time be so annoyed about
it. I guess it's those poor Noveau folks, they just aren't capable of comprehending the
consequences of their own choice? I bet they feel really good about Jon helping them see the
error of their ways. Or maybe they, like me, aren't part of the "community"?
I nominate that paragraph as the most offensive thing on LWN so far.
Here's what I think:
1) In contrast to the vocal moralist faction, lots of Linux users will continue to buy
nVidia as long as it remains the only working solution.
2) If and when Noveau is working well enough, people will start to switch, at the point
where the driver-features/emotional-attachment-to-free-software ratio is right.
3) If and when ATI delivers a working open source driver, most Linux users who need 3D will
buy ATI - unless nVidia also provides an open source driver. At least, this is what I will
do.
What will *not* happen, is that people will buy non-working ATI cards just to satisfy other
people's sense of morality. And if Linux continues being the vehicle for moral enforcement,
and stops being the right tool for the job, I predict a glorious future for FreeBSD.
-k
Your whole post was a tissue of logical fallacies, but I'm just going to
mention this one because it's rather amusing:
Reverse engineering: more than NVIDIA deserves?
I used to laugh about the old-times comparison of free software to
communism, but the emphatic instence from vocal elements that I should
only use my computer in specific ways to fulfil their moral views, that is
right there with oppressive dictatorships - and thank god these people
don't have any actual way of enforcing this.
i.e., they're not like oppressive dictatorships? I'd say it was an
essential characteristic of oppressive dictatorships that they can dictate
and oppress.
Reverse engineering: more than NVIDIA deserves?
> i.e., they're not like oppressive dictatorships?
Yes. They share the mentality, but thankfully not the means.
> Your whole post was a tissue of logical fallacies, but I'm just going to mention this one
because it's rather amusing:
Since it apparently wasn't clear enough what I meant, allow me to restate:
Some people think that because they (are part of a "community"|contribute to the Linux
kernel|believe in the right deity|are devout members of the right party), this equips them
with the superior morals to decide what others should and should not do - as well as claim
ownership of others' resources (confer Corbets "we", relating to the time and effort of eight
people developing Nouveau drivers, or the notion that the nVidia binary driver is somehow a
derived work of the Linux kernel).
I find the notion offensive, and counter to the spirit of free software as I understand it.
Now if you have a problem with that, I'm sure you can do better than offer patronizing and
prejudicial remarks. Can't you?
-k
Reverse engineering: more than NVIDIA deserves?
I've only encountered people trying to tell volunteers what to do a few
times in more than a decade of observing numerous development lists. In
each case the result is... well, generally the poor sods get laughed at,
whch is even worse than flaming :)
It seems to me that you're complaining about a vanishingly rare problem
which is easily dealt with (oh, so you're *not* paying us, but presume to
instruct us? We'll ignore you. That was easy.)
rhetoric in the movement
There are a few issues going on here that need to be disentangled from each other in order to
make sense of it all. One of them is particularly interesting to me (the "we" confusion)
because I was accused of the same thing not too long ago and it really stung. Thus, I am
motivated to engage in this exercise...
I think Mr. Corbet was quite clear at the end of the piece in saying that no one can force
anyone to stop developing free drivers and explicitly stating that it was an admonishment to
each individual developer to consider the consequences of their free software activities in a
particular way. So, while the offending paragraph, taken out of context, might be interpreted
by a reader as suggesting an effort to control the actions of others, that was apparently not
the intent of the piece. Invoking notions of oppressive dictatorships is just inflammatory
rhetoric.
That being said, I think Mr. Corbet was also using a rhetorical style similar to the one that
I was called out on once; that is, using the pronoun "we" in an imprecise way, assuming that
the reader would interpret it "correctly" each time. This is what I think lies at the root of
the controversy stirred up by this piece. Mr. Corbet is addressing an audience that is
generally affiliated with the Free Software movement to some degree, but which is quite
diverse within that spectrum. He is usually very successful at this tricky task by
maintaining an objective distance, crafting solid arguments and drawing fairly unprovocative
conclusions. In this case, the argument is a provocative one and the fact that the audience
is heterogeneous makes the word "we" ambiguous, especially when it is attached to assumptions
about motives and goals.
The Free Software movement sees software freedom as improving the human condition and works to
promote that freedom. But, the Free Software *movement* is not a coherent organization with
any official structure. There are no membership criteria, no elections, no rules. Thus, no
one can presume to speak for all of those who might consider themselves to be a part of that
movement. Each separate event might appeal to the minds of some in the movement, but probably
not to all and not uniformly. Take, for example, the anti-DRM work being undertaken by the
FSF. Is it just "free market" economics? If it's self-injurious to the perpetrators, why not
just let the market sort it out? Is it even relevant to the Free Software movement? These
are all controversial points, I think. Each person may take a different stand and yet all
might consider themselves to be part of the Free Software movement.
At the same time, the Free Software movement is an embattled and diverse minority, which is a
tricky thing to navigate and not to be handled lightly. Tactics and philosophies differ, and
people aren't clear on why that is. So, confusing "we, the community" with "we, those in this
movement who believe as I do" is easy to do.
An embattled minority is also in need of constant encouragement: to keep fighting, to not lose
hope, to remember its successes and learn from its failures. Mr. Corbet is very good at
encouraging this movement. In a diverse movement, however, encouragement can seem
presumptuous when the motives of the author and the reader don't align... which leads me to
my last point...
I believe the author (Mr. Corbet) here is conflating the goals of two distinct currents in the
Free Software movement: the "moralists" and the "pragmatists." The moralists' goal is a
world with 100% free software so that no one can be harmed by the evils of proprietary
software. The pragmatists' goal is wider acceptance and use of Free Software, to the point
that it makes life better/easier for some people.
In this piece there is an emphasis placed on pragmatism (leverage against for-profit entities,
perceived benefits, market competition, etc.) and at the same time there is an implied moral
judgment in favor of free software (proprietary -> bad; GPL -> good). This could leave some
readers with the impression that the author is making arguments about tactics for an
inherently amoral medium (markets) based on moralist principles. I think I've detected this
conflict many times on LWN, but it's hard to delineate. It is usually successful in
straddling the divide in the community, but it is also open to criticism from both sides.
That can also give some undeserved credibility to certain forms of weak criticism. The
criticism here, for example, is essentially a laissez faire or libertarian argument that no
one should tell anyone what to do and that free software will rise or fall on its merits and
that that is acceptable (i.e. there is no morality).
This argument, when boiled down to its essense, is hard to swallow. People in the Free
Software movement generally recognize that it is in a minority position and that the current
dominant players have rigged the system against it (software patents, litigious front
companies, exclusive OEM deals, rigged votes in standardization bodies, etc.). Having no
coherent plan or strategy is just foolish in the face of such entrenched interests. The
market doesn't operate on merit.
Moreover, attacking people who are debating and proposing strategies as if they were trying to
impose their will on others is disingenuous and counterproductive. Everyone has the right to
express their opinions about strategy; since no one can force them upon others, they could
never *be* attempts to do so. Therefore, they must be considered to be, at most,
exhortations, addressed to a diverse but generally interested audience. These ideas will be
received to varying degrees and some may adjust their thoughts and/or actions because of that.
That is the most that one can do in a loose confederation.
I also feel the need to point out the gains that have been won for the Free Software movement
through coordinated action. Linus and the other core contributors coordinate kernel
development (and there is even an annual conference for planning how to do it!), resulting in
an unprecedented pace of development. The FSFE launched a coordinated attack against software
patents in Europe and actually defeated software patent legislation in the EU! The EFF
coordinates and plans their legal strategies for fighting for digital freedom; result:
http://www.eff.org/victories. The DefectiveByDesign (DBD) team coordinates their actions to
expose the evils of DRM; one could argue that their success in spreading this awareness is at
least partially responsible for the recent abandonment of DRM in music. And each free
software project with more than one worker (developer, artist, marketer, etc.) is a
microexperiment in coordination; each finds its own balance, but coordinate they must.
Result: there are thousands of free software packages to choose from that allow for hundreds
of GNU/Linux distributions to meet the needs of millions of users worldwide.
The upshot: let the debate continue, because an embattled minority must always been
questioning its strategy, but if all you're essentially saying is "shut up," then you're not
helping.
Don't buy Nvidia!
For what it's worth ... I am currently specc'ing up some Lenovo ThinkPad laptops for my
company and I am specifically going to order a lower spec or get a custom build with Intel
graphics rather than purchase the NVidia graphics option.