And Microsoft's days of major Linux contributions have come to a halt.

Google and Samsung have become increasingly frequent contributors to Linux, and each is now among the top 10 companies sponsoring the open source kernel that powers operating systems from mobile devices to desktops and servers.

A new Linux Kernel Development report (informally known as "Who Writes Linux") released today by the Linux Foundation names Samsung and Google as the seventh and eighth most frequent corporate contributors, behind Red Hat, Intel, Texas Instruments, Linaro, SUSE, and IBM. The report covers almost 92,000 changes to Linux from 3,738 individuals since version 3.3 in March 2012.

Most Linux developers contribute to the kernel as part of their employment. Here's a look at the top corporate contributors:

Linux Foundation

"None" refers to developers working on their own without corporate sponsorship, while "unknown" covers developers for whom a corporate affiliation could not be determined. For the purpose of assigning numerical rankings to individual corporations in this article, we're ignoring those two categories as well as the "consultants" category.

Linaro, which makes open source software for ARM systems-on-a-chip, made a huge jump from 0.7 percent of total changes in the 2012 list to 4.1 percent on the latest one. The Linux Foundation noted that Linaro, Samsung, and Texas Instruments, combined, have risen from 4.4 percent of changes to 11 percent, reflecting the growing importance of mobile and embedded systems.

17 million lines of code

The Who Writes Linux reports aren't released precisely on an annual schedule, so the percentage of contributions rather than the total number is the best way to track changes in corporate involvement from one report to the next.

The previous report released in April 2012, covering the period since December 2010, put Google in 11th place with 1.5 percent of contributions. Samsung did not make the top 30 list in that report.

The March 2012 report also compiles all stats since 2005, with Google registering at one percent in that seven-year period and Samsung at 0.6 percent. As noted in the chart above, Samsung and Google now clock in at 2.6 percent and 2.4 percent, respectively.

Google and Samsung have clearly stepped up their contributions to Linux at the same time that Android, which is based on Linux, has increased in popularity and importance. But as it turns out, Android wasn't the main driver pushing the companies into the top 10.

"Google contributions were not Android-related, given there really wasn't much Android code in the first place (7,000 lines of code, much smaller than your serial port driver), and it was all merged a while ago," Greg Kroah-Hartman, who co-authored the report and is the maintainer of the Linux kernel's stable branch, told Ars. "Google's been doing work all over the kernel (networking, security, scheduler, cgroups), all good stuff."

Samsung has likewise made contributions all over the place with a "new filesystem, core kernel work, new driver subsystems, fixes everywhere," Kroah-Hartman said.

The report is being released in conjunction with the start of the LinuxCon conference today in New Orleans. The overall pace of development has increased, with the community merging patches at the rate of 7.14 per hour, up from 6.71 per hour in the last report. The kernel now has almost 17 million lines of code, up nearly two million lines. The report did not rank contributors by lines of code.

Important features merged into the mainline kernel code since early 2012 include "full tickless operation [to lower power consumption], user namespaces, KVM and Xen virtualization for ARM, per-entity load tracking in the scheduler, user-space checkpoint/restart, 64-bit ARM architecture support, the F2FS flash-oriented filesystem, many networking improvements aimed at the latency and bufferbloat problems, two independent subsystems providing fast caching for block storage devices, and much more," the report said.

Linux Foundation Executive Director Jim Zemlin noted that while Apple touted 64-bit support in the new iPhone, "that's done in Linux, has been done for a long time. The Android ecosystem just picks that up by default, they don't have to go through any special development process to do that."

More good news is that the "longstanding squabble over Android-specific kernel features has faded completely into the background," the report said. "The much discussed 'wakelocks' [power management] feature has been quietly replaced by a different mainline solution which is used in the latest Android devices."

Microsoft isn't dumping Windows for Linux, it turns out

Among other notable changes, Microsoft fell off the list after briefly being one of Linux's most prolific contributors. Microsoft's 688 changes accounted for one percent of the total in the 2012 list.

Microsoft, in 2009, submitted drivers for its Hyper-V virtualization platform to the Linux kernel. The project hit a bunch of delays, with Microsoft struggling to get its drivers out of the staging area and into the mainline kernel. In 2011, Microsoft became the fifth largest corporate contributor to Linux kernel version 3.0 as it attempted to clean up its code. Redmond's contributions have predictably dropped off now that the code is more stable.

Nvidia (which famously pissed off Linus Torvalds with allegedly low-quality work) is in 13th place with 1.3 percent of changes on the most recent list. Nvidia did not make the 2012 list.

Canonical contributed 548 changes in the period studied in today's report and would have cracked the top 30 if the foundation hadn't included "none" and "unknown" in the rankings. The maker of Ubuntu has been criticized for years for not contributing more to the kernel (and recently clashed with Intel over patches submitted to the company's graphics driver), but Zemlin isn't upset. "I am not at all mad at them. I think they do good work," he said. "You just kind of choose what's important to your org and where you can add the most value to the project and how it intersects with your business. They choose to focus a lot of their time and energy at higher levels of the software stack."

Among individuals submitting code to Linux, longtime contributor Al Viro led the way with 4,124 changes, 1.2 percent of the total. Linus Torvalds, who created Linux and makes the final decisions on what goes into the kernel, did not make the top 30 list. But that's no surprise. Torvalds and many of the other senior kernel developers "spend much of their time getting other developers’ patches into the kernel; this work includes reviewing changes and routing accepted patches toward the mainline," the report said.

Besides tracking the submitted changes, the Linux Foundation report measures "signoffs," the review process conducted by kernel leads. Here's another chart showing the number of signoffs by company affiliation:

These are just approximate numbers since "the signoff metric is a loose indication of review," the report said.

For individuals, getting your name in the Who Writes Linux report is a path to prosperity, Zemlin said. "The competitiveness to hire all these people is palpable," he said. "That's one of the top calls I get: 'How do I hire these guys? How can I hire more kernel guys?' If you're even just getting a few patches into the Linux kernel regularly, that is a guaranteed employment type of thing."

The number of contributions from unpaid developers decreased from 14.6 percent to 13.6 percent in the latest report. Even though the source code is free, Linux is no volunteer project—it's enormously important to the businesses of Intel, IBM, Red Hat, and others, as their appearances at or near the top of every list reflect. The most plausible explanation for the decrease in volunteer developers may be that they are getting hired because of their demonstrated ability to write code, the Linux Foundation said.

Promoted Comments

The focus of their small amount of kernel work is drivers. Their main focus as a company is the user interface (window manager, login screen, etc) so they will probably never be a top kernel contributer.

The focus of their small amount of kernel work is drivers. Their main focus as a company is the user interface (window manager, login screen, etc) so they will probably never be a top kernel contributer.

I was a bit surprised as well, but there was a valid point made as to what is important to your company. I'm curious to see how many of those devs fit into the unknown block. I would think that they would contribute a fair amount on the server side of things but maybe they want to keep some of their code a secret.

Nobody should be surprised at these results. Google and Samsung have built their future around open source software. The media seem to have a hard time getting it. But android and chrome are just words for Linux distributions. Their success has demonstrated that Linux is good enough to meet their needs.Microsoft, in contrast, was on a strategy to try to make .Net the dominant software platform in the world. Its contributions to Linux were largely intended to fold Linux into its .Net universe. Microsoft has abandoned that strategy. In part, that is because it discovered that no matter how good it made its software much of the world simply would not accept Microsoft. In part, it is because Microsoft has decided that being trendy is more important than the quality of their software technology.

Microsoft, in contrast, was on a strategy to try to make .Net the dominant software platform in the world. Its contributions to Linux were largely intended to fold Linux into its .Net universe.

[Citation needed?]

By the way, apropos of nothing in particular, did you by any chance consider reading the article, which mentions what Microsofts patches were for?

Also, let's disregard mere facts and boring reality for a second, because I am curious about the tinfoil hat world that you inhabit. Which patches have Microsoft submitted to facilitate "folding Linux into its .NET universe"? And what did those patches actually *do*?

I mean, how do you "fold" an OS into a software framework such as .NET? Did they compile Linux to CLR bytecode or something?

In all fairness to Canonical, their focus is generally on the higher level components. That's not to say they don't have issues with their work within the community or lack thereof, but the main excuse here would be that it's not their focus.

Wolfson must be very inefficient in the way their patches apply, I can't think of any other reason that an audio device manufacturer could account for over 3% of all code approvals.

The corporations that seem odd may have a fairly liberal policy regarding contributory work; their programming employees may devote almost all of their time to kernel updates, but only a relatively small portion of it to audio-specific inputs.

As far as "where are the government contributions" goes, they'd be accounted for as individuals, unknown, or in a corporation making a relatively small contribution to the kernel, depending. There are very few programmers sitting in GS positions, because software development is one of those fields where it is actually more cost-effective for the work to be outsourced/contracted.

Google and Samsung have benefited very much from Linux. It seems only fair they contribute substantially. It is what I would expect them to do.

Are you suggesting that the contributions they've made were not required for their own businesses and products released to consumers?

It's a reasonable suggestion.

Quote:

My assumption was that they needed to make changes to get their products to work, and they were required to contribute those changes due to the license terms. Ie. it has nothing do with 'fairness'.

To a degree they do, but the vast majority of changes that go into consumer devices, drivers in particular, never get upstreamed. This a particular problem with Android kernels because the drivers themselves are full of Android-isms that don't exist in the upstream kernel. So they don't get upstreamed (nor do board support files) and when the next version of Android rolls around the drivers have to be ported forward to the new kernel.

The focus of their small amount of kernel work is drivers. Their main focus as a company is the user interface (window manager, login screen, etc) so they will probably never be a top kernel contributer.

Quite a bit of Canonical funded kernel work may also fall under Linaro numbers. If their mobile push succeeds at all, that may increase.

The only thing to bear in mind with these statistics is that many of the names on this list are just there to support their hardware - usually ARM SoCs for android - and don't really contribute much to the kernel outside of that (NVIDIA is an example here). The big exceptions to this (for hardware manufacturers) are Intel, and to a lesser extent Samsung.

Intel in particular are surprisingly deep into improving core parts of linux - they have done a lot of work on improving the scheduler for better power savings for example. And they have by far the best support for their (now pretty good) graphics - unlike almost all other manufacturers (AMD also kinda does this, but on nowhere near the same scale) their drivers are fully open source, and use the infrastructure other open source drivers use (KMS, mesa etc) - which has resulted in a lot of improvements for all open source graphics drivers, not just Intel's.

The focus of their small amount of kernel work is drivers. Their main focus as a company is the user interface (window manager, login screen, etc) so they will probably never be a top kernel contributer.

Suse was a major contributor to video drivers back in the day. Given Canonical's interest in alternate display servers, it seems logical that they would contribute to the state of non-proprietary video drivers. Also, a lot of the perceived usability of consumer systems comes from robust device driver support. So there are any number of subsystems where it would be in Canonical's interest to help. ARM support. Touch screen devices.

Wolfson must be very inefficient in the way their patches apply, I can't think of any other reason that an audio device manufacturer could account for over 3% of all code approvals.

It's because sound cards used to be and still are a major cause of blue screens (or pick your win 7-8 color) at least in games. That's why audio and graphics drivers get bundled together. Sound blaster became a defacto standard because of its stability.

Also with on board audio, it gets tricky as you have to integrate those with the chipset and motherboard.Wolfson probably over-engineers their boards which need more testing and work to get the performance you pay for, instead of defaulting back to a lower quality compatibility setting.

For a company with no officially supported open source graphics driver; it's makes me angry that nvidia is on the list.

NVidia makes ARM-based System-On-Chip (SOCs) these days that all run Linux. At one point, they had one of the better motherboard chipsets for Intel chips. They've got a lot of reason to contribute to the kernel, even if they keep their GPU stuff closed and multi-OS.

Wolfson must be very inefficient in the way their patches apply, I can't think of any other reason that an audio device manufacturer could account for over 3% of all code approvals.

It's because sound cards used to be and still are a major cause of blue screens (or pick your win 7-8 color) at least in games. That's why audio and graphics drivers get bundled together. Sound blaster became a defacto standard because of its stability.

Also with on board audio, it gets tricky as you have to integrate those with the chipset and motherboard.Wolfson probably over-engineers their boards which need more testing and work to get the performance you pay for, instead of defaulting back to a lower quality compatibility setting.

Video/audio drivers shouldn't be causing BSODs in any version of Windows newer than XP/Server03. Ripping both subsystems out of the kernel to keep creative/nvidia/ati from BSODing the OS was one of the biggest changes to the driver model in Vista. I've never seen an audio driver crash since then; but when the video drivers faceplant your screen just cycles to black for a second to two before returning to normal with a "your video driver just faceplanted and needed to be restarted" message (IIRC as a tray popup).