The Lustre Filesystem Dropped from the Linux 4.18 Kernel

It's now official: the latest RC1 pull request for the Linux 4.18 will not host the nearly 15-year-old Lustre filesystem.

Greg Kroah-Hartman has been growing weary of the team developing its source code not pushing cleaner and fixed code to the staging tree. The removal was committed on June 5, 2018: with the following notes:

The Lustre filesystem has been in the kernel tree for over 5 years now. While it has been an endless source of enjoyment for new kernel developers learning how to do basic coding style cleanups, as well as a semi-entertaining source of bewilderment from the vfs developers any time they have looked into the codebase to try to figure out how to port their latest api changes to this filesystem, it has not really moved forward into the "this is in shape to get out of staging" despite many half-completed attempts.

And getting code out of staging is the main goal of that portion of the kernel tree. Code should not stagnate, and it feels like having this code in staging is only causing the development cycle of the filesystem to take longer than it should. There is a whole separate out-of-tree copy of this codebase where the developers work on it, and then random changes are thrown over the wall at staging at some later point in time. This dual-tree development model has never worked, and the state of this codebase is proof of that.

So, let's just delete the whole mess. Now the lustre developers can go off and work in their out-of-tree codebase and not have to worry about providing valid changelog entries and breaking their patches up into logical pieces. They can take the time they have spent doing those types of housekeeping chores and get the codebase into a much better shape, and it can be submitted for inclusion into the real part of the kernel tree when ready.

Honestly, I do not blame him. The staging tree is primarily intended for unstable and less than mature code, which ideally should move to the mainline within a short time of further development. It's a temporary (that is, staging) location. It's not that I don't appreciate the Lustre filesystem. In fact, I once wrote about it for Linux Journal in the past.

For those who are less familiar with this filesystem: Lustre (or Linux Cluster) is a distributed filesystem typically deployed in large-scale cluster computing environments. Lustre is designed to be both performant and to scale to tens of thousands of nodes and to petabytes of storage. And as what may have just been alluded to already, a distributed filesystem allows access to files from multiple hosts sharing a computer network.