Biz & IT —

Google and Samsung soar into list of top 10 Linux contributors

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

See, sometimes Linus isn't flicking people off.
See, sometimes Linus isn't flicking people off.

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:

Linux Foundation

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.

Channel Ars Technica