The Linux kernel is the lowest level of software running on a Linux system. It manages the hardware, runs user programs, and maintains the overall security and integrity of the whole system, according to the recent Linux Kernel Development Report. It is also the result of one of the largest cooperative software projects ever attempted, with some 15,600 individual developers from more than 1,400 different companies contributing to the kernel since 2005.
The report, released by The Linux Foundation, outlines the development process and highlights the ongoing work of some of these contributors. In this article, Arnd Bergmann of Linaro answers a few questions about his work on the kernel.
Linux Foundation: What role do you play in the community and what subsystem(s) do you work on?
Arnd Bergmann: I co-maintain the arm-soc kernel tree together with Olof Johansson. This is where all the platform-specific changes for ARM processors and SoCs (both 32-bit and 64-bit) get merged. This is one of the larger subsystems in the kernel, and it interacts with most driver subsystems.
I also maintain a couple of smaller things in the kernel. In particular, I look after new CPU architectures getting merged into the kernel and the associated include/asm-generic/ directory. One of my long-term projects is to fix the time_t overflow in the kernel, which will cause 32-bit code to fail in the year 2038.
Linux Foundation: What have you been working on this year?
Bergmann: Aside from my maintainer work, I have spent a lot of time during the last year on fixing hundreds of smaller bugs that lead to build failures or warnings. I started doing a lot of build-testing as a way to improve the quality of contributions I merge into the kernel from other people, but this has now turned into a separate effort to get all random configurations to build cleanly.
Linux Foundation: What do you think the kernel community needs to work on in the upcoming year?
Bergmann: I hope we can get the y2038 cleanup work to the point of actually being able to build a kernel with no 32-bit time_t users. For this, we still need help from additional developers cleaning up various areas of the kernel.
You can learn more about the Linux kernel development process and read more developer profiles in the full report. Download the 2017 Linux Kernel Development Report now.