Microsoft Corp. isn’t exactly dumping Windows for Linux, but it has become one of the busiest contributors to the Linux kernel. Microsoft’s attempt to get Hyper-V drivers into the Linux kernel has taken longer than expected, having begun in July 2009, so Microsoft is apparently trying to speed up the process.
Microsoft was the fifth-largest corporate contributor to Linux kernel version 3.0, open source author and computer scientist David Wheeler writes in his blog.
“This work by Microsoft was to clean up the ‘Microsoft Hyper-V (HV) driver’ so that the Microsoft driver would be included in the mainline Linux kernel,” Wheeler writes.
The Hyper-V submission is in the Linux kernel staging tree, and can be moved to the main portion of the kernel once Microsoft addresses some issues, according to Linux driver project leader Greg Kroah-Hartman, who responded to questions from Network World via email.
Kroah-Hartman says “further cleanups and changes” are needed to get Hyper-V into the mainline Linux kernel, but he doesn’t know how close the task is to being achieved. The work is being done to ensure that Linux distributions can run on the Microsoft virtualization platform.
When asked why it has taken this long, Kroah-Hartman responds: “The changes were not being submitted that frequently.”
The staging tree where Microsoft’s drivers are today “is used to hold stand-alone drivers and filesystems that are not ready to be merged into the main portion of the Linux kernel tree at this point in time for various technical reasons,” Kroah-Hartman explained in a blog post in 2009. “It is contained within the main Linux kernel tree so that users can get access to the drivers much easier than before, and to provide a common place for the development to happen.”
The Hyper-V folder within the Linux staging tree contains two dozen files including a “todo” list with the issues that must be addressed.
The list shows Microsoft must “fix remaining checkpatch warnings and errors”; audit the VMBus to verify it is working properly; audit the network, block and SCSI drivers; and see if the VMBus can be “merged with the other virtual busses.”
Microsoft began contributing Hyper-V code to the Linux kernel two years ago after Linux community members pointed out that Microsoft was violating the GPL software license by using open source components within a Hyper-V driver.
But Microsoft could benefit by making it easier for Linux enthusiasts to run Linux guest operating systems on Hyper-V. Microsoft’s Hyper-V team is supporting CentOS Linux, and is in talks with Canonical about extending Hyper-V support to Ubuntu.
Microsoft’s submission of code to the Linux kernel stalled almost immediately, with Kroah-Hartman saying in September 2009 that “the Microsoft developers seem to have disappeared.”
Microsoft has not responded to a request for comment this week.