Efforts to bring glitzy new graphics to Linux are fueling an old conflict: Does proprietary software belong in open-source Linux?

The issue involves software modules called drivers, which plug into the kernel at the heart of the open-source operating system. Drivers let software communicate with hardware such as network adapters, hard drives and video cards.

The use of such drivers is common with Linux, but it is all but necessary for the recent push to bring eye-catching graphics to the operating system user interface. To deliver 3D effects and similar visuals for the desktop, the software taps into a computer's graphics chip. And although the Linux kernel is open-source software, drivers from dominant graphics chipmakers Nvidia and ATI Technologies are not.

But while the FSF tries to be an irresistible force, they're running into an immovable object, in the form of graphics chipmakers, which are keeping 3D graphics drivers proprietary.

"If Linux expects broader vendor support, the community needs to capitulate to proprietary software involvement," said Raven Zachary, an analyst at The 451 Group.

Help wanted
To write open-source graphics drivers without help from Nvidia or ATI is tough. "The proprietary drivers are largely the only choice for those with modern graphics processors. Nvidia's GeForce 7 series and ATI's Radeon X1000 series both presently do not offer any open-source driver," said Michael Larabel, founder of high-end Linux hardware site Phoronix.

Efforts to reverse-engineer open-source equivalents often are months behind and produce only "rudimentary" drivers, Larabel added.

ATI's driver remains proprietary for intellectual property reasons, the Canadian company said. "There's third-party intellectual property that ATI has licensed that is required by law to be protected," said Matthew Tippett, ATI's Linux software engineering manager. "And the graphics market is hotly competitive, and particularly in the high-end cards, we have lots of intellectual property. We want to maintain the proprietary, trade-secret nature of that as long as possible."

For Nvidia, intellectual property is a secondary issue. "It's so hard to write a graphics driver that open-sourcing it would not help," said Andrew Fear, Nvidia's software product manager. In addition, customers aren't asking for open-source drivers, he said.

Some Nvidia components are open, including some driver configuration tools and a driver component that interfaces to the kernel. "We believe in open source where it makes sense," Fear said.

Both companies are cooperating with efforts to give Linux a 3D interface competitive with Apple's Mac OS X and Microsoft Windows Vista. ATI is working "closely with Novell" on its Xgl software, Tippett said.

Nvidia prefers the design of the AIGLX approach from Red Hat, said Andy Ritger, manager of Nvidia's Unix graphics drivers. "The eye-candy stuff is quite cool. I think it looks better than Vista, but I'm biased," he said.

Open-source advocacy
Linux founder and leader Linus Torvalds has argued that some proprietary modules are permissible because they're not derived from the Linux kernel, but were originally designed to work with other operating systems. If they had originated from the kernel, that would require them to be covered by the GPL.

"Historically, there's been things like the original Andrew file system module: a standard file system that really wasn't written for Linux in the first place," Torvalds wrote in a 2003 mailing list posting. "Personally, I think that case wasn't a derived work, and I was willing to tell the AFS guys so."

The FSF sharply disagrees. "If the kernel were pure GPL in its license terms...you couldn't link proprietary video drivers into it, whether dynamically or statically," FSF attorney Eben Moglen said in a January interview.

Related Podcast

Which way will Linux tilt?
Stephen Shankland explains why a a move to bring sharper graphics to
Linux has rekindled a dormant debate over whether there's a place for
proprietary software in open-source Linux.

Kernel developers have kept proprietary drivers at arms' length, adding a feature years ago that could be used to block proprietary modules from loading. And in February, Greg Kroah-Hartman, a kernel programmer who works for Suse Linux seller Novell, added a patch that will trigger such a blockage for the USB subsystem he maintains.

"The USB subsystem will not be allowing closed-source kernel drivers to register with it" after February 2008, according to a note with his patch, posted online. Those with proprietary functions can move them above the kernel level, he argued. But his position against proprietary modules has sparked concerns about blocking use of some ISDN networking gear.

A proprietary driver, even if it works, raises complications. "If you have an open-source kernel...and you add a binary module into the mix, it reduces your ability to provide the customer the same level of service," said Dirk Hohndel, Intel's director of Linux and open-source strategy.

This mentality that all propietary drivers must be eliminated is a closed one. Let's face it: Linux is an open source system growing in a propietary software world. If we try to completely separate propietary technology from the OS, the commercial vendors will not support it. In this case in particular, the hardware graphics chips vendors. Linux people should be friendly to these guys, because, while propietary, they HAVE provided Linux drivers for their video cards. That's more than most hardware companies do.

The Open Source/Free Software movement should not give the hardware vendors an easy way to keep their drivers proprietary. Keep it like it is, or make it just a little bit more difficult, but for heavens sake, don't make it easier. If it was easy to keep the drivers proprietary then hardware companies would be less prone to even consider making their drivers open source or free (as in freedom). And let's face it, open source would not be open source if the source wasn't open... It's as easy as that.

At least Microsoft provides competition with products. The likes of the FSF just want to hang the albatross of OS dogma on Linux and hold it back.

If a user wants to avoid closed drivers or other closed software that is their choice. Who is FSF or Redhat to limit choice.

Odd that Microsoft has to my knowledge never suggested that users should be blocked or legally prevented from running open source on Windows, but the "Lets Be Free" guys are now about "My Way or No Way."

A few more legal threats like these and I can see vendors and key business suppliers of Linux drivers and tools wiping their hands of the whole thing.

This type of internal dogma an restriction is more harmful to Linux than and silly SCO lawsuit.

Open source users are afraid that once closed source drivers are allowed to exist than proprietary companies will take over the Linux market. Think about this... the first major video chip to make their drivers open source is going to get a whole lot of support from the community. More development is going to be done for their hardware, and more Linux users will buy their hardware. We don't need the FSF to hard ball open software for Linux. The incentive to open their software is already there.

In the end you will have neither. Once you cave in to an hardware vendor monopoly, the same hardware vendor has leverage to monopolise the rest of the platform.

History is ridden with examples of this:* Microsoft - leveraged their virtual OS monopoly into an Office app monopoly, then into a browser monopoly.* Electric Boat - in 1898 Isaac Rice used his virtual storage-battery monopoly to buy out several of his customers including John Philip Holland's submarine company.* Standard Oil - leveraged a monopoly in the oil refining business into distribution and extraction.

In the end you will have neither. Once you cave in to an hardware vendor monopoly, the same hardware vendor has leverage to monopolise the rest of the platform.

History is ridden with examples of this:* Microsoft - leveraged their virtual OS monopoly into an Office app monopoly, then into a browser monopoly.* Electric Boat - in 1898 Isaac Rice used his virtual storage-battery monopoly to buy out several of his customers including John Philip Holland's submarine company.* Standard Oil - leveraged a monopoly in the oil refining business into distribution and extraction.

The point really isn't that the FSF or Red Hat are attempting to prevent you from using closed-source drivers. On the contrary, they endorse it -- to a point.

Red Hat will not generally include closed source drivers with their products, because in doing so imposes restrictions on the distribution of their product. So, for those vendors that don't release specs for their hardware yet provide binary drivers, a user needs to download the driver from the vendor (or obtain it on a CD). This is the situation for Windows -- where every piece of hardware needs a separate driver, and only a small subset actually ship with the OS itself. However, for Linux, generally you have all the drivers to start with -- with the rare but notable few exceptions.

The advantage to open-source drivers is, of course, that the life-cycle of the driver is much longer -- support becomes effectively indefinite and matures (which is rare for commercial drivers, which typically fall out of active development and support faster). Further, open-source drivers are more rapidly updated, optmized, and ported.

Ostensibly, hardware vendors (even the majority today that develop their hardware and test it under Linux before writing Windows drivers) don't wish to release hardware programming specs so as to preserve "trade secrets" related to their hardware. That's the only excuse that makes any sense, and it's a poor one. It's hardly difficult for an experienced computer engineer to elucidate the hardware programming specs from a binary driver.

nVidia and ATI are in a position to break the GPL license that "business" hardware vendors are not. Linux is popular and gaining more popularity as servers for businesses. Networking gear and Storage vendors have a business incentive to obey the GPL license and provide open-source kernel drivers.

But businesses don't need fancy video cards and sound cards. Those types of hardware are mostly for home users. The leaders of the Linux development community are trying to adopt Linux in the home, but know that video, audio and optical media drivers are needed to help that adoption.

So nVidia and ATI are in a position where they have leverage to violate the GPL license. And they will continue to violate the license while they have leverage to do so.

The only thing I can see out of proprietory drivers is that the hardware manufacturer may have some ability to keep ahead of their competition be not giving away their work, as so much is processing control of the hardware is now done with control code. Letting the chip manufacturer sell their fancy new chip to many parties for them to fully develope it to various potentials. Admittedly, a sneaky competitor could still reverse engineer their drivers, BIOS, etc. Yet, without the code being fully deciphered that may be much harder to execute. Until better protection is functioning for the hardware developers, I suspect at least a well delayed release of the 'source' will likely persist. Yet after that concern is addressed, one would think that reliably getting the best possible interface with the rest of the system would be to best for both hardware seller and the end user.

I think the FSF hardliners are missing a point: it's my freedom too. It matters to me as a consumer, if nothing else. I'm paying for a product. With video cards, that's hardware and software (as opposed to, say, hard drives, where it's strictly hardware). I think the reason they miss the point is that they're on a crusade and it's all about them and their ideology. So they want to define freedom for us (not unlike the way Microsoft wants to). Cooler heads such as Linus Torvalds seem to get it that freedom should also extend to users. As Patrick Volkerding of Slackware fame is fond of saying, it's your system.

I would have no problem with distro maintainers who want to make "only free software" a point of distinction, but it would be a problem if the kernel went that way. They shouldn't limit my ability to interact with other entities, whether I, as a user and owner, want to stay all open or mixed. I personally want the fastest box I can get, and the nvidia drivers help me get more out of my $150 card than the open source drivers. If the kernel wouldn't allow me to use the nvidia driver I wouldn't have the freedom to do what I wanted to with my box unless I got a different kernel, and in this case I think we're talking a *BSD kernel. As much as I would miss Slackware, I'd be a BSD user inside a week (though Slackware would probably be the last to force that on users).

Besides, the GNU guys are going to have the Hurd (herd?) kernel any day now, right? They can go that way with their kernel and let Linux go its own way.

I feel the extreme of "ban all closed-source drivers" doesn't serve my real world interests. I'd love to see cool 3-D graphics on my Linux desktop. If that requires closed-source drivers, so be it. After all, there are NO open source Windows drivers, to my knowledge.

I think a stable kernel interface should be a high priority, so I can get drivers for Linux and know they will work, be they open-source or closed-source. I don't like having to recompile my drivers for each new kernel version. Sometimes the recompile fails, because of internal kernel changes.

If they wish, the kernel maintainers can add an optional restriction to block closed-source drivers, so those who prefer only open-source drivers can get their wish.

But I feel most people just want to use their systems to do what they want. So, by trying to force all Linux users to use only open-source drivers, the FSF is depriving users of their freedom NOT to use only open-source drivers.

It's like saying the freedom to practice religion means you MUST practice a religion. IMO, freedom to do something MUST entail the freedom NOT to do it---without choice, something is not freedom.

So, basically, I'd like to see users to have the option for closed-source or open-source drivers, and have the tools to enforce their wishes on THEIR system.

So, by trying to force all Linux users to use only open-source drivers, the FSF is depriving users of their freedom NOT to use only open-source drivers. "It's like saying the freedom to practice religion means you MUST practice a religion. IMO, freedom to do something MUST entail the freedom NOT to do it---without choice, something is not freedom. So, basically, I'd like to see users to have the option for closed-source or open-source drivers, and have the tools to enforce their wishes on THEIR system."

Not only that, but the Linux community is showing very little appreciation for the effort NVIDIA (in particular) has put forth in porting its excellent drivers to Linux.

If the FSF is truly taking this strident of an anti-proprietary software approach, I may have to reexamine my use of Linux. I also find the lack of stable kernel interfaces and the associated 'reasoning' very questionable from an engineering perspective.

The extremist fundamentalist's interpretation of the GPL is too strict.

If the open-source community wants linux to evolve into a true replacement for windows, they will have to allow businesses to be BUSINESSES.

Just because a driver ties to the kernel doesnt mean it should have to adhere to the GPL of the kernel. Since my mouse driver ties to the kernel... and it drives my mouse... does that mean that my mouse design has to be open and patent free also? What about the document I created with my open-source editor... do I have to provide that document to the open-source world since I created it with open-source software?

That might sound silly but it isnt any silly'er than saying the drivers have conform to the GPL because it ties to the kernel.

If FSF keeps on this path it may just kill Linux. No company is going to want to use a GPL or GPL v3 OS that requires every thing developed on it to be open to the public.

Keep in mind that the GPL doesn't prevent the use of binary drivers and makers of binary drivers still have the blessing of the kernel developers to do so. However, most distributions won't include non-GPL binary drivers. Users will need to download and install them if they want to use them.

That's unfortunate, because Linux may regress to the sad driver situation pervasive in Windows, and that will do no good for anyone.

Here at Tungsten Graphics we provide a very high level of expertise for open source 3D graphics development. We don't require that our projects release source code, but we find that once the benefits are well understood, that our customer quite often prefers the cost savings of the open approach. Given a choice, and full understanding of the tradeoffs, we consistently see development okay'ed for open source release. We have found the graphics driver development community to be very capable, and we're quite happy to see our work released.

I picture a world where all software is open source and people work in offices and get paid with chocolates and hugs and kisses.

It would be really cool if the entire software industry, heck all businesses used open and freely available software, just wondering who they would hire to work these jobs since nobody could pay any bills?

need to grow my beard and ponytail and start wishing for this exciting make believe world!

Companies such as RedHat and MySQL manage to be profitable just fine by providing open source software.

If all software could be copied for free, at worst it would mean that the programmer would have to be paid for developing the software rather than royalty copies. Fancy that, people would only get paid for doing *real* work!

I purchased 5 motherboards with integrated graphics in an attempt to find a single free or proprietary 3D accelerated graphics driver that worked with xFree86. Only 1 did, the proprietary driver from nVidia. Because of commercial pressures their driver supports all their old cards and many versions of the Kernel. These pressures do not exist for Open Software. The driver from Nvida cost nothing and the license does not inhibit my use of the driver, so as a consumer what do I care that it is not open. They have commercial reason to make sure it works, more so then the open community does. To me this is a win win for everyone.

The nice thing about open source, is the ability to make a "fork" or derivative of the kernel to fit one's needs.

Despite what zealots may say or attempt to do, nothing prevents a kernel distribution from being made with the main goal of a fixed kernel API. This API would act as an abstraction layer between the official kernel API and a kernel API friendly to hardware manufacturers.

While the kernel developers would try to make the API even less concrete or make obvious attempts to thwart such a kernel distribution, it would be hard to prevent, since it would be easier for the hardware manufacturers to write for the fixed API and support the effort to counter the obfuscation of the original kernel.

The effort wasted by the original kernel developers and the desire to concentrate on performance and not politics, will eventually cause the original kernel developers to agree to a fixed API...

I look at it like this (barring confusion with Internet Highway via Internet 2.0): The OS is the road and the apps are the cars. Volvos are not free. I like to drive fast cars or cars with leather and really cool audio, and with lots of space. I have to pay for that. Period. You want to get run over on your bicycle, well that's your right, right?

With an OS, it has always been about the drivers. OS2 Warp failed because the drivers were not there. Microsoft succeeded because they made it policy to make sure all the drivers were present for all hardware.

Look, the highway should be drivable without paying a toll, but I am willing to pay for the car. Get it? To all the Yugo drivers out there, well, granola and tofu are great sometimes and in Santa Cruz, you can walk the streets knowing with confidence, that it is a nucUlar free zone. Right.

Ok, you've paid for "your" car (proprietary software), great! But the thing is, that you don't actually own it. You've been granted the right to use "your" car under some very strict circumstances (End User Licence Agreement). One day, as you happily drive past the cyclists, "your" car begins to make awful noises and then dies. You pull over, get out and pop the hood. Wait a minute! the hood won't open! ***?! While waiting for the tow truck (bug fix) to take your car to the car manufacturer's corporate headquarters, some 2000 miles away, you begin reading the owner's manual which clearly states: 1. This is NOT YOUR CAR.2. You may not give someone else a ride.3. You are not allowed to fix it.4. You may not even be allowed to know what went wrong.5. The car will be fixed on a schedule and at the discretion of the company.6. The fix may be incorporated into the next model year of the car, which you will have to pay for.7. Your car's computer has kept track of all the places you've driven, and a report will be generated and evaluated by the company at the time of service...

You get the idea. If this is what you choose so that you can have your "leather seats" more power to you I guess. A fool and his money are soon parted.

As for me, I'll be happy on my (free software) bicycle, which comes in many colors, with hundreds of accessories, is easy to fix, is faster than your car, and was given to me (and all my friends) for free.

The article mentions you have to download drivers when using OpenSuse. So what? How many of us have gotten Windows installed without visiting half a dozen manufacturers sites to get drivers? Not many, and even less of those ended up with a stable system via windows install media + windows update alone.

Proprietary drivers are a reality. An unfortunate one to a chunk of the LK dev community, who wants to not have a stable kernel, and no stable API/ABI for kernel modules.

These companies sell hardware. They are not so interested in software development save for what minimal portion they need to do to make their hardware a compelling purchase.

Andrew Fear of Nvidia stated that: there's no demand for open-source drivers, that drivers are difficult to write, so it wouldn't help, and that intellectual property (sic) is a secondary concern.

He's wrong on all three. Nvidia and ATI are quite consistently requested to open-source their drivers OR release specs so that at least people wouldn't have to reverse-engineer their hardware. Drivers for these cards are also not especially complex compared to drivers for other hardware that's already been written open-source, save for the fact that there's no documentation about the hardware that could be referred to which is a confounding problem. If Nvidia could simply provide specs to open-source developers and toss in their input to assure they obtain the performance and feature levels they want -- that would save them quite a bit of money on software development, assure a timely maturation of their products, prolonged support life, and reach into new markets.

One has to assume, therefore, that the reason that Nvidia and ATI don't provide information about their products and don't open-source their drivers is that they feel that doing so would compromise and intellectual property (sic) position that would exceed the goodwill and development savings that they'd reap from going open-source. ATI's probably more honest in saying that they have contracts that prohibit divulging certain third-party information -- whether that makes sense or not.

As a result ATI and Nvidia's products cost more and they expend more effort working out issues that may very well be more readily addressed by another party.

I suspect that slowly, these two companies -- like other hardware vendors -- will adapt to the demands of the modern IT landscape and open-source development. The time will come when without an open-source driver, they no longer qualify for use in high-security applications. No audit, no use.

To all those who deride the GNU project and FSF for being to "hardline", please read carefully:

Without the FSF's hardline stance about Free Software, the GNU/Linux operating system would not exist. You may want to read that last sentence again.

Stallman and company have never waivered in their belief that software should guarantee the users the freedom to use, copy, modify, and redistribute software. It is their "hardline" views that have kept the movement *moving*. Had they caved in at any point along the way (as many of the previous commentors have suggested they should) then the "Linux" operating system would have frightening similarities to Apple's OSX. Sure, there may be some free stuff in there, somewhere, but it's so intermingled with non-free, "secret" code, that the users are hogtied and beholden to a corporation for improvements, features, bug fixes, etc.

If you wish to be reliant on a company to feed you your software at their whim, and to be not entirely sure what your computer is doing behind the scenes, please feel free to use OSX or Windows. If YOU want to be in control of YOUR computer, then support Free Software.

How many users of computers are programmers or capable/want to compile their own kernel?My expectation is a very small percentage, so the whole access to the source code is of little use to them.

As a user of computers I believe the ideal of free software as in FSA definition is fantastic and I applaud their work and dedication. The only thing is that it only really works in an ideal world where commercial pressures do not exist. For some software this may be possible, as it is a soft product requiring no physical manufacturing process. Software can be coded and distributed without paying somebody.For hardware this is a different situation. For any company to manufacturer a product they need to incur a real expense. This needs to be recouped in some way so they can do R&#38;D and build the next version with improved performance.

On the specific topic of video driver. I remember the first nVidia Detonator drivers, which had quite poor performance. nVidia updated them and the performance was vastly increased, so for video cards the drivers make a huge difference to the performance and in some cases can be the difference between being the first or second in the speed race. For this reason I can understand why nVidia and ATI would keep their drivers closed source.

Now my personal perspective as a user is that as long as I have the right to use it I dont care if the software is closed or open source. If a vendor will provide me with free (not FSA definition) drivers to improve my experience Im going to take them and say thank you very much. In an ideal world FSA Free would be perfect, but until then or even without that being a realistic option Ill take whats on offer and enjoy it.

Most users are capable of compiling the kernel. It's about as point-and-click as things get these days. Really, that's not the problem so much as the majority of people don't know what a kernel is or why you'd want to 'compile' it.

As for video driver performance, closed/open source doesn't matter. Presuming that both sets of developers have documentation on the chipset, both would be equally capable. Further, the OSS developers would typically be more knowledgable about writing video drivers in general, the specific kernel, and the target feature sets. nVidia's binary drivers, for example, lag behind other vendors' open-source drivers in API, feature, and kernel support. nVidia spends a lot of money on drivers that they know are "behind the curve" -- which is OK for them since they make better hardware than much of their competition, it just means that they aren't everything they could be.

As a user, I'd certainly prefer the open-source driver over the binary, but use the binary if possible. I could be assured that the device would work if I upgrade the OS, it would work if I applied security patches, it would work if I switched to a 64-bit platform, etc. With the binary driver -- no such luck. And I can't use all the features that the platform offers either, because the vendor hasn't implemented support for it or provided documentation that would let someone else do it.

In the case of Nvidia, I've run into that issue. I had to revert to using the lower-performance reverse-engineered open-source driver, which was slower but provided more features, while I waited for Nvidia to support a newer kernel that provided improved support for another piece of hardware. The open-source driver worked, and it was solid, but it's 3D performance was not great. I eventually got the Nvidia driver, which was higher performance, but less stable (and lacked support for some X extensions -- which was alright since I really didn't use them).

Linux supports "driver useage" fine. Your typical Linux distribution ships with drivers for about 5x as many devices as Windows does out of the box -- that's not the issue.

Linux currently also supports binary-only drivers, such as those from Nvidia and ATI.

The issue that this article is attempting to address is whether or not doing so is a good idea. Only a handful of hardware manufacturers these days do not contribute open-source drivers or don't provide hardware specs to allow others to do so.

The open-source drivers themselves have several advantages: they mature and evolve with the OS, they are auditable, when necessary, and accommodate new OS features when they appear. They don't break with security patches, OS upgrades, etc., and they are supported indefinitely rather than the vendor's relatively short product lifecycle. They are also much cheaper for the vendor to maintain and typically integrate better with the OS.

Binary-only drivers have some drawbacks: they frequently lag behind supporting current versions of the OS, they are not auditable and can break following upgrades and updates to the OS. They are comparatively expensive for a vendor to maintain, and support is for a short period of time. And, of course, technically they are violating the kernel license by appropriating portions of the kernel source code for use in the driver itself.

The article is about that last point. The Linux kernel maintainers have granted special license to vendors to make binary-only drivers for Linux despite it being against the general license. It's the gentlemen's agreement that's an issue here.

It's not a small issue either. ATI and Nvidia both have drivers for Linux, for example. They do break when apply patches to the OS, and they are far less stable than their open-source reverse-engineered-but-slow counterparts, and they are lagging farther-and-farther behind the rapid evolution of the rest of the Linux graphical environment.

So, Linux developers are making exceptions to the rules to allow vendors to work with Linux while sharing nothing, but in doing so, the quality, completeness, and stability of those same drivers suffers -- an ultimately the user does to. A catch-22. So how, and where, do you draw the line?

It's interesting to read these comments from 2006 in the light of ATI's considerable opening-up. It's also funny to hear "They're going to stop allowing proprietary drivers, this is the end of Linux!" comments because of course we know now that this was never in danger of happening.

Suggestions that "they should just let the drivers be in the kernel whether or not they are open-source" are ridiculous. You're effectively suggesting that the whole kernel project move to the BSD or MIT licenses - an actual physical impossibility. Saying that there should be a stable kernel interface is not a bad idea, but the lack of stable kernel interface currently doesn't deter anyone from building drivers as they simply make a small open-source wrapper library that links against the kernel headers each time.

Not having a stable kernel API is good in some ways not mentioned in the article, for instance you can choose not to install the kernel headers and make it more difficult for attackers to root your system.

Finally, AMD/ATI has shown that you can open up your specifications and get drivers written mostly by the community. I'm sure Nvidia are looking very seriously at opening up their drivers, because a lot of people are now eying off ATI cards. Why wouldn't you? 3D with an open-source driver! Having just downgraded to the nv 2D driver (which is open-source) and experienced fewer crashes and glitches, I'm really thinking that there's something to all this open graphics stuff.

Report offensive content:

If you believe this comment is offensive or violates the CNET's Site Terms of Use, you can report it below (this will not automatically remove the comment). Once reported, our staff will be notified and the comment will be reviewed.

E-mail this comment to a friend.

E-mail this to:

Note: Your e-mail address is used only to let the recipient know who sent the e-mail and in case of transmission error. Neither your address nor the recipients's address will be used for any other purpose.