[DRBD-announce] drbd-9.0.20-0rc1
Philipp Reisner
philipp.reisner at linbit.com
Fri Sep 20 14:49:27 CEST 2019
Hi,
a lot has happened since the last release. We rolled in a new way how
kernel compatibility is handled. It is based on spatch/coccinelle
now. While it was painful to switch we hope that the compat layer
is now easier to understand while we move forward.
Here is a blog-post that describes that in more detail:
https://www.linbit.com/en/how-to-make-drbd-compatible-to-the-linux-kernel/
In this cycle we have a bit more bug fixes that usual. As the bugs
are more sophisticated and non obvious, out method transforms into a
test-driven approach to development. See the new tests in the drbd9
testsuite.
A number of corner-cases that lead to false split-brains has been
resolved.
Please help testing this pre-release.
9.0.20-0rc1 (api:genl2/proto:86-115/transport:14)
--------
* fix a case of false split brain detection if a diskless node promotes
multiple times, by aligning the rules for generating a new current-UUID
on a diskless nodes with them on a node with disk
* check if we still have quorum by exchanging a drbd-ping with peers
before creating new current UUID after loosing one peer
* fix after weak handling to not interfere with reconciliation resyncs
* retry connect when one of the relevant flags changes during UUID exchange
* fix reconciliation resync if one of the secondary got an current-UUID update
* fix resync to make progress after it was paused by an other resync operation
* fix false split-brains when a resync source changes current-UUID during
resync operation
* fix restore of D_OUTDATED when the resource first only attached and
then the peer objects are created (in contrast to the usual, new-peer,
attach, connect)
* abort creating new current-UUID when writing to meta-data fails in
the moment where the new-current-UUID should be written
* removed DRBD marking itself as read-only when secondary; this flag
was exposed using the BLKROGET ioctl; that should be left to user-land
use; recent KVM checks that flag, and does not dare auto-promote when
set by DRBD
* fix a small memory-leak when creating peer devices
* fix a possible information leak of kernel memory that pads net-link packets
* code cleanups, introduced enums for remaining magic numbers
* new kernel-backward-compatibility framework based on spatch/coccinelle,
replacing an unmaintainable moloch of C preprocessor hell; Merged the
complete kernel-compat submodule
* compat with up to Linux-5.3-rc2
https://www.linbit.com/downloads/drbd/9.0/drbd-9.0.20-0rc1.tar.gz
https://launchpad.net/~linbit/+archive/ubuntu/linbit-drbd9-stack
https://github.com/LINBIT/drbd/commit/1370004953ad8dad28a0ea4cdab3f9e685f5e47e
best regards,
Phil
--
LINBIT | Keeping The Digital World Running
DRBD® and LINBIT® are registered trademarks of LINBIT, Austria.
More information about the drbd-announce
mailing list