From: Philipp Reisner <philipp.reisner@linbit.com>
To: drbd-announce@lists.linbit.com
Cc: drbd-user@lists.linbit.com
Subject: drbd-9.1.20-rc.1 and drbd-9.2.9-rc.1
Date: Tue, 23 Apr 2024 18:20:36 +0200 [thread overview]
Message-ID: <86sezcdp9n.fsf@linbit.com> (raw)
Hello DRBD-users,
In this development cycle, we had two bug reports worth mentioning. One
was about a perplexing kernel crash stack trace. Fortunately, the
customer, who runs a big fleet of DRBD nodes, could reproduce it and
produce a kernel crash dump of this crash.
Joel and I took it as a challenge to decode the puzzle. With joint
brains, we examined a "partly overwritten" malloc()'d object. We were
able to reconstruct what happened and found the bug.
After finding the bug, I looked at the git history to understand how we
introduced that bug.
These bugs increasingly stem from an unintended interaction of two
developers' changes. Leaving us with the learning, utmost clarity of
interfaces, naming of locks and data structures, and clear expression
intention is key for avoiding such bugs in the future.
The Kubernetes CSI driver triggered the other crash in DRBD
(sometimes). The reason was that it downed resources in an unusual way
by deleting all minors first. Fixing that was, fortunately, a lot less
effort than the other one.
It will be welcome news for Ubuntu users that we tested heavily with the
upcoming Ubuntu-24.04 ("Noble") release. Besides updating the kernel
compat for Linux-6.8, we have noticed that the newer kernel delivers
netlink packets out-of-order more often. We use these netlink packets to
deliver information for drbd-kernel-driver to user-space. If you use
drbd-reactor or LINSTOR on Ubuntu Noble, you need to use drbd-utils
9.28.0 (or newer) to get a drbdsetup that brings out-of-order netlink
packets back into sequence.
This is a release candidate. Please help test it.
9.2.9-rc.1 (api:genl2/proto:86-122/transport:19)
--------
* Allow resync operations between secondaries if the sync source is
not connected with the primary node
* Changes merged from 9.1.20
- Fix a kernel crash that is sometimes triggered when downing drbd
resources in a specific, unusual order (was triggered by the
Kubernetes CSI driver)
- Fix a rarely triggering kernel crash upon adding paths to a
connection by rehauling the path lists' locking
- Fix the continuation of an interrupted initial resync
- Fix the state engine so that an incapable primary does not outdate
indirectly reachable secondary nodes
- Fix a logic bug that caused drbd to pretend that a peer's disk is
outdated when doing a manual disconnect on a down connection; with
that cured impact on fencing and quorum.
- Fix forceful demotion of suspended devices
- Rehaul of the build system to apply compatibility patches out of
place that allows one to build for different target kernels from a
single drbd source tree
- Updated compability code for Linux 6.8
https://pkg.linbit.com//downloads/drbd/9/drbd-9.2.9-rc.1.tar.gz
https://github.com/LINBIT/drbd/commit/c300e9c998d1b49475d0c797e8edab2f270448ab
https://pkg.linbit.com//downloads/drbd/9/drbd-9.1.20-rc.1.tar.gz
https://github.com/LINBIT/drbd/commit/87069b782e991c08e06fe01e775d48ec26bca076
reply other threads:[~2024-04-23 16:20 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=86sezcdp9n.fsf@linbit.com \
--to=philipp.reisner@linbit.com \
--cc=drbd-announce@lists.linbit.com \
--cc=drbd-user@lists.linbit.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox