The LINBIT® team has been busy for more than a year on development work that could put DRBD® 9 in the mainline Linux kernel, possibly as soon as the Linux 7.2 release sometime in September or October 2026. The current version of the DRBD kernel module in the mainline Linux kernel is 8.4.11.
While the work to put DRBD 9 into the upstream Linux kernel is not top secret, admittedly the LINBIT team did not promote its efforts widely in the early or even mid-stages. Now that a Phoronix article has scooped LINBIT on the story, it seems necessary to talk more about this development work and what it means to DRBD and Linux users.
In-tree DRBD version development stagnates
The need for this work comes from the in-tree (DRBD 8) and out-of-tree (DRBD 9) versions diverging. LINBIT worked to develop its out-of-tree, latest version of DRBD at a faster pace than its in-tree development work. The reasons were largely commercial. Most LINBIT customers use DRBD 9 for its feature benefits and advantages over DRBD 8, so that is the version that LINBIT focuses development resources on. Over the years, this divergence became stagnation and the DRBD in-tree version got to a point where it was only receiving critical bug fixes. When asked about this, LINBIT developer Christoph Böhmwalder, who leads LINBIT efforts to bring DRBD 9 to the mainline Linux kernel, was direct in saying the work is “important and long overdue.”
Indeed, the passing of time has only compounded the divergence between the in-tree and out-of-tree DRBD versions. To summarize the significant scope of work involved in replacing the current DRBD 8.4.11 version in the Linux kernel with a 9.3 version, LINBIT CEO and DRBD creator, Philipp Reisner said in an Insights from Phil newsletter:
The most recent release was 8.4.11, eight years ago. However, the development of [DRBD 9] started in October 2011. It was like a rewrite, in place. Over the course of the journey, we had to touch on every line of code to introduce the concept that a cluster can have multiple peers.
Differences between DRBD 8 and DRBD 9
A major difference between the two DRBD versions is that the older 8.4 version was intended for 2-node failover clusters. DRBD 9 supports failover clusters up to 31 peers for each DRBD-replicated volume. While this makes possible some extreme high availability (HA), most HA clusters will use three to five nodes.
DRBD 9 also includes the concept of quorum that works in clusters of three or more nodes. This DRBD quorum feature helps prevent data divergence, so-called split-brain scenarios, when nodes unexpectedly leave the cluster, for example, due to a node-level failure. Other nodes that have maintained quorum will essentially mark the failed node as unable to promote to a primary role when it returns to the cluster, until after it has synchronized with a known good data set from peers holding quorum.
Without DRBD quorum, 2-node DRBD cluster administrators need to resort to using fencing or STONITH solutions to avoid data divergence, and manual intervention is needed upon a failed node returning to the cluster.
You can read more about this and other DRBD 9 features in the DRBD 9 User Guide.
The benefits of the work to upstream DRBD 9
When the merge review dust settles and the hoped-for acceptance of DRBD 9 into the mainline Linux kernel happens, it will be a positive event for existing DRBD 8.4 and DRBD 9 users.
The vast majority of DRBD users who are not LINBIT customers are still on DRBD 8, because that is what the Linux kernel includes. When DRBD 9 merges into the mainline kernel, existing DRBD 8 users who upgrade will get the well-maintained latest DRBD 9, with all its feature and performance benefits.
Improving the DRBD code through independent review
Already, through the merge review, LINBIT developers are hardening the DRBD 9 code. The merge review process means DRBD 9 gets put through independent analysis from Linux power users (kernel maintainers), is tested on exotic CPU architectures, and run through different continuous integration (CI) bot tests outside of the LINBIT development team’s own testing.
Reducing the DRBD code maintenance burden
Although it might not be as visible as a new feature in the software, the process of bringing DRBD 9 to the mainline Linux kernel will “reduce the maintenance burden for [the DRBD] out-of-tree code base,” says Böhmwalder. For example, the LINBIT team currently has to manually backport every change that happens upstream to keep compatibility with new kernel releases. This needs to continue at a minimum, for LINBIT customers still on older kernels. However, says Böhmwalder:
It’s so much easier if you already closely track upstream development. This is because the divergence between in-tree and out-of-tree is minimal, so you don’t need to adapt the patches much and can pretty much just carry the upstream patches 1:1 to out-of-tree.
This is a behind-the-scenes benefit that will be good for all DRBD users.
Taking an upstream-first approach
Lessons learned during the merge review and DRBD code revision process will likely continue to bring benefits to DRBD users, even after a mainline kernel merge event. The DRBD development team will almost certainly adopt an “upstream-first” development workflow, speculates Böhmwalder. “That means that the primary development target will be the upstream kernel, with patches eventually trickling down to the out-of-tree code (and thus, [LINBIT] customers),” says Böhmwalder. “Things like specific fixes for a bug that a customer is hitting will obviously bypass that. So the customer gets the fix first, then it goes into the actual DRBD code base.”
Preparing to upgrade from DRBD 8 to DRBD 9
If you are currently administering an HA cluster running DRBD 8.4 from the mainline Linux kernel, you can learn more about how to upgrade to DRBD 9 by reading Upgrading DRBD from 8.4 to 9.x in the DRBD 9 User Guide. While the process has many steps, it is straightforward and many systems administrators have done it already. If you think you might need help or have questions about the process, specific to your own production or enterprise environment, you can contact the LINBIT team to learn about support options.
You can expect to read and hear more from the LINBIT team about its progress to put DRBD 9 into the upstream Linux kernel in the coming months.