Hello community,

here is the log from the commit of package drbd for openSUSE:Factory checked in 
at 2018-01-25 12:41:29
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/drbd (Old)
 and      /work/SRC/openSUSE:Factory/.drbd.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "drbd"

Thu Jan 25 12:41:29 2018 rev:65 rq:569415 version:9.0.12+git.7eb4aef

Changes:
--------
--- /work/SRC/openSUSE:Factory/drbd/drbd.changes        2018-01-02 
16:35:06.122187703 +0100
+++ /work/SRC/openSUSE:Factory/.drbd.new/drbd.changes   2018-01-25 
12:41:32.383864789 +0100
@@ -1,0 +2,9 @@
+Wed Jan 24 03:44:56 UTC 2018 - [email protected]
+
+- bsc#1077318, Update to 9.0.12
+* Fix a race condition in the device_open code path that can cause an
+  internal counter to go negative
+- Update to 9.0.11
+* Fix bug in compat code: Without this fix large bios are not split.
+
+-------------------------------------------------------------------

Old:
----
  drbd-9.0.10+git.b7994aa1.tar.bz2

New:
----
  drbd-9.0.12+git.7eb4aef.tar.bz2

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ drbd.spec ++++++
--- /var/tmp/diff_new_pack.zdhWTJ/_old  2018-01-25 12:41:33.135829683 +0100
+++ /var/tmp/diff_new_pack.zdhWTJ/_new  2018-01-25 12:41:33.139829496 +0100
@@ -24,7 +24,7 @@
 %endif
 
 Name:           drbd
-Version:        9.0.10+git.b7994aa1
+Version:        9.0.12+git.7eb4aef
 Release:        0
 Summary:        DRBD driver for Linux
 License:        GPL-2.0+

++++++ _service ++++++
--- /var/tmp/diff_new_pack.zdhWTJ/_old  2018-01-25 12:41:33.187827255 +0100
+++ /var/tmp/diff_new_pack.zdhWTJ/_new  2018-01-25 12:41:33.187827255 +0100
@@ -7,10 +7,10 @@
     To update to a new release, change "revision" to the desired
     git commit hash and bump "version" if necessary
 
-    <param name="version">9.0.10</param>
+    <param name="version">9.0.12</param>
 -->
-    <param name="versionformat">9.0.10+git.%h</param>
-    <param name="revision">b7994aa164158d944115dac2800e5c27ab2cd2c9</param>
+    <param name="versionformat">9.0.12+git.%h</param>
+    <param name="revision">7eb4aef4abbfba8ebb1afbcc30574df74db0063e</param>
   </service>
 
   <service name="recompress" mode="disabled">

++++++ drbd-9.0.10+git.b7994aa1.tar.bz2 -> drbd-9.0.12+git.7eb4aef.tar.bz2 
++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/drbd-9.0.10+git.b7994aa1/.gitmodules 
new/drbd-9.0.12+git.7eb4aef/.gitmodules
--- old/drbd-9.0.10+git.b7994aa1/.gitmodules    1970-01-01 01:00:00.000000000 
+0100
+++ new/drbd-9.0.12+git.7eb4aef/.gitmodules     2018-01-24 04:48:18.161011514 
+0100
@@ -0,0 +1,10 @@
+[submodule "drbd/drbd-kernel-compat"]
+       path = drbd/drbd-kernel-compat
+       url = git://github.com/LINBIT/drbd-kernel-compat.git
+       update = rebase
+       fetchRecurseSubmodules = true
+[submodule "drbd-headers"]
+       path = drbd-headers
+       url = git://github.com/LINBIT/drbd-headers.git
+       update = rebase
+       fetchRecurseSubmodules = true
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/drbd-9.0.10+git.b7994aa1/ChangeLog 
new/drbd-9.0.12+git.7eb4aef/ChangeLog
--- old/drbd-9.0.10+git.b7994aa1/ChangeLog      2017-12-22 13:07:34.000000000 
+0100
+++ new/drbd-9.0.12+git.7eb4aef/ChangeLog       2018-01-24 04:48:18.161011514 
+0100
@@ -2,6 +2,18 @@
 ------
  For even more detail, use "git log" or visit http://git.drbd.org/.
 
+9.0.12-1 (api:genl2/proto:86-112/transport:14)
+--------
+* Fix a race condition in the device_open code path that can cause an
+  internal counter to go negative; It only triggered on Ubuntu/Debian
+  systems since the udev there uses FMODE_NDELAY when opening the
+  devices; The effect was that such a device fails attempts to remove it
+
+9.0.11-1 (api:genl2/proto:86-112/transport:14)
+--------
+ * Fix bug in compat code: Without this fix large bios are not split.
+   The user visible behavior is then a hanging DRBD.
+
 9.0.10-1 (api:genl2/proto:86-112/transport:14)
 --------
  * Fix resync of two secondary nodes in the presence of a 3rd node that is
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/drbd-9.0.10+git.b7994aa1/README.md 
new/drbd-9.0.12+git.7eb4aef/README.md
--- old/drbd-9.0.10+git.b7994aa1/README.md      2017-12-22 13:07:34.000000000 
+0100
+++ new/drbd-9.0.12+git.7eb4aef/README.md       2018-01-24 04:48:18.162011514 
+0100
@@ -16,4 +16,9 @@
 
 # Contributing
 Development is coordinated via [mailing lists](http://lists.linbit.com). 
Currently, we do not intend to use
-github issue tracking.
+github issue tracking/github PRs.
+
+# Releases
+Releases generated by git tags on github are snapshots of the git repository 
at the given time. You most
+likely do not want to use these. They might lack things such as generated man 
pages, the `configure` script,
+and other generated files. If you want to build from a tarball, use the ones 
[provided by us](https://www.linbit.com/en/drbd-community/drbd-download/).
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/drbd-9.0.10+git.b7994aa1/debian/changelog 
new/drbd-9.0.12+git.7eb4aef/debian/changelog
--- old/drbd-9.0.10+git.b7994aa1/debian/changelog       2017-12-22 
13:07:34.000000000 +0100
+++ new/drbd-9.0.12+git.7eb4aef/debian/changelog        2018-01-24 
04:48:18.162011514 +0100
@@ -1,3 +1,15 @@
+drbd (9.0.12-1) unstable; urgency=medium
+
+  * New upstream release.
+
+ -- Philipp Reisner <[email protected]>  Mon, 22 Jan 2018 13:24:51 +0100
+
+drbd (9.0.11-1) unstable; urgency=medium
+
+  * New upstream release.
+
+ -- Roland Kammerer <[email protected]>  Tue, 09 Jan 2018 13:13:07 
+0100
+
 drbd (9.0.10-1) unstable; urgency=low
 
   * New upstream release.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/drbd-9.0.10+git.b7994aa1/drbd/Kbuild 
new/drbd-9.0.12+git.7eb4aef/drbd/Kbuild
--- old/drbd-9.0.10+git.b7994aa1/drbd/Kbuild    2017-12-22 13:07:34.000000000 
+0100
+++ new/drbd-9.0.12+git.7eb4aef/drbd/Kbuild     2018-01-24 04:48:18.162011514 
+0100
@@ -150,4 +150,4 @@
                buildinfo="reproducible build, `date -u -d@${SOURCE_DATE_EPOCH} 
"+%F %T"`" ;    \
        fi ;                                                                    
                \
        echo -e "\t\t\" $$buildinfo\";\n}";                                     
                \
-       mv --force [email protected] $@
+       mv -f [email protected] $@
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/drbd-9.0.10+git.b7994aa1/drbd/drbd-kernel-compat/README.md 
new/drbd-9.0.12+git.7eb4aef/drbd/drbd-kernel-compat/README.md
--- old/drbd-9.0.10+git.b7994aa1/drbd/drbd-kernel-compat/README.md      
1970-01-01 01:00:00.000000000 +0100
+++ new/drbd-9.0.12+git.7eb4aef/drbd/drbd-kernel-compat/README.md       
2018-01-24 04:48:27.055011536 +0100
@@ -0,0 +1,19 @@
+# drbd-kernel-compat
+
+This repository contains the kernel backwards compatibility tests and wrappers 
for DRBD.
+
+DRBD, developed by [LINBIT](https://www.linbit.com), is a software that allows 
RAID 1 functionality over
+TCP/IP and RDMA for GNU/Linux. DRBD is a block device which is designed to 
build high availability clusters and
+software defined storage by providing a virtual shared device which keeps 
disks in nodes synchronised using
+TCP/IP or RDMA. This simulates RAID 1 but avoids the use of uncommon hardware 
(shared SCSI buses or Fibre Channel).
+
+# Using DRBD
+Please read the user-guide provided at 
[docs.linbit.com](https://docs.linbit.com).
+
+# Support
+For further products and professional support, please
+[contact](http://links.linbit.com/support) us.
+
+# Contributing
+Development is coordinated via [mailing lists](http://lists.linbit.com). 
Currently, we do not intend to use
+github issue tracking.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/drbd-9.0.10+git.b7994aa1/drbd/drbd-kernel-compat/drbd_wrappers.h 
new/drbd-9.0.12+git.7eb4aef/drbd/drbd-kernel-compat/drbd_wrappers.h
--- old/drbd-9.0.10+git.b7994aa1/drbd/drbd-kernel-compat/drbd_wrappers.h        
2017-12-22 13:07:34.000000000 +0100
+++ new/drbd-9.0.12+git.7eb4aef/drbd/drbd-kernel-compat/drbd_wrappers.h 
2018-01-24 04:48:27.055011536 +0100
@@ -1242,7 +1242,6 @@
        } while (0)
 #endif
 
-/* #ifndef COMPAT_HAVE_LIST_ENTRY_RCU */
 #ifndef list_entry_rcu
 #ifndef rcu_dereference_raw
 /* see c26d34a rcu: Add lockdep-enabled variants of rcu_dereference() */
@@ -1809,12 +1808,12 @@
 }
 #endif
 
-#if !(defined(COMPAT_HAVE_AHASH_REQEUST_ON_STACK) && \
+#if !(defined(COMPAT_HAVE_AHASH_REQUEST_ON_STACK) && \
       defined(COMPAT_HAVE_SHASH_DESC_ON_STACK) &&    \
       defined COMPAT_HAVE_SHASH_DESC_ZERO)
 #include <crypto/hash.h>
 
-#ifndef COMPAT_HAVE_AHASH_REQEUST_ON_STACK
+#ifndef COMPAT_HAVE_AHASH_REQUEST_ON_STACK
 #define AHASH_REQUEST_ON_STACK(name, ahash)                       \
        char __##name##_desc[sizeof(struct ahash_request) +        \
                crypto_ahash_reqsize(ahash)] CRYPTO_MINALIGN_ATTR; \
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/drbd-9.0.10+git.b7994aa1/drbd/drbd-kernel-compat/tests/have_kmalloc_array.c 
new/drbd-9.0.12+git.7eb4aef/drbd/drbd-kernel-compat/tests/have_kmalloc_array.c
--- 
old/drbd-9.0.10+git.b7994aa1/drbd/drbd-kernel-compat/tests/have_kmalloc_array.c 
    1970-01-01 01:00:00.000000000 +0100
+++ 
new/drbd-9.0.12+git.7eb4aef/drbd/drbd-kernel-compat/tests/have_kmalloc_array.c  
    2018-01-24 04:48:27.057011536 +0100
@@ -0,0 +1,18 @@
+commit a99e525b7341df6d84977e9bb47959311c94cfad
+Author: Lars Ellenberg <[email protected]>
+Date:   Wed Aug 16 11:10:28 2017 +0200
+
+    compat: kmalloc_array()
+
+diff --git a/compat/tests/have_kmalloc_array.c 
b/compat/tests/have_kmalloc_array.c
+new file mode 100644
+index 0000000..288f928
+--- /dev/null
++++ b/compat/tests/have_kmalloc_array.c
+@@ -0,0 +1,6 @@
++#include <linux/slab.h>
++
++void test(void)
++{
++      kmalloc_array(0, 0, 0);
++}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/drbd-9.0.10+git.b7994aa1/drbd/drbd_int.h 
new/drbd-9.0.12+git.7eb4aef/drbd/drbd_int.h
--- old/drbd-9.0.10+git.b7994aa1/drbd/drbd_int.h        2017-12-22 
13:07:34.000000000 +0100
+++ new/drbd-9.0.12+git.7eb4aef/drbd/drbd_int.h 2018-01-24 04:48:18.164011514 
+0100
@@ -767,6 +767,7 @@
         /* to be used in drbd_post_work() */
        TRY_BECOME_UP_TO_DATE,  /* try to become D_UP_TO_DATE */
        R_UNREGISTERED,
+       DOWN_IN_PROGRESS,
 };
 
 enum which_state { NOW, OLD = NOW, NEW };
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/drbd-9.0.10+git.b7994aa1/drbd/drbd_main.c 
new/drbd-9.0.12+git.7eb4aef/drbd/drbd_main.c
--- old/drbd-9.0.10+git.b7994aa1/drbd/drbd_main.c       2017-12-22 
13:07:34.000000000 +0100
+++ new/drbd-9.0.12+git.7eb4aef/drbd/drbd_main.c        2018-01-24 
04:48:18.165011514 +0100
@@ -2496,11 +2496,14 @@
        IOC_ABORT = 2,
 };
 
-static bool inc_open_count(struct drbd_device *device, fmode_t mode)
+static enum ioc_rv inc_open_count(struct drbd_device *device, fmode_t mode)
 {
        struct drbd_resource *resource = device->resource;
        enum ioc_rv r = mode & FMODE_NDELAY ? IOC_ABORT : IOC_SLEEP;
 
+       if (test_bit(DOWN_IN_PROGRESS, &resource->flags))
+               return IOC_ABORT;
+
        spin_lock_irq(&resource->req_lock);
        if (!resource->remote_state_change) {
                r = IOC_OK;
@@ -2563,10 +2566,9 @@
                goto out;
        }
 
-       if (test_bit(UNREGISTERED, &device->flags))
+       if (test_bit(UNREGISTERED, &device->flags)) {
                rv = -ENODEV;
-
-       if (mode & FMODE_WRITE) {
+       } else if (mode & FMODE_WRITE) {
                if (resource->role[NOW] != R_PRIMARY)
                        rv = -EROFS;
        } else /* READ access only */ {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/drbd-9.0.10+git.b7994aa1/drbd/drbd_nl.c 
new/drbd-9.0.12+git.7eb4aef/drbd/drbd_nl.c
--- old/drbd-9.0.10+git.b7994aa1/drbd/drbd_nl.c 2017-12-22 13:07:34.000000000 
+0100
+++ new/drbd-9.0.12+git.7eb4aef/drbd/drbd_nl.c  2018-01-24 04:48:18.165011514 
+0100
@@ -5585,6 +5585,7 @@
 
        resource = adm_ctx.resource;
        mutex_lock(&resource->adm_mutex);
+       set_bit(DOWN_IN_PROGRESS, &resource->flags);
        /* demote */
        retcode = drbd_set_role(resource, R_SECONDARY, false, 
adm_ctx.reply_skb);
        if (retcode < SS_SUCCESS) {
@@ -5633,6 +5634,7 @@
        /* holding a reference to resource in adm_crx until drbd_adm_finish() */
        mutex_unlock(&resource->conf_update);
 out:
+       clear_bit(DOWN_IN_PROGRESS, &resource->flags);
        mutex_unlock(&resource->adm_mutex);
        drbd_adm_finish(&adm_ctx, info, retcode);
        return 0;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/drbd-9.0.10+git.b7994aa1/drbd/drbd_req.c 
new/drbd-9.0.12+git.7eb4aef/drbd/drbd_req.c
--- old/drbd-9.0.10+git.b7994aa1/drbd/drbd_req.c        2017-12-22 
13:07:34.000000000 +0100
+++ new/drbd-9.0.12+git.7eb4aef/drbd/drbd_req.c 2018-01-24 04:48:18.168011514 
+0100
@@ -2137,8 +2137,8 @@
  * f5fe1b51905d blk: Ensure users for current->bio_list can see the full list.
  */
 #undef COMPAT_NEED_MAKE_REQUEST_RECURSION
-#ifndef COMPAT_HAVE_BLK_QUEUE_SPLIT_QUEUE_BIO
-#if defined(COMPAT_HAVE_BLK_QUEUE_SPLIT_QUEUE_BIO_BIOSET)
+#ifndef COMPAT_HAVE_BLK_QUEUE_SPLIT_Q_BIO
+#if defined(COMPAT_HAVE_BLK_QUEUE_SPLIT_Q_BIO_BIOSET)
 #define blk_queue_split(q,b) blk_queue_split(q,b,q->bio_split)
 # if LINUX_VERSION_CODE < KERNEL_VERSION(4,11,0)
 #  define COMPAT_NEED_MAKE_REQUEST_RECURSION
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/drbd-9.0.10+git.b7994aa1/drbd/linux/drbd_config.h 
new/drbd-9.0.12+git.7eb4aef/drbd/linux/drbd_config.h
--- old/drbd-9.0.10+git.b7994aa1/drbd/linux/drbd_config.h       2017-12-22 
13:07:34.000000000 +0100
+++ new/drbd-9.0.12+git.7eb4aef/drbd/linux/drbd_config.h        2018-01-24 
04:48:18.170011514 +0100
@@ -32,7 +32,7 @@
 
 /* End of external module for 2.6.33 stuff */
 
-#define REL_VERSION "9.0.10-1"
+#define REL_VERSION "9.0.12-1"
 #define PRO_VERSION_MIN 86
 #define PRO_VERSION_MAX 112
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/drbd-9.0.10+git.b7994aa1/drbd-kernel.spec 
new/drbd-9.0.12+git.7eb4aef/drbd-kernel.spec
--- old/drbd-9.0.10+git.b7994aa1/drbd-kernel.spec       2017-12-22 
13:07:34.000000000 +0100
+++ new/drbd-9.0.12+git.7eb4aef/drbd-kernel.spec        2018-01-24 
04:48:18.162011514 +0100
@@ -1,6 +1,6 @@
 Name: drbd-kernel
 Summary: Kernel driver for DRBD
-Version: 9.0.10
+Version: 9.0.12
 Release: 1%{?dist}
 
 # always require a suitable userland
@@ -103,6 +103,12 @@
 rm -rf %{buildroot}
 
 %changelog
+* Mon Jan 22 2018 Philipp Reisner <[email protected]> - 9.0.12-1
+- New upstream release.
+
+* Tue Jan 09 2018 Roland Kammerer <[email protected]> - 9.0.11-1
+- New upstream release.
+
 * Fri Dec 22 2017 Roland Kammerer <[email protected]> - 9.0.10-1
 - New upstream release.
 

++++++ drbd_git_revision ++++++
--- /var/tmp/diff_new_pack.zdhWTJ/_old  2018-01-25 12:41:33.591808394 +0100
+++ /var/tmp/diff_new_pack.zdhWTJ/_new  2018-01-25 12:41:33.595808208 +0100
@@ -1 +1 @@
-GIT-hash: b7994aa164158d944115dac2800e5c27ab2cd2c9
+GIT-hash: 7eb4aef4abbfba8ebb1afbcc30574df74db0063e


Reply via email to