summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorEli Schwartz2019-05-18 23:18:42 -0400
committerEli Schwartz2019-05-18 23:27:47 -0400
commit18933bad9366cd5d9441ec4c15dcb57c339b6452 (patch)
treeb7866ccf16878efa3b8a4282d8e39791d017ed32
parent14c627741050ee08f39f7fbd5a8193830ca3161a (diff)
downloadaur-spl-dkms.tar.gz
upgpkg: spl-dkms 0.7.13-2
backport patch for linux 5.1 compat
-rw-r--r--.SRCINFO4
-rw-r--r--0001-Linux-5.1-compat-get_ds-removed.patch59
-rw-r--r--PKGBUILD5
3 files changed, 66 insertions, 2 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 7998d29ec0e3..d64ea832670f 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,17 +1,19 @@
pkgbase = spl-dkms
pkgdesc = Solaris Porting Layer kernel modules.
pkgver = 0.7.13
- pkgrel = 1
+ pkgrel = 2
url = https://zfsonlinux.org/
arch = any
license = GPL
makedepends = git
depends = dkms
source = git+https://github.com/zfsonlinux/spl.git#tag=spl-0.7.13?signed
+ source = 0001-Linux-5.1-compat-get_ds-removed.patch
source = 0001-only-build-the-module-in-dkms.conf.patch
validpgpkeys = 4F3BA9AB6D1F8D683DC2DFB56AD860EED4598027
validpgpkeys = C33DF142657ED1F7C328A2960AB9E991C6AF658B
sha256sums = SKIP
+ sha256sums = 7ff496450dd2ec451d7533d51664f47f6977b05441ed0e09cfccab94e4ff16dc
sha256sums = a6f6e6a84ed93269e83b92aad7c0dea713e56529d2c47aed3c64940d8b4fe5c5
pkgname = spl-dkms
diff --git a/0001-Linux-5.1-compat-get_ds-removed.patch b/0001-Linux-5.1-compat-get_ds-removed.patch
new file mode 100644
index 000000000000..3f0213125d9f
--- /dev/null
+++ b/0001-Linux-5.1-compat-get_ds-removed.patch
@@ -0,0 +1,59 @@
+From 52314bf4d9651233517d8596305b218d8fe30025 Mon Sep 17 00:00:00 2001
+From: Brian Behlendorf <behlendorf1@llnl.gov>
+Date: Thu, 7 Mar 2019 14:44:23 -0800
+Subject: [PATCH] Linux 5.1 compat: get_ds() removed
+
+Commit torvalds/linux@736706bee has removed the get_fs() function
+as a bit of cleanup. It has been defined as KERNEL_DS on all
+architectures for all supported kernels. Replace get_fs() with
+KERNEL_DS as was done in the kernel.
+
+Reviewed-by: Tom Caputi <tcaputi@datto.com>
+Reviewed-by: Tony Hutter <hutter2@llnl.gov>
+Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
+Closes #8479
+(adapted from zfs commit b46fd243d57d0af4b4b568d8c0c4b30b79059ecc)
+Signed-off-by: Eli Schwartz <eschwartz@archlinux.org>
+---
+ include/linux/file_compat.h | 4 ++--
+ module/spl/spl-vnode.c | 2 +-
+ 2 files changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/include/linux/file_compat.h b/include/linux/file_compat.h
+index 2fd6e5fc8..e8eb9d686 100644
+--- a/include/linux/file_compat.h
++++ b/include/linux/file_compat.h
+@@ -81,7 +81,7 @@ spl_kernel_write(struct file *file, const void *buf, size_t count, loff_t *pos)
+ ssize_t ret;
+
+ saved_fs = get_fs();
+- set_fs(get_ds());
++ set_fs(KERNEL_DS);
+
+ ret = vfs_write(file, (__force const char __user *)buf, count, pos);
+
+@@ -101,7 +101,7 @@ spl_kernel_read(struct file *file, void *buf, size_t count, loff_t *pos)
+ ssize_t ret;
+
+ saved_fs = get_fs();
+- set_fs(get_ds());
++ set_fs(KERNEL_DS);
+
+ ret = vfs_read(file, (void __user *)buf, count, pos);
+
+diff --git a/module/spl/spl-vnode.c b/module/spl/spl-vnode.c
+index cd0015f6b..0eb642936 100644
+--- a/module/spl/spl-vnode.c
++++ b/module/spl/spl-vnode.c
+@@ -608,7 +608,7 @@ vn_set_pwd(const char *filename)
+ * size to ensure strncpy_from_user() does not fail with -EFAULT.
+ */
+ saved_fs = get_fs();
+- set_fs(get_ds());
++ set_fs(KERNEL_DS);
+
+ rc = user_path_dir(filename, &path);
+ if (rc)
+--
+2.21.0
+
diff --git a/PKGBUILD b/PKGBUILD
index 1c40fca00461..50d2b23d64db 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -3,7 +3,7 @@
pkgname=spl-dkms
pkgver=0.7.13
-pkgrel=1
+pkgrel=2
pkgdesc="Solaris Porting Layer kernel modules."
arch=('any')
url="https://zfsonlinux.org/"
@@ -11,8 +11,10 @@ license=('GPL')
depends=('dkms')
makedepends=('git')
source=("git+https://github.com/zfsonlinux/spl.git#tag=spl-${pkgver}?signed"
+ "0001-Linux-5.1-compat-get_ds-removed.patch"
"0001-only-build-the-module-in-dkms.conf.patch")
sha256sums=('SKIP'
+ '7ff496450dd2ec451d7533d51664f47f6977b05441ed0e09cfccab94e4ff16dc'
'a6f6e6a84ed93269e83b92aad7c0dea713e56529d2c47aed3c64940d8b4fe5c5')
validpgpkeys=('4F3BA9AB6D1F8D683DC2DFB56AD860EED4598027' # Tony Hutter (GPG key for signing ZFS releases) <hutter2@llnl.gov>
'C33DF142657ED1F7C328A2960AB9E991C6AF658B') # Brian Behlendorf <behlendorf1@llnl.gov>
@@ -20,6 +22,7 @@ validpgpkeys=('4F3BA9AB6D1F8D683DC2DFB56AD860EED4598027' # Tony Hutter (GPG key
prepare() {
cd "${srcdir}"/${pkgname%-dkms}
+ patch -p1 -i ../0001-Linux-5.1-compat-get_ds-removed.patch
patch -p1 -i ../0001-only-build-the-module-in-dkms.conf.patch
# remove unneeded sections from module build