-Subproject commit 4a6efb89ab2d96761f5f1d5faea0cb8d1e5a8dd0
+Subproject commit d169ca25d5546467bd92a00f4d953dbc2d8e3de1
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
---
- debian/control.in | 24 --------------------
+ debian/control.in | 30 ------------------------
debian/control | 1 -
- debian/rules | 68 +------------------------------------------------------
- 3 files changed, 1 insertion(+), 92 deletions(-)
+ debian/rules | 70 ++-----------------------------------------------------
+ 3 files changed, 2 insertions(+), 99 deletions(-)
diff --git a/debian/control.in b/debian/control.in
-index b910704..786e689 100644
+index 02d3182..5fd81aa 100644
--- a/debian/control.in
+++ b/debian/control.in
-@@ -8,40 +8,16 @@ Build-Depends: autogen,
+@@ -8,46 +8,16 @@ Build-Depends: autogen,
autotools-dev,
debhelper (>= 9),
dh-autoreconf,
libtool
Standards-Version: 4.1.2
Homepage: http://www.zfsonlinux.org/
- Vcs-Git: git://anonscm.debian.org/pkg-zfsonlinux/spl.git
- Vcs-Browser: http://anonscm.debian.org/gitweb/?p=pkg-zfsonlinux/spl.git
+ Vcs-Git: git@salsa.debian.org:zfsonlinux-team/spl.git
+ Vcs-Browser: https://salsa.debian.org/zfsonlinux-team/spl
-Package: spl-dkms
-Architecture: all
--Depends: dkms (>> 2.2.1.0), file, libc-dev, libelf-dev, lsb-release, ${misc:Depends}
--Recommends: spl (>= ${source:Upstream-Version})
+-Depends: dkms (>> 2.2.1.0),
+- file,
+- libc-dev,
+- libelf-dev,
+- lsb-release,
+- ${misc:Depends}
+-Recommends: spl (>= ${source:Upstream-Version}),
+- @LINUX_COMPAT@
-Provides: spl-modules
-Description: Solaris Porting Layer kernel modules for Linux
- The Solaris Porting Layer (SPL) is a Linux kernel module which provides
The Solaris Porting Layer (SPL) is a Linux kernel module which provides
many of the Solaris kernel APIs. This shim layer makes it possible to
diff --git a/debian/control b/debian/control
-index b910704..9ddc12d 100644
+index c3abf8d..455c34d 100644
--- a/debian/control
+++ b/debian/control
@@ -8,7 +8,6 @@ Build-Depends: autogen,
Standards-Version: 4.1.2
Homepage: http://www.zfsonlinux.org/
diff --git a/debian/rules b/debian/rules
-index b2fc86c..a474ca4 100755
+index c7f2608..bca58f7 100755
--- a/debian/rules
+++ b/debian/rules
@@ -14,12 +14,8 @@ ifndef KVERS
+ dh $@ --with autoreconf --parallel
override_dh_auto_configure:
- @cp debian/control.in debian/control
+ sed "s/@LINUX_COMPAT@/linux-libc-dev \(< $(shell debian/get_next.sh)\)/" debian/control.in > debian/control
@@ -45,69 +41,7 @@ override_dh_auto_install:
@# This creates the $(CURDIR)/$(NAME)-$(VERSION)/ tree.
$(MAKE) distdir
override_dh_auto_clean:
dh_auto_clean
@if test -e META.orig; then mv META.orig META; fi
- cp debian/control.in debian/control
+- sed "s/@LINUX_COMPAT@/linux-libc-dev \(< $(shell debian/get_next.sh)\)/" debian/control.in > debian/control
-
-# ------------
-
- dh_md5sums -p${pmodules}
-
- dh_builddeb -p${pmodules}
++ cp debian/control.in debian/control
--
2.14.2
+++ /dev/null
-From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
-From: Tony Hutter <hutter2@llnl.gov>
-Date: Thu, 21 Dec 2017 10:56:32 -0800
-Subject: [PATCH] Linux 4.15 compat: timer updates
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Use timer_setup() macro and new timeout function definition.
-
-Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
-Signed-off-by: Tony Hutter <hutter2@llnl.gov>
-Closes #670
-Closes #671
-(cherry picked from commit 71513af020c0522560dc86668db46b49068787b3)
-Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
----
- module/spl/spl-taskq.c | 27 +++++++++++++++++++++++++--
- config/spl-build.m4 | 34 ++++++++++++++++++++++++++++++++++
- 2 files changed, 59 insertions(+), 2 deletions(-)
-
-diff --git a/module/spl/spl-taskq.c b/module/spl/spl-taskq.c
-index 7cad9f7..89c53a5 100644
---- a/module/spl/spl-taskq.c
-+++ b/module/spl/spl-taskq.c
-@@ -209,9 +209,9 @@ task_done(taskq_t *tq, taskq_ent_t *t)
- * add it to the priority list in order for immediate processing.
- */
- static void
--task_expire(unsigned long data)
-+task_expire_impl(taskq_ent_t *t)
- {
-- taskq_ent_t *w, *t = (taskq_ent_t *)data;
-+ taskq_ent_t *w;
- taskq_t *tq = t->tqent_taskq;
- struct list_head *l;
- unsigned long flags;
-@@ -245,6 +245,21 @@ task_expire(unsigned long data)
- wake_up(&tq->tq_work_waitq);
- }
-
-+#ifdef HAVE_KERNEL_TIMER_FUNCTION_TIMER_LIST
-+static void
-+task_expire(struct timer_list *tl)
-+{
-+ taskq_ent_t *t = from_timer(t, tl, tqent_timer);
-+ task_expire_impl(t);
-+}
-+#else
-+static void
-+task_expire(unsigned long data)
-+{
-+ task_expire_impl((taskq_ent_t *)data);
-+}
-+#endif
-+
- /*
- * Returns the lowest incomplete taskqid_t. The taskqid_t may
- * be queued on the pending list, on the priority list, on the
-@@ -590,7 +605,9 @@ taskq_dispatch(taskq_t *tq, task_func_t func, void *arg, uint_t flags)
- t->tqent_func = func;
- t->tqent_arg = arg;
- t->tqent_taskq = tq;
-+#ifndef HAVE_KERNEL_TIMER_FUNCTION_TIMER_LIST
- t->tqent_timer.data = 0;
-+#endif
- t->tqent_timer.function = NULL;
- t->tqent_timer.expires = 0;
- t->tqent_birth = jiffies;
-@@ -640,7 +657,9 @@ taskq_dispatch_delay(taskq_t *tq, task_func_t func, void *arg,
- t->tqent_func = func;
- t->tqent_arg = arg;
- t->tqent_taskq = tq;
-+#ifndef HAVE_KERNEL_TIMER_FUNCTION_TIMER_LIST
- t->tqent_timer.data = (unsigned long)t;
-+#endif
- t->tqent_timer.function = task_expire;
- t->tqent_timer.expires = (unsigned long)expire_time;
- add_timer(&t->tqent_timer);
-@@ -732,7 +751,11 @@ taskq_init_ent(taskq_ent_t *t)
- {
- spin_lock_init(&t->tqent_lock);
- init_waitqueue_head(&t->tqent_waitq);
-+#ifdef HAVE_KERNEL_TIMER_FUNCTION_TIMER_LIST
-+ timer_setup(&t->tqent_timer, NULL, 0);
-+#else
- init_timer(&t->tqent_timer);
-+#endif
- INIT_LIST_HEAD(&t->tqent_list);
- t->tqent_id = 0;
- t->tqent_func = NULL;
-diff --git a/config/spl-build.m4 b/config/spl-build.m4
-index accf675..25013b5 100644
---- a/config/spl-build.m4
-+++ b/config/spl-build.m4
-@@ -56,6 +56,7 @@ AC_DEFUN([SPL_AC_CONFIG_KERNEL], [
- SPL_AC_WAIT_QUEUE_HEAD_ENTRY
- SPL_AC_KERNEL_WRITE
- SPL_AC_KERNEL_READ
-+ SPL_AC_KERNEL_TIMER_FUNCTION_TIMER_LIST
- ])
-
- AC_DEFUN([SPL_AC_MODULE_SYMVERS], [
-@@ -1755,3 +1756,36 @@ AC_DEFUN([SPL_AC_KERNEL_READ], [
- ])
- EXTRA_KCFLAGS="$tmp_flags"
- ])
-+
-+dnl #
-+dnl # 4.15 API change
-+dnl # https://lkml.org/lkml/2017/11/25/90
-+dnl # Check if timer_list.func get passed a timer_list or an unsigned long
-+dnl # (older kernels). Also sanity check the from_timer() and timer_setup()
-+dnl # macros are available as well, since they will be used in the same newer
-+dnl # kernels that support the new timer_list.func signature.
-+dnl #
-+AC_DEFUN([SPL_AC_KERNEL_TIMER_FUNCTION_TIMER_LIST], [
-+ AC_MSG_CHECKING([whether timer_list.function gets a timer_list])
-+ tmp_flags="$EXTRA_KCFLAGS"
-+ EXTRA_KCFLAGS="-Werror"
-+ SPL_LINUX_TRY_COMPILE([
-+ #include <linux/timer.h>
-+ void task_expire(struct timer_list *tl) {}
-+ ],[
-+ #ifndef from_timer
-+ #error "No from_timer() macro"
-+ #endif
-+
-+ struct timer_list timer;
-+ timer.function = task_expire;
-+ timer_setup(&timer, NULL, 0);
-+ ],[
-+ AC_MSG_RESULT(yes)
-+ AC_DEFINE(HAVE_KERNEL_TIMER_FUNCTION_TIMER_LIST, 1,
-+ [timer_list.function gets a timer_list])
-+ ],[
-+ AC_MSG_RESULT(no)
-+ ])
-+ EXTRA_KCFLAGS="$tmp_flags"
-+])
---
-2.14.2
-
+++ /dev/null
-From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
-From: LOLi <loli10K@users.noreply.github.com>
-Date: Thu, 18 Jan 2018 19:14:18 +0100
-Subject: [PATCH] Fix Debian packaging on ARMv7/ARM64
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-When building packages on Debian-based systems specify the target
-architecture used by 'alien' to convert .rpm packages into .deb: this
-avoids detecting an incorrect value which results in the following
-errors:
-
-<package>.aarch64.rpm is for architecture aarch64 ; the package cannot be built on this system
-<package>.armv7l.rpm is for architecture armel ; the package cannot be built on this system
-
-Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
-Reviewed-by: George Melikov <mail@gmelikov.ru>
-Signed-off-by: loli10K <ezomori.nozomu@gmail.com>
-Closes zfsonlinux/zfs#7046
-Closes #678
-(cherry picked from commit 9ee1fc8b4cb7fdcda88e161d9fc2bbe50427972c)
-Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
----
- config/deb.am | 9 ++++++---
- 1 file changed, 6 insertions(+), 3 deletions(-)
-
-diff --git a/config/deb.am b/config/deb.am
-index e05a175..f745c91 100644
---- a/config/deb.am
-+++ b/config/deb.am
-@@ -32,24 +32,27 @@ deb-kmod: deb-local rpm-kmod
- name=${PACKAGE}; \
- version=${VERSION}-${RELEASE}; \
- arch=`$(RPM) -qp $${name}-kmod-$${version}.src.rpm --qf %{arch} | tail -1`; \
-+ debarch=`$(DPKG) --print-architecture`; \
- pkg1=kmod-$${name}*$${version}.$${arch}.rpm; \
-- fakeroot $(ALIEN) --bump=0 --scripts --to-deb $$pkg1; \
-+ fakeroot $(ALIEN) --bump=0 --scripts --to-deb --target=$$debarch $$pkg1; \
- $(RM) $$pkg1
-
- deb-dkms: deb-local rpm-dkms
- name=${PACKAGE}; \
- version=${VERSION}-${RELEASE}; \
- arch=`$(RPM) -qp $${name}-dkms-$${version}.src.rpm --qf %{arch} | tail -1`; \
-+ debarch=`$(DPKG) --print-architecture`; \
- pkg1=$${name}-dkms-$${version}.$${arch}.rpm; \
-- fakeroot $(ALIEN) --bump=0 --scripts --to-deb $$pkg1; \
-+ fakeroot $(ALIEN) --bump=0 --scripts --to-deb --target=$$debarch $$pkg1; \
- $(RM) $$pkg1
-
- deb-utils: deb-local rpm-utils
- name=${PACKAGE}; \
- version=${VERSION}-${RELEASE}; \
- arch=`$(RPM) -qp $${name}-$${version}.src.rpm --qf %{arch} | tail -1`; \
-+ debarch=`$(DPKG) --print-architecture`; \
- pkg1=$${name}-$${version}.$${arch}.rpm; \
-- fakeroot $(ALIEN) --bump=0 --scripts --to-deb $$pkg1; \
-+ fakeroot $(ALIEN) --bump=0 --scripts --to-deb --target=$$debarch $$pkg1; \
- $(RM) $$pkg1
-
- deb: deb-kmod deb-dkms deb-utils
---
-2.14.2
-
+++ /dev/null
-From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
-From: Tony Hutter <hutter2@llnl.gov>
-Date: Thu, 1 Feb 2018 10:02:27 -0800
-Subject: [PATCH] Tag spl-0.7.6
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-META file and changelog updated.
-
-Signed-off-by: Tony Hutter <hutter2@llnl.gov>
-(cherry picked from commit 3cc0ea2a461788408aa2325e8ecb4e7f209633a8)
-Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
----
- rpm/generic/spl-kmod.spec.in | 3 +++
- rpm/generic/spl.spec.in | 3 +++
- META | 2 +-
- 3 files changed, 7 insertions(+), 1 deletion(-)
-
-diff --git a/rpm/generic/spl-kmod.spec.in b/rpm/generic/spl-kmod.spec.in
-index af7132d..eb38c21 100644
---- a/rpm/generic/spl-kmod.spec.in
-+++ b/rpm/generic/spl-kmod.spec.in
-@@ -167,6 +167,9 @@ chmod u+x ${RPM_BUILD_ROOT}%{kmodinstdir_prefix}/*/extra/*/*/*
- rm -rf $RPM_BUILD_ROOT
-
- %changelog
-+* Thu Feb 01 2018 Tony Hutter <hutter2@llnl.gov> - 0.7.6-1
-+- Released 0.7.6-1, detailed release notes are available at:
-+- https://github.com/zfsonlinux/zfs/releases/tag/zfs-0.7.6
- * Mon Dec 18 2017 Tony Hutter <hutter2@llnl.gov> - 0.7.5-1
- - Released 0.7.5-1, detailed release notes are available at:
- - https://github.com/zfsonlinux/zfs/releases/tag/zfs-0.7.5
-diff --git a/rpm/generic/spl.spec.in b/rpm/generic/spl.spec.in
-index f619475..0338a47 100644
---- a/rpm/generic/spl.spec.in
-+++ b/rpm/generic/spl.spec.in
-@@ -34,6 +34,9 @@ make install DESTDIR=%{?buildroot}
- %{_mandir}/man5/*
-
- %changelog
-+* Thu Feb 01 2018 Tony Hutter <hutter2@llnl.gov> - 0.7.6-1
-+- Released 0.7.6-1, detailed release notes are available at:
-+- https://github.com/zfsonlinux/zfs/releases/tag/zfs-0.7.6
- * Mon Dec 18 2017 Tony Hutter <hutter2@llnl.gov> - 0.7.5-1
- - Released 0.7.5-1, detailed release notes are available at:
- - https://github.com/zfsonlinux/zfs/releases/tag/zfs-0.7.5
-diff --git a/META b/META
-index c66cd11..4b0c0bb 100644
---- a/META
-+++ b/META
-@@ -1,7 +1,7 @@
- Meta: 1
- Name: spl
- Branch: 1.0
--Version: 0.7.5
-+Version: 0.7.6
- Release: 1
- Release-Tags: relext
- License: GPL
---
-2.14.2
-
0001-remove-DKMS-and-module-build.patch
-0002-Linux-4.15-compat-timer-updates.patch
-0003-Fix-Debian-packaging-on-ARMv7-ARM64.patch
-0004-Tag-spl-0.7.6.patch