Earlier this week Microsoft announced the release of 20,000 lines of device driver code to the Linux community. The code is meant to enhance Linux performance when virtualized on Windows Server 2008 Hyper-V or R2 Hyper-V. Essentially it is aimed at server resource efficiency and reducing the costs associated with managing a company’s IT infrastructure. Nevertheless, as revealed by Vyatta engineer Stephen Hemminger, the release may have been a legal requirement as Microsoft’s code was originally in violation of the GNU General Public License.
Hemminger’s claims that until recently, the device driver code made use of both open and closed source parts – something clearly forbidden by the GPL. Under this license all software and derivative works must be released under the same open source license. It appears Microsoft may have been forced to release the code due to legal pressures. Nevertheless, omitting any reference to legal issues, Microsoft spokesperson Sam Ramji made the statement on the Linux release, “Our strategy is to enhance interoperability between the Windows platform and many open source technologies, which includes Linux, is to provide the choices our customers are asking for.”
For now, the code has not yet been submitted to the Linux kernel and the community will most definitely look at it with a fine tooth comb. The Linux community’s backlash against Microsoft is somewhat justified. In 2001, Microsoft CEO Steve Ballmer spoke to the Chicago Sun-Times and likened Linux to a cancer. He said, “Open source is not available to commercial companies. The way the license is written, if you use any open-source software, you have to make the rest of your software open source… Linux is not in the public domain. Linux is a cancer that attaches itself in an intellectual property sense to everything it touches. That’s the way that the license works.”
Nevertheless, whether for legal purposes or business purposes, it appears that Microsoft is wholly ready to release the isolated device driver code to the open source community. The code would directly benefit the company in expanding Microsoft’s market share amongst administrators running Linux.
The granddaddy of Linux, Linus Torvalds has not yet looked at the code; however he made the statement to Linux Magazine, “We all “scratch our own itches”. It’s why I started Linux, it’s why I started git, and it’s why I am still involved…Complaining about the fact that Microsoft picked a selfish area to work on is just silly. Of course they picked an area that helps them. That’s the point of open source – the ability to make the code better for your particular needs, whoever the ‘your’ in question happens to be.”
UPDATE: In response to Stephen Hemminger’s accusations, Microsoft spokesperson Sam Ramji made the following statement to Port 25, “Microsoft’s decision was not based on any perceived obligations tied to the GPLv2 license. For business reasons and for customers, we determined it was beneficial to release the drivers to the kernel community under the GPLv2 license through a process that involved working closely with Greg Kroah-Hartman, who helped us understand the community norms and licensing options surrounding the drivers.” Too see the full statement, visit Port 25.