Back to article
Can't Linux and Android Just Get Along?
Geekfights and Kernels
August 11, 2010
At the LinuxCon conference, the topic of why Google Android code is not part of Linux was the subject of some intense discussion. One such discussion became so heated that a panelist wound up telling a combative audience member to "shut up" before asking them to leave.
Such blow-ups -- online and off -- are typical of the heated debate surrounding the relationship between Android and Linux. Google's Android is seen by many as a great success story for mobile Linux even though Google's Android code is no longer part of the mainline Linux kernel. That fact has Linux stakeholders debating why Google has diverged from the mainline Linux kernel, and whether it's hurting Linux. But like many such fundamental debates, it's a multifaceted issue with plenty of room for different viewpoints.
At the heart of the matter, panelists said today, is some Google Android code for power management, called WakeLocks.
Red Hat engineer Matthew Garrett said that Google (NASDAQ: GOOG) had tried to get its WakeLocks code into the mainline kernel. But he said that mainline Linux kernel developers didn't really understand what WakeLocks were, and that lack of understanding has led to a complex debate that has trailed off in multiple directions with a myriad of solutions for solving power management-type issues. As a result, WakeLocks didn't make it into the mainline.
And to Garrett, that's not the optimal outcome. He noted that many developers are now looking to Android for all kinds of code, such as code for power management and other low-level functions with potentially far-ranging uses.
"As kernel developers, we want this code in the kernel," Garrett said. "When we get code, we get new solutions, and sometime you get code that gives new insight to other problems."
Some of Android's kernel functionality ends up in drivers, he added, though that's an example of the code that he wants to see integrated into the mainline.
"We want to be able to take Android drivers and have them in the Linux kernel," Garrett said. "We don't want there to be a distinction between an Android driver and a Linux driver."
Garrett said that he would ultimately like to see that the Google Android kernel is a mainline Linux kernel with a couple of extra bits. He added that he would love to see every problem that Google has solved that ends up in Android helping the mainline Linux kernel community, as well.
"Whether we will see that, I don't know," Garrett said.