Hello community, here is the log from the commit of package drbd for openSUSE:Factory checked in at 2020-03-17 13:11:18 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/drbd (Old) and /work/SRC/openSUSE:Factory/.drbd.new.3160 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "drbd" Tue Mar 17 13:11:18 2020 rev:85 rq:785806 version:9.0.22~1+git.fe2b5983 Changes: -------- --- /work/SRC/openSUSE:Factory/drbd/drbd.changes 2020-01-09 22:51:56.366749662 +0100 +++ /work/SRC/openSUSE:Factory/.drbd.new.3160/drbd.changes 2020-03-17 13:11:30.537861791 +0100 @@ -1,0 +2,46 @@ +Tue Mar 10 09:03:04 UTC 2020 - nick wang <[email protected]> + +- bsc#1166298, Update to drbd-9.0.22-1 + * introduce locking to avoid connection retries when UUIDs or + relevant flags change during the exchange of this data + * improve serialization of events after loosing a primary + * fix a constraint in sanitize state that can caused a promote to be + deliced by some other node + * fix a case of a false positive detection of a split brain condition + * allow a resync target to switch to the resync source with less + bits out of sync + * fix bitmap UUID after resync to use current UUID from self rather + than sync source + * fix pushing bitmap UUID into history when changed + * fix regression introduced with 9.0.20, that can cause a missed + resync after a reconciliation resync + * fix regression introduced with 9.0.20, that can cause a missed + resync after a promote on a diskless node + * fix UUID handling in case a node promotes during (a short) + reconciliation resync + * fix removing of a diskless node when quorum is enabled + +------------------------------------------------------------------- +Tue Feb 25 07:03:39 UTC 2020 - nick wang <[email protected]> + +- Update to drbd-9.0.21-1, require coccinelle >= 1.0.8 + * fix compat for write same on linux 4.9 and the Debian users + * fix kernel compat for linux 4.8 and 4.9; this mainly affected Debian + users; The symptoms where slow resync and resync getting stuck always at + the same point + * enable resync of lost and re-created backing devices (think lost node) when + the backing device was thinly provisioned and its current uuid is pre-set + to a 'day0 UUID' (by LINSTOR); that works by copying a unused bitmap slot + which tracks all changes since day 0 + * fix attach when bitmap is on PMEM; before it was set to + 'all blocks out-of-sync' upon attach + * avoid doing reconciliation resync multiple times by updating the + resync target's dagtag after if completed successfully + * return disk-state from Outdated to UpToDate when it loses connection + while in WFBitMapT and we have a stable and UpToDate peer + * new option --force-resync flag can be passed to new-current-uuid, that + can be used to trigger initial resync without touching the role +- Remove upstream drbd-update-resync-target-s-dagtag.patch +- Modify patch suse-coccinelle.patch to adopt spaas + +------------------------------------------------------------------- Old: ---- drbd-9.0.20~1+git.7dce3c8b.tar.bz2 drbd-update-resync-target-s-dagtag.patch New: ---- drbd-9.0.22~1+git.fe2b5983.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ drbd.spec ++++++ --- /var/tmp/diff_new_pack.5tuiiJ/_old 2020-03-17 13:11:31.393862447 +0100 +++ /var/tmp/diff_new_pack.5tuiiJ/_new 2020-03-17 13:11:31.397862451 +0100 @@ -23,7 +23,7 @@ %endif %endif Name: drbd -Version: 9.0.20~1+git.7dce3c8b +Version: 9.0.22~1+git.fe2b5983 Release: 0 Summary: Linux driver for the "Distributed Replicated Block Device" License: GPL-2.0-or-later @@ -36,12 +36,11 @@ Patch1: fix-resync-finished-with-syncs-have-bits-set.patch Patch2: rely-on-sb-handlers.patch Patch3: drbd-fix-zero-metadata-limit-by-page-size-misaligned.patch -Patch4: drbd-update-resync-target-s-dagtag.patch #In 61ff72f401680(v5.5-rc2), pr_warning is removed -Patch5: without_pr_warning.patch -Patch6: suse-coccinelle.patch +Patch4: without_pr_warning.patch +Patch99: suse-coccinelle.patch #https://github.com/openSUSE/rpmlint-checks/blob/master/KMPPolicyCheck.py -BuildRequires: coccinelle +BuildRequires: coccinelle >= 1.0.8 BuildRequires: kernel-source BuildRequires: kernel-syms BuildRequires: libelf-devel @@ -76,8 +75,7 @@ %patch2 -p1 %patch3 -p1 %patch4 -p1 -%patch5 -p1 -%patch6 -p1 +%patch99 -p1 mkdir source cp -a drbd/. source/. || : @@ -97,8 +95,8 @@ for flavor in %{flavors_to_build}; do rm -rf $flavor - cp -r source $flavor - cp %{_sourcedir}/Module.supported $flavor + cp -a -r source $flavor + cp -a %{_sourcedir}/Module.supported $flavor export DRBDSRC="$PWD/obj/$flavor" # bsc#1160194, check the coccicheck work. #make coccicheck ++++++ _service ++++++ --- /var/tmp/diff_new_pack.5tuiiJ/_old 2020-03-17 13:11:31.437862481 +0100 +++ /var/tmp/diff_new_pack.5tuiiJ/_new 2020-03-17 13:11:31.437862481 +0100 @@ -9,9 +9,9 @@ This will download branch first instead of tag. <param name="revision">drbd-9.0</param> - <param name="version">9.0.20~1</param> + <param name="version">9.0.22~1</param> --> - <param name="versionformat">9.0.20~1+git.%h</param> + <param name="versionformat">9.0.22~1+git.%h</param> <param name="revision">drbd-9.0</param> </service> ++++++ drbd-9.0.20~1+git.7dce3c8b.tar.bz2 -> drbd-9.0.22~1+git.fe2b5983.tar.bz2 ++++++ ++++ 3958 lines of diff (skipped) ++++++ drbd_git_revision ++++++ --- /var/tmp/diff_new_pack.5tuiiJ/_old 2020-03-17 13:11:31.721862699 +0100 +++ /var/tmp/diff_new_pack.5tuiiJ/_new 2020-03-17 13:11:31.725862703 +0100 @@ -1 +1 @@ -GIT-hash: 7dce3c8be99f4912f1490f9bb37f5aff6c873335 +GIT-hash: fe2b59836bdf1c7c81ccbaad8ef8016d9c3ba582 ++++++ suse-coccinelle.patch ++++++ --- /var/tmp/diff_new_pack.5tuiiJ/_old 2020-03-17 13:11:31.745862718 +0100 +++ /var/tmp/diff_new_pack.5tuiiJ/_new 2020-03-17 13:11:31.745862718 +0100 @@ -1,60 +1,73 @@ -diff -Naur drbd-9.0.20~1+git.7dce3c8b.orig/drbd/drbd-kernel-compat/gen_compat_patch.sh drbd-9.0.20~1+git.7dce3c8b/drbd/drbd-kernel-compat/gen_compat_patch.sh ---- drbd-9.0.20~1+git.7dce3c8b.orig/drbd/drbd-kernel-compat/gen_compat_patch.sh 2020-01-09 13:38:00.998984586 +0800 -+++ drbd-9.0.20~1+git.7dce3c8b/drbd/drbd-kernel-compat/gen_compat_patch.sh 2020-01-09 13:38:10.407036976 +0800 -@@ -41,6 +41,15 @@ +diff -Naur drbd-9.0.21~1+git.449d6bf2.orig/drbd/drbd-kernel-compat/gen_compat_patch.sh drbd-9.0.21~1+git.449d6bf2/drbd/drbd-kernel-compat/gen_compat_patch.sh +--- drbd-9.0.21~1+git.449d6bf2.orig/drbd/drbd-kernel-compat/gen_compat_patch.sh 2019-12-16 14:42:10.832866579 +0800 ++++ drbd-9.0.21~1+git.449d6bf2/drbd/drbd-kernel-compat/gen_compat_patch.sh 2019-12-16 15:11:08.209750606 +0800 +@@ -56,29 +56,49 @@ < drbd-kernel-compat/cocci/debugfs_compat_template.cocci.in \ - >> $incdir/.compat.cocci; - done; + >> $incdir/.compat.cocci + done + + echo " APPLIED_COCCI_FILES "; + cat $incdir/applied_cocci_files.txt; ++ + coccilibpath=$(rpm -ql coccinelle|grep standard.h|xargs dirname); + echo " SPATCH_SOURCES: "$*; + echo " COCCI_LIBPATH: "$coccilibpath; -+ echo " GENCOCCIRULES .compat.cocci"; -+ cat $incdir/.compat.cocci; + - echo " SPATCH $chksum "$K; - # Note: $* (or $@) is NOT make magic variable now, this is a shell script - # make $@, the target file, was passed as $1, and is now $compat_patch -@@ -49,7 +58,8 @@ - # argument away this is shell $@ respectively $* now. - # we know we don't have white-space in the argument list - -- command="spatch --sp-file $incdir/.compat.cocci $* --macro-file drbd-kernel-compat/cocci_macros.h --very-quiet > $compat_patch.tmp 2> $incdir/.spatch.stderr;" -+ command="spatch --sp-file $incdir/.compat.cocci $* --macro-file drbd-kernel-compat/cocci_macros.h --macro-file-builtins $coccilibpath/standard.h --iso-file $coccilibpath/standard.iso --very-quiet > $compat_patch.tmp 2> $incdir/.spatch.stderr;" -+ echo " SPATCH COMMAND $command "; - - if test -t 0; then - $SHELL -c "$command" -@@ -59,6 +69,14 @@ - # They may ignore INT and TERM; if you have to, use HUP. - </dev/null &> /dev/null script --append $incdir/.spatch.tty.out --return --quiet --command "$command" - fi + if [ -e $incdir/.compat.cocci ]; then +- echo " SPATCH $chksum "$K +- # Note: $* (or $@) is NOT make magic variable now, this is a shell script +- # make $@, the target file, was passed as $1, and is now $compat_patch +- # make $^, the source (and header) files spatch should operate on, +- # are "the rest of the shell argument array", so after shifting the first +- # argument away this is shell $@ respectively $* now. +- # we know we don't have white-space in the argument list +- +- command="spatch --sp-file $incdir/.compat.cocci $* --macro-file drbd-kernel-compat/cocci_macros.h --very-quiet > $compat_patch.tmp 2> $incdir/.spatch.stderr;" +- +- if test -t 0; then +- $SHELL -c "$command" +- else +- # spatch is broken in a way: it "requires" a tty. +- # provide a tty using "script", so I can have several spatch in parallel. +- # They may ignore INT and TERM; if you have to, use HUP. +- </dev/null &> /dev/null script --append $incdir/.spatch.tty.out --return --quiet --command "$command" +- fi ++ echo " GENCOCCIRULES .compat.cocci"; ++ cat $incdir/.compat.cocci; ++ ++ echo " SPATCH $chksum "$K ++ # Note: $* (or $@) is NOT make magic variable now, this is a shell script ++ # make $@, the target file, was passed as $1, and is now $compat_patch ++ # make $^, the source (and header) files spatch should operate on, ++ # are "the rest of the shell argument array", so after shifting the first ++ # argument away this is shell $@ respectively $* now. ++ # we know we don't have white-space in the argument list ++ ++ command="spatch --sp-file $incdir/.compat.cocci $* --macro-file drbd-kernel-compat/cocci_macros.h --macro-file-builtins $coccilibpath/standard.h --iso-file $coccilibpath/standard.iso --very-quiet > $compat_patch.tmp 2> $incdir/.spatch.stderr;" ++ echo " SPATCH COMMAND $command "; ++ ++ if test -t 0; then ++ $SHELL -c "$command" ++ else ++ # spatch is broken in a way: it "requires" a tty. ++ # provide a tty using "script", so I can have several spatch in parallel. ++ # They may ignore INT and TERM; if you have to, use HUP. ++ </dev/null &> /dev/null script --append $incdir/.spatch.tty.out --return --quiet --command "$command" ++ fi + else +- echo " SPATCH $chksum "$K" - nothing to do" +- touch $compat_patch.tmp ++ echo " SPATCH $chksum "$K" - nothing to do" ++ touch $compat_patch.tmp ++ fi + + echo " GENSPATCHFILE $compat_patch.tmp "; + cat $compat_patch.tmp; + if [ -e $incdir/.spatch.stderr ]; then + echo " GENSPATCHERR .spatch.stderr"; + cat $incdir/.spatch.stderr; -+ fi + fi + if [ -e $incdir/.compat.patch ]; then - cat $incdir/.compat.patch >> $compat_patch.tmp; - fi; -diff -Naur drbd-9.0.20~1+git.7dce3c8b.orig/Makefile drbd-9.0.20~1+git.7dce3c8b/Makefile ---- drbd-9.0.20~1+git.7dce3c8b.orig/Makefile 2020-01-09 13:38:00.994984563 +0800 -+++ drbd-9.0.20~1+git.7dce3c8b/Makefile 2020-01-09 13:41:50.512262670 +0800 -@@ -310,9 +310,11 @@ - endif - - coccicheck: coccinelle/*.cocci -+ $(eval coccilibpath := $(shell rpm -ql coccinelle|grep standard.h|xargs dirname)) - @for file in $^ ; do \ - echo " COCCICHECK $$(basename $${file} .cocci)"; \ -- spatch --very-quiet drbd/drbd_*.c -D $(MODE) --sp-file $${file}; \ -+ spatch drbd/drbd_*.c --macro-file-builtins $(coccilibpath)/standard.h \ -+ --iso-file $(coccilibpath)/standard.iso -D $(MODE) --sp-file $${file}; \ - done - - Makefile: ; + cat $incdir/.compat.patch >> $compat_patch.tmp + fi
