X
Business

Pigs are flying low: Why Microsoft open-sourced its Linux drivers

The pigs are still in the air. Microsoft really did release not one, but two, pieces of code under the formerly Microsoft-hated GNU General Public License (GPL) this week. But one of the key reasons Microsoft agreed to do this was left out of the original tale told by the Softies.
Written by Mary Jo Foley, Senior Contributing Editor

The pigs are still in the air. Microsoft really did release not one, but two, pieces of code under the formerly Microsoft-hated GNU General Public License (GPL) this week. And it still seems the Linux drivers it put under the GPL on July 20 are on their way to becoming incorporated into the next version of the Linux kernel.

But as my ZDNet blogging colleague Paula Rooney and TechFlash's Todd Bishop both noted yesterday, one of the key reasons Microsoft agreed to do this was left out of the original tale told by the Softies.

Microsoft originally was licensing the Linux drivers, also known as the Linux Integration Components (LIC), in a way that was in violation of the GPL. It was offering them under a combination of the GPL and a closed source license.

Greg Kroah-Hartman, a Novell fellow with SuSE Labs and Linux Driver Project lead, said on Monday he was approached by a "community member" about the drivers months ago and that he thought it would be a good idea for Microsoft to submit them. What Kroah-Hartman didn't mention (until he later added an update to his blog post) was the community member who approached him was the "Linux Network Plumber," a k a Stephen Hemminger, a well-known Linux contributor who is a principal engineer with the open-source networking vendor Vyatta.

Hemminger made it clear in his own blog post that he didn't approach Kroah-Hartman because he liked Microsoft's drivers; he approached him because the way Microsoft was licensing them -- by mixing open- and closed source components -- was in violation of the GPL.

I re-contacted Kroah-Hartman last night to verify this new piece of information. Here's what he said, via e-mail:

MJF: Hemminger is claiming Microsoft put the LIC code under the GPL because it was in violation of the GPL. Is this true? Did you have to suggest to (Microsoft Platform Strategy Chief Sam) Ramji & Co. that they were in violation in order to get them to agree to release the code under GPLv2?

GKH: I didn't have to "suggest" anything, I only had to merely point out the obviousness of the situation  :)

MJF: If this isn't accurate, could you let me know how to interpret (Hemminger's) comments on his blog.

GKH: No, that sounds accurate.

This isn't the first time Microsoft has run afoul of the open-source licensing police. The company has pulled code from its CodePlex site when it was discovered that it was not adhering to OSI licensing terms but advertising that the code was under an open-source license.

I've asked Microsoft officials if they'd like to comment on this new piece of information. If I get a response, I will add it to this post.

Update (July 24): It took a few days, but Microsoft has issued an official response, via a posting to the Port 25 blog. Microsoft is sticking to its original story, in spite of Kroah-Hartman and Hemminger's updates. From Ramji's post:

"Microsoft chose the GPLv2 license for the mutual benefit of our customers, partners, the community, and Microsoft.

"Microsoft's decision was not based on any perceived obligations tied to the GPLv2 license."

Ramji didn't come right out and deny the GPL violations claim, but I guess that's as much as we're going to get.

Editorial standards