[DRBD-announce] drbd-9.1.15-rc.1 and drbd-9.2.4-rc.1

Philipp Reisner philipp.reisner at linbit.com
Fri May 26 12:49:31 CEST 2023


Hi DRBD users,

I am glad to announce yet another release cycle, drbd-9.1.15-rc.1 and
drbd-9.2.4-rc.1.

I know that users of recent kernels are eagerly waiting for this
release. Even if a previous DRBD release was compile-time compatible
with Linux-6.2 and later, the resulting module crashed your
system. This got fixed.

You find bug fixes at the top of the changelog with bitter
consequences, like locking up a resource or causing an OOPS. What they
have in common is that they are about very rare edge cases. The bugs
have been in the code for a very long time.

As usual, when fixing these bugs, we improved the test-suite as well,
which runs 82 tests on every commit by now. Recently I learned that by
running these tests, we cover 92.1% of all functions of the DRBD
kernel code and 78.6% of all code lines. It might be that the real
number is even higher since that first coverage analysis did not
include the test runs, where we test protocol compatibility with older
DRBD releases.

Here is only the 9.2 changelog since it has the 9.1 changelog
embedded.

I will do the final release on Monday 5th of June, if you fail to
report regressions in this release candidate.

9.2.4-rc.1 (api:genl2/proto:110-122/transport:18)
--------
 * fix a possible deadlock when disconnecting during a resync
 * changes merged from drbd-9.1.15
  - fix how flush requests are marked when submitted to the Linux IO
    stack on the secondary node
  - when establishing a connection failed with a two-pc timeout, a
    receiver thread deadlocked, causing drbdsetup calls to block on
    that resource (difficult to trigger)
  - fixed a NULL-ptr deref (a OOPS) caused by a rare race condition
    while taking a resource down
  - updated kernel compatibility to at least Linux head and also fixed
    a bug in the compat checks/rules that caused OOPSes of the previous
    drbd releases when compiled with Linux-6.2 (or on RHEL 9.2 kernel).
  - fix an aspect of the data-generation (UUID) handling where DRBD
    failed to do a resync when a diskless node in the remaining
    partition promotes and demotes while a diskful node is isolated
  - fix an aspect of the data-generation (UUID) handling where DRBD
    considered a node to have unrelated data; this bug was triggered by
    a sequence involving removing two nodes from a cluster and readding
    one with the "day-0" UUIDs.
  - do not block specific state changes (promote, demote, attach, and
    detach) when only some nodes add a new minor

https://pkg.linbit.com//downloads/drbd/9/drbd-9.1.15-rc.1.tar.gz
https://github.com/LINBIT/drbd/commit/e219b3f170eb646526f2958578ef6eb06d3d88df

https://pkg.linbit.com//downloads/drbd/9/drbd-9.2.4-rc.1.tar.gz
https://github.com/LINBIT/drbd/commit/23538d282f0dc32597a57c79abd94df10cddd704



More information about the drbd-announce mailing list