Linux creator Linus Torvalds spoke about the challenge of finding future maintainers for the open-source kernel, at the Open Source Summit and Embedded Linux conference under way this week online.
Torvalds does not do keynote talks these days, but he was willing to sit down with VMware's chief open source officer Dirk Hohndel for a conversation – on this occasion a remote one due to the ongoing coronavirus pandemic. "This is a strange new model of doing conferences," Torvalds said.
To me and to a lot of other people there is nothing more interesting than interacting at a low level with the hardware and really controlling everything that's going on. Kernels are not boring, but most people should consider them boring
Hohndel noted: "We never talk about my questions up front so this is indeed a live conversation." He asked about the "really big" forthcoming 5.8 kernel release. "It might be one of those releases where because it's large, we will end up having to delay the final release and give it one or two more RCs [release candidates] than usual," said Torvalds, adding: "But so far things have been pretty smooth."
The Linux kernel, said Torvalds, is both boring and interesting. "I've said the kernel is boring but I mean that in the sense that a lot of new technology should be more interesting. To me and to a lot of other people there is nothing more interesting than interacting at a low level with the hardware and really controlling everything that's going on. Kernels are not boring, but most people should consider them boring."
Linux: The Next Generation
The talk soon turned to an uncomfortable question: what will happen to Linux when the current generation of maintainers moves on? With Torvalds and many of the leaders in their fifties and sixties, "at some point we as a community need to start thinking about generational change. What do we do?" asked Hohndel.
Torvalds answered that the Linux kernel community as a whole is not so old. "A lot of new people who are not 50 years old; they are often the ones doing the real work," he said. "The people who have been around for three decades, yes, we are getting grey and old. But... the people who have been around for a long time, we have moved into maintenance and management."
VMware’s Dirk Hohndel (left) talks to Linus Torvalds at the virtual Open Source Summit ... Credit: Linux Foundation
There is an issue, though. "It turns out it's really hard to find people who are maintainers," said Torvalds, who a couple of years ago had to promise to no longer yell at kernel developers who displeased him, we note.
"One of the downsides of being a kernel maintainer is you have to be there all the time," Torvalds continued. "It is every day. You read email, you react to email, you have to just be there. And it's not necessarily a very easy niche to get into.
"We do not have enough maintainers. We do have a lot of people who write code, we have a fair number of maintainers, but... it's hard to find people who really look at other people's code and funnel that code upstream all the way, eventually, to my tree... It is one of the main issues we have."
'You can't do the wild and crazy things that we used to do'
The problem is the time it takes to build up trust in the community. "It's not just trust from other maintainers, it's also trust from all the people writing the code... and that just takes time," said Torvalds. "Thirty years ago when we started, we didn't need that. It was like, you showed up, you got the job. So many people now depend on the kernel, you can't do the wild and crazy things that we used to do."
Is C, the language the kernel is for the most part written in, being displaced by the likes of Go and Rust, such that there is "a risk that we're becoming the COBOL programmers of the 2030s?" Hohndel asked. "C is still one of the top 10 languages," answered Torvalds. However, he said that for things "not very central to the kernel itself", like drivers, the kernel team is looking at "having interfaces to do those, for example, in Rust... I'm convinced it's going to happen. It might not be Rust. But it is going to happen that we will have different models for writing these kinds of things, and C won't be the only one."
What about Linux on Arm? "I was wondering if Apple's switch to Arm will make Arm64 a true first-class platform," said Hohndel.
"Over the last 10 years or so I've been complaining about the fact that it's really hard to find Arm hardware that is usable for a developer," Torvalds responded.
"I think that the fact Apple is moving to Arm will help the Arm ecosystem from a development standpoint... I'm hoping that in a few years there will be a powerful Arm desktop that can actually be used for development.
"You can do development in the cloud. Amazon with Graviton 2 has done much better in the Arm ecosystem in cloud than we've seen before.
"But cloud development is not the kind of development most kernel developers want to do. You want to have the machine in front of you. You don't want just to develop for Arm, you want to use Arm day-to-day on the desktop. That's my feeling."
Apple is now likely to deliver the kind of Arm-based machine Torvalds has been waiting for. ®