As the latest update to Android looms ever closer, we've got our eyes peeled for anything that may hint at what's to come. While most of that information comes to us through leaks or hidden surprises, sometimes it will try to hide in plain sight. Over the last few weeks, an increasing number of code commits have been made to the android-3.10 branch of the kernel/common project. As you might be able to guess from the names, kernel/common is the codebase from which every device kernel is eventually derived. The existence of a 3.10 branch in AOSP is pretty solid evidence to believe we will see a version of Android running on it soon. On top of all of this, there are architecture-specific commits for 3.10 in the kernel/tegra project, which points to development for the 2012 Nexus 7.
Since the initial launch of Android in 2009, the kernel has been kept mostly up to date with Linux, usually lagging behind by 4-8 months due to development and release schedules. Unlike previous versions, Android 4.3 did not get an update, instead remaining on the 3.4 codebase. KitKat is due to get caught up and the development team certainly wouldn't want it to become further outdated. The 3.10 Linux kernel, released just 4 months ago, would be the obvious choice.
Despite the evidence, we're far from having a smoking gun. So far, all of the leaked photos we've seen of Android 4.4 running on the Nexus 5 and Nexus 4 have shown it is still based on the 3.4 kernel. It's possible the leaks are based on older distributions or even versions that have been intentionally built on the older kernel, but these seem unlikely. While it's really rare to see branches like these appear in AOSP unless they become a part of Android, it actually happened with the 3.3 kernel which was posted as part of the Android Mainlining Project.
Should we see v3.10 (or later) turn up, we've got plenty of reasons to be happy about it. As we so often hear with any upgrade, it will bring improvements to performance, battery life, and stability. More specifically we should see reliability improvements to the ext4 filesystem, better support for big.LITTLE ARM and 64-bit architecture, and quite a bit more. To check out all of the changes between 3.4 and 3.10, take a look at this handy human-readable list of changes by version.
As always, we can't really be certain of anything until there is an announcement or an official code drop. I'm sure you're all just as eager as I am for Google to get the ball rolling.
Thanks, Shamus Murray.