Oracle revs home-tweaked Linux kernel to 2.0

Software giant Oracle has gussied up the second iteration of its own kernel for Ellison's Enterprise Linux distro, dissing Red Hat's own tweak on the mainstream Linux 3.0 kernel.

Back in October 2011, Edward Screven, chief corporate architect at Oracle and the person responsible for the company's Linux operating system and Xen hypervisor variants, gave a preview of the Unbreakable Enterprise Kernel Release 2, and today's release makes good on all the promises.

As with the kernels embedded in the latest Red Hat and SUSE Linux releases, the Enterprise Kernel R2 from Oracle moves up to the Linux 3.0 version, which is not a huge generational shift like the name might imply but rather more a function of Linus Torvalds, the creator and maintainer of the Linux kernel, getting bored with saying Linux 2.6.3X.

That said, the new Oracle kernel has plenty of new features that warrant a look-see and perhaps an install if you are running Oracle Enterprise Linux 5 or 6. The new kernel, as you can see from the release notes, is not just supported on Oracle Linux 6, but has been backported to Oracle Linux 5.

Oracle Linux is, of course, a clone of Red Hat's Enterprise Linux, but one in which Oracle creates its own rev of the open source Linux kernel and then tweaks and supports for its server customers. Oracle Linux is at the heart of its Exadata, Exalogic, Exalytics, and Big Data Appliance x86-based machines for database, Web application, analytics, and MapReduce workloads.

Oracle Linux is backed up by what the company calls Unbreakable Linux support and is offered with Oracle's own kernel, tuned for specific workloads on Oracle's engineered systems - as well as available to run on other popular machinery.

Unbreakable Enterprise Kernel R2 is based on the open source Linux 3.0.16 kernel and it includes the features that have made it into the mainline Linux kernel since Oracle announced its own Unbreakable Enterprise Kernel R1 back in September 2010. Oracle says that it has made a number of bug fixes and feature and function improvements with the R2 kernel and that these have been contributed back to the mainline open source Linux kernel.

By the way, when you load up the new R2 kernel, based on Linux 3.0.16, it will say it is Linux 2.6.39, which Oracle says it had to do to keep certain low-level Oracle Linux utilities from breaking. So much for that, er, unbreakable Linux kernel, eh, Larry?

Oracle did a lot of the early work on the btrfs (pronounced "Butter-FS") file system, and not only continues to support the effort but has rolled it into the R2 kernel and says that btrfs is now "production-ready" with this release. It points out that btrfs includes the all-important btrfsfsck file system check to check and repair the file system, and it now supports LZO compression on files as well as the zlib compression previously supported.

Oracle has also added a global heartbeat for all mounted volumes in the Oracle Cluster File System 2 (OCFS2) file system that predates btrfs, instead of having a heartbeat for all volumes that are mounted by that file system. OCFS2 got a bunch of other nips and tucks, and the ext4 file system now uses a block I/O layer instead of a buffer layer that had scalability issues on multiprocessor systems.

The new Linux 3.0 kernel as tweaked by Oracle has support for 2MB transparent huge memory pages (up from 4KB), memory compaction to reduce I/O requirements when a huge page is allocated. The Linux scheduler has performance tweaks, too, and transmit packet steering (XPS) is now supported for multiqueue devices.

The new R2 kernel from Oracle has a number of things in technology preview, including Oracle's own port of its DTrace dynamic tracing tool from its Solaris Unix distribution and Linux container (LXC) virtual private server partitions. Oracle is also previewing a kernel module signing facility, which does cryptographic signature checking on Linux modules at load time, checking their signatures against a ring of public keys compiled into the kernel.

Oracle is also previewing distributed replicated block device (DRBD), a shared-nothing data replication technique that basically does RAID 1 data striping over the network, and is showing off early code for how virtual servers make use of physical main memory called transcendent memory, or tmem, which collects idle system memory in a machine and makes it accessible by a hypervisor. You can find out about the tmem project, which is being steered by Oracle, at http://oss.oracle.com/projects/tmem/.

Oracle says that its eponymous Linux remains user-space compatible with Red Hat Enterprise Linux – this user space is independent of the kernel layer – and hence can still be thought of as RHEL-ish. The kernel application binary interface with Unbreakable Enterprise Kernel R2 is different from R1, which is based on Linux 2.6.32, and therefore software vendors or organizations that develop kernel modules might have to do some tweaking and recompiling for their code to have it work with the new R2 kernel.

The company had been talking last fall about putting a virtual switch in the R2 kernel, but there was no sign of it in the announcement today.

Customers who have Oracle Linux Premier Support will be able to update their kernels on running machines without taking them down using the Ksplice hot kernel action that Oracle acquired last July. ®