Intel energizes decades-old real-time Linux kernel project
Linutronix buy looks like a boon for those waiting on PREEMPT_RT
Intel announced a move on Wednesday that will inject fresh energy into a Linux kernel project that started close to two decades ago – and was lacking funding and contributors.
The microprocessor giant has made an under-the-radar acquisition of Linutronix, a German developer house that provides services for Linux-powered industrial systems. Intel didn't disclose the amount it paid for Linutronix, which is also an expert in real-time Linux applications. The acquisition comes as real-time industrial applications are set to make increasing use of low-latency communication between controllers, sensors, robots and tooling, and other equipment.
Most interestingly, Linutronix is described by Intel as the architect of the PREEMPT_RT patch set, which when applied and enabled makes the Linux kernel as preemptible as possible. This in turn lowers internal latencies, which is very useful for those scheduling time-sensitive software threads to complete within a given deadline (using the deadline scheduler). This in turn is useful for ensuring, for example, incoming data is processed reliably within a tight time-frame.
So far, PREEMPT_RT has lacked sufficient contributors and funding for mainline kernel integration and maintenance. Though folks have been building products that use the preemption patch, they did not contribute enough funding or feedback, and as a result development slowed. Linutronix has previously noted only a handful of people maintaining PREEMPT_RT.
"It's a really significant long-term project that has been going on for many years," Mark Skarpness, vice president and general manager of system software engineering at Intel’s Software and Advanced Technology Group, told The Register. "We intend to continue to support it. We think it's really a critical piece of technology that's going to get used in a lot of places."
An open problem
The nature of open source may have held up development of PREEMPT_RT: companies are happy to consume it, but may not be able to contribute much to it for various reasons, a source familiar with developments in the project told The Register. That's left PREEMPT_RT being shepherded by few people despite its use in embedded and industrial electronics.
"The whole Heartbleed issue, remember that?" the source added, drawing parallels between the OpenSSL and the PREEMPT_RT projects. "We found out that OpenSSL is maintained by two people, which is responsible for the entire world. You know, encryption is run by two people in their spare time."
Heartbleed being the OpenSSL security flaw revealed in 2014 that could be exploited to extract passwords, keys, and other secrets from vulnerable systems.
- Intel CEO Gelsinger spells out five-year renewal plan inspired by iconic leaders
- Intel reveals GPU roadmap with hybrid integrated discrete graphics
- Top chipmakers ignore India's semiconductor factory subsidies
- Intel buys Tower Semiconductor to expand fab business
Intel's acquisition of Linutronix is a positive move and will speed up development, our source said, adding: “I think real-time is going to become a lot more important in future. Deterministic behavior of real-time operating system is going to be a key factor in the new hardware.”
Industrial Linux applications, such as robotics, typically need to impose time constraints for their tasks. Having PREEMPT_RT enabled and supported is either a boon or a requirement for these systems.
"The patch set enables the deterministic behavior that these industrial applications require when running on Linux," Kate Stewart, vice president of dependable embedded systems at The Linux Foundation, told The Register.
Linutronix is in the final stages of getting the remaining PREEMPT_RT patches upstream, Stewart said.
“I look forward to continuing to work with both Linutronix and Intel on the collaboration to upstream PREEMPT_RT patches into the Linux kernel,” Stewart said.
Another source familiar with developments in the PREEMPT_RT patch set noted that industrial companies can't contribute much to the open-source project because they often lack the necessary software "engineering experience and manpower to do everything on their own and thus need someone like Linutronix to help."
Intel goes open
Intel is also getting a significant contributor to the Linux kernel's x86 codebase in Linutronix CTO Thomas Gleixner, who was also involved with the development of speculative-execution side-channel mitigations for that CPU architecture, said Michael Larabel, a software engineer and founder of Phoronix, which tracks developments in Linux.
"Beyond his direct contributions to the x86 code and other areas of the kernel, he also actively reviews many kernel patch series and all around is a tremendous asset to the Linux community," Larabel told The Register.
Gleixner has previously noted progress with, and also issues holding back, PREEMPT_RT. The acquisition by Intel allows Gleixner and others "to hopefully focus more on just great upstream code contributions and less about small business challenges," Larabel said.
PREEMPT_RT, when enabled, changes the way the kernel handles interrupts and locks so that if a thread needs time on a CPU core it can get it with very little latency. To most conventional Linux desktop users this won't mean much, but it can be a big deal for embedded Linux usage, Larabel said.
This functionality in mainline Linux will make it easier for users and developers to configure the kernel for real-time use-cases without worrying about out-of-tree patches, new kernel versions, or breakage from new point releases.
"There has been good progress with lowering the PREEMPT_RT patch delta that is currently carried out-of-tree and now with Intel's backing hopefully will be crossing the finish line soon," Larabel said. ®