Skip to content

Tags: likunyur/drbd

Tags

drbd-9.1.7

Toggle drbd-9.1.7's commit message
9.1.7 (api:genl2/proto:110-121/transport:17)

--------
 * avoid deadlock upon trying to down an io-frozen DRBD device that
   has a file system mounted
 * fix DRBD to not send too large resync requests at multiples of 8TiB
 * fix for a "forgotten" resync after IO was suspended due to lack of quorum
 * refactored IO suspend/resume fixing several bugs; the worst one could
   lead to premature request completion
 * disable discards on diskless if diskful peers do not support it
 * make demote to secondary a two-phase state transition; that guarantees that
   after demotion, DRBD will not write to any meta-data in the cluster
 * enable "--force primary" in for no-quorum situations
 * allow graceful recovery of primary lacking quorum and therefore
   have forzen IO requests; that includes "--force secondary"
 * following upstream changes to DRBD up to Linux 5.15 and updated compat

drbd-9.1.6

Toggle drbd-9.1.6's commit message
9.1.6 (api:genl2/proto:110-121/transport:17)

--------
 * fix IO to internal meta-data for backing device larger than 128TB
 * fix resending requests towards diskless peers, this is relevant when
   fencing is enabled, but the connection is re-established before fencing
   succeeds; when the bug triggered it lead to "stuck" requests
 * remove lockless buffer pages handling; it still contained very hard to
   trigger bugs
 * make sure DRBD's resync does not cause unnecessary allocation in
   a thinly provisioned backing device on a resync target node
 * avoid unnecessary resync (or split-brain) due to a wrongly generated
   new current UUID when an already IO frozen DBRD gets new writes
 * small fix to autopromote, when an application tries a read-only open
   before it does a read-write open immediately after the peer primary
   vanished ungracefully
 * split out the secure boot key into a package on its own, that is
   necessary to allow installation of multiple drbd kernel module packages
 * Support for building containers for flacar linux

drbd-9.1.5

Toggle drbd-9.1.5's commit message
9.1.5 (api:genl2/proto:110-121/transport:17)

--------
 * merged all changes from drbd-9.0.32
  - fix a read-access-after-free, that could cause an OOPs; triggers with
    an unusual configuration with a secondary having a smaller AL than
    the primary or a diskless primary and heavy IO
  - avoid a livelock that can cause long IO delays during resync on a
    primary resync-target node
  - following upstream changes to DRBD up to Linux 5.14 and updated compat
    (including RHEL9-beta)
  - fix module override for Oracle-Linux
 * fixed a locking regression of the 9.1 branch, only relevant in
   the moment a local backing device delivers an IO error to drbd
 * removed compat support for kernel older than Linux-3.10 (RHEL7)
 * code cleanups and refactoring

drbd-9.0.32-1

Toggle drbd-9.0.32-1's commit message
9.0.32-1 (api:genl2/proto:86-121/transport:14)

--------
 * fix a read-access-after-free, that could cause an OOPs; triggers with
   an unusual configuration with a secondary having a smaller AL than
   the primary or a diskless primary and heavy IO
 * avoid a livelock that can cause long IO delays during resync on a
   primary resync-target node
 * following upstream changes to DRBD up to Linux 5.14 and updated compat
   (including RHEL9-beta)
 * fix module override for Oracle-Linux

drbd-9.1.4

Toggle drbd-9.1.4's commit message
9.1.4 (api:genl2/proto:110-121/transport:17)

--------
 * merged all changes from drbd-9.0.31
 * enabled dynamic debug on some additional log messages
 * remove (broken) write conflict resolution, replace it with warning
   about the fact
 * debugfs entry for the interval tree

drbd-9.0.31-1

Toggle drbd-9.0.31-1's commit message
9.0.31-1 (api:genl2/proto:86-121/transport:14)

--------
 * fix a possible call of NULL, a regression introduced with 9.0.26
 * fix a corner case in aborting an connect 2-phase-commit
 * fix detection of crashed primaries
 * fix resync decisions for crashed primaries in protocol A
 * protect resync decisions against changes of the local UUIDs
 * fix corner case that led to an endless loop logged
   with "Retrying drbd_rs_del_all() later. refcnt=..."
 * fix to resync after connecting to a diskless primary
 * do not clear bitmap between inconsistent nodes
 * add missing initializer for a resize 2-phase-commit
 * reject size increase from diskless nodes if there are size-limiting peers
 * remove queuing of 2-phare-commits; reduce complexity
 * allow reverting resync direction by the '--discard-my-data' option
 * new rr-conflict strategy called 'auto-discard'

drbd-9.1.3

Toggle drbd-9.1.3's commit message
9.1.3 (api:genl2/proto:110-120/transport:17)

--------
 * merged all fixes from drbd-9.0.30-0rc1
 * fix a corner-case NULL deref in the lockless buffer pages handling; the
   regression was introduced with 9.1.0 (released Feb 2021); To my knowledge
   it took 6 months until someone triggered it for the first time
 * fix sending a P_PEERS_IN_SYNC packet into a fresh connection (before
   handshake packets); this problem was introduced when the drbd-8.x
   compatibility code was removed
 * remove sending a DRBD-barrier packet when processing a REQ_PREFLUSH
   request, that improves IO-depth and improves performance with that

drbd-9.1.1

Toggle drbd-9.1.1's commit message
9.1.1 (api:genl2/proto:110-119/transport:17)

--------
 * fix a temporal deadlock you could trigger when you exercise promotion races
   and mix some read-only openers into the test case
 * fix for bitmap-copy operation in a very specific and unlikely case where
   two nodes do a bitmap-based resync due to disk-states
 * fix size negotiation when combining nodes of different CPU architectures
   that have different page sizes
 * fix a very rare race where DRBD reported wrong magic in a header
   packet right after reconnecting
 * fix a case where DRBD ends up reporting unrelated data; it affected
   thinly allocated resources with a diskless node in a recreate from day0
   event
 * changes to socket buffer sizes get applied to established connections immediately;
   before it was applied after a re-connect
 * add exists events for path objects
 * fix a merge-mistake that broke compatibility with 5.10 kernels

drbd-9.1.0

Toggle drbd-9.1.0's commit message
9.1.0 (api:genl2/proto:110-119/transport:16)

--------
 * was forked off from drbd 9.0.19
 * has all changes up to 9.0.28-1
 * locking in the IO-submit code path was considerably improved,
   allowing multiple CPU to submitt in parallel

drbd-9.0.30-1

Toggle drbd-9.0.30-1's commit message
9.0.30-1 (api:genl2/proto:86-120/transport:14)

--------
 * fix a crash when drbd-9 node gets connected to a drbd-8.4 node, the
   regression was introduced between 9.0.25 and 9.0.26
 * A improved approach to serialize rsyncs from multiple sources; the previous
   one could cause wrong accounting for online verify
 * fix a race condition that could cause resync operations to stall when the
   completion of one resync allows another one to proceed
 * fix a race condition that could cause an online verify operation to not
   terminate under specific conditions (corking enabled no other IO)
 * fix locking of drbd_devices idr that caused (very rarely) create/remove
   minor to fail