Compare commits
10 Commits
b03175e961
...
fdd7076d71
| Author | SHA1 | Date | |
|---|---|---|---|
| fdd7076d71 | |||
| 7b1cd3b8c0 | |||
| dda3b9248b | |||
| 4e883a4ec5 | |||
| 2e2e28836c | |||
| f7fae412d9 | |||
| 4495daacdc | |||
| b9d59150d1 | |||
| e5fa0aa21d | |||
| 7130c30d2b |
@@ -2,7 +2,7 @@ RELEASE=5.1
|
||||
|
||||
# source form https://github.com/zfsonlinux/
|
||||
|
||||
ZFSVER=0.7.3
|
||||
ZFSVER=0.7.4
|
||||
ZFSPKGREL=pve1~bpo9
|
||||
SPLPKGREL=pve1~bpo9
|
||||
ZFSPKGVER=${ZFSVER}-${ZFSPKGREL}
|
||||
|
||||
@@ -1,3 +1,9 @@
|
||||
spl-linux (0.7.4-pve1~bpo9) unstable; urgency=medium
|
||||
|
||||
* update SPL to 0.7.4
|
||||
|
||||
-- Proxmox Support Team <support@proxmox.com> Tue, 19 Dec 2017 12:52:42 +0100
|
||||
|
||||
spl-linux (0.7.3-pve1~bpo9) unstable; urgency=medium
|
||||
|
||||
* update spl to 0.7.3
|
||||
|
||||
+1
-1
Submodule spl-debian updated: 785f8eda81...9936e726fc
@@ -1,7 +1,7 @@
|
||||
From 9cb5edffe475c25c4132aace431ffc6a97531583 Mon Sep 17 00:00:00 2001
|
||||
From 8c0a5dd331d746c5c114dda69f2eb5a4a0ac8eb9 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Fabian=20Gr=C3=BCnbichler?= <f.gruenbichler@proxmox.com>
|
||||
Date: Wed, 12 Oct 2016 10:57:39 +0200
|
||||
Subject: [PATCH 1/3] remove DKMS and module build
|
||||
Subject: [PATCH] remove DKMS and module build
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
@@ -14,7 +14,7 @@ Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
|
||||
3 files changed, 1 insertion(+), 92 deletions(-)
|
||||
|
||||
diff --git a/debian/control.in b/debian/control.in
|
||||
index 52c1660..dc6ee96 100644
|
||||
index 6846796..786e689 100644
|
||||
--- a/debian/control.in
|
||||
+++ b/debian/control.in
|
||||
@@ -8,40 +8,16 @@ Build-Depends: autogen,
|
||||
@@ -23,7 +23,7 @@ index 52c1660..dc6ee96 100644
|
||||
dh-autoreconf,
|
||||
- dkms (>> 2.2.0.2-1~),
|
||||
libtool
|
||||
Standards-Version: 3.9.8
|
||||
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
|
||||
@@ -59,7 +59,7 @@ index 52c1660..dc6ee96 100644
|
||||
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 52c1660..e055965 100644
|
||||
index 6846796..af4b7bb 100644
|
||||
--- a/debian/control
|
||||
+++ b/debian/control
|
||||
@@ -8,7 +8,6 @@ Build-Depends: autogen,
|
||||
@@ -68,7 +68,7 @@ index 52c1660..e055965 100644
|
||||
dh-autoreconf,
|
||||
- dkms (>> 2.2.0.2-1~),
|
||||
libtool
|
||||
Standards-Version: 3.9.8
|
||||
Standards-Version: 4.1.2
|
||||
Homepage: http://www.zfsonlinux.org/
|
||||
diff --git a/debian/rules b/debian/rules
|
||||
index b2fc86c..a474ca4 100755
|
||||
@@ -159,5 +159,5 @@ index b2fc86c..a474ca4 100755
|
||||
-
|
||||
- dh_builddeb -p${pmodules}
|
||||
--
|
||||
2.14.1
|
||||
2.14.2
|
||||
|
||||
|
||||
@@ -1,55 +0,0 @@
|
||||
From b414fa1353cac23e1d58d3fbdd1c48a7925bdbdb Mon Sep 17 00:00:00 2001
|
||||
From: Fabian-Gruenbichler <f.gruenbichler@proxmox.com>
|
||||
Date: Fri, 11 Aug 2017 00:21:54 +0200
|
||||
Subject: [PATCH 2/3] splat.1 manpage: fix spelling of 'hexadecimal'
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
Reviewed-by: George Melikov <mail@gmelikov.ru>
|
||||
Reviewed-by: Giuseppe Di Natale <dinatale2@llnl.gov>
|
||||
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
|
||||
Closes #642
|
||||
(cherry picked from commit a02fa347b75266f40c8f571d7d63a21ec7f6f13d)
|
||||
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
|
||||
---
|
||||
man/man1/splat.1 | 8 ++++----
|
||||
1 file changed, 4 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/man/man1/splat.1 b/man/man1/splat.1
|
||||
index 37f8435..407680b 100644
|
||||
--- a/man/man1/splat.1
|
||||
+++ b/man/man1/splat.1
|
||||
@@ -32,7 +32,7 @@ Print the usage message.
|
||||
.BI "\-l" "" ", \-\-list" ""
|
||||
.IP
|
||||
For each spl.ko subsystem, print all available test names and
|
||||
-hexidecimal identifiers with a short description.
|
||||
+hexadecimal identifiers with a short description.
|
||||
.HP
|
||||
.BI "\-t" " subsystem" ":" "test" ", \-\-test" " subsystem" ":" "test"
|
||||
.HP
|
||||
@@ -42,9 +42,9 @@ Run the \fItest\fR diagnostic routine for the spl.ko \fIsubsystem\fR.
|
||||
Specify this option more than once to run multiple tests.
|
||||
|
||||
The \fItest\fR and \fIsubsystem\fR parameters are the names or
|
||||
-hexidecimal identifiers returned by the \fBsplat --list\fR command.
|
||||
+hexadecimal identifiers returned by the \fBsplat --list\fR command.
|
||||
|
||||
-If \fIsubsystem\fR is a name and not a hexidecimal identifier, then the
|
||||
+If \fIsubsystem\fR is a name and not a hexadecimal identifier, then the
|
||||
\fBall\fR keyword can be used to run all available \fIsubsystem\fR
|
||||
tests.
|
||||
|
||||
@@ -73,7 +73,7 @@ Test the kernel compression and queue waiting facilities:
|
||||
# splat --test zlib:compress/uncompress --test taskq:wait
|
||||
.LP
|
||||
This is the same as the previous command, except that the subsystems
|
||||
-and tests are referenced by hexidecimal identifier instead of by name:
|
||||
+and tests are referenced by hexadecimal identifier instead of by name:
|
||||
.IP
|
||||
# splat -t 0x0f00:0x0f01 -t 0x0200:0x0204
|
||||
|
||||
--
|
||||
2.14.1
|
||||
|
||||
@@ -1,38 +0,0 @@
|
||||
From cb03b1234f9e3645fb731fdbeb5ba12f0013caa8 Mon Sep 17 00:00:00 2001
|
||||
From: Fabian-Gruenbichler <f.gruenbichler@proxmox.com>
|
||||
Date: Fri, 11 Aug 2017 00:22:31 +0200
|
||||
Subject: [PATCH 3/3] spl-module-parameters.5 manpage: fix macro
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
There is no '.sh' macro in troff/groff/man, only '.SH' for section
|
||||
headers. I assume .sp for a line break was intended here like
|
||||
in the rest of the man page.
|
||||
|
||||
Reviewed-by: George Melikov <mail@gmelikov.ru>
|
||||
Reviewed-by: Giuseppe Di Natale <dinatale2@llnl.gov>
|
||||
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
|
||||
Closes #643
|
||||
(cherry picked from commit 945b7f1c63e3a12d08349afb986b7dfaca370222)
|
||||
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
|
||||
---
|
||||
man/man5/spl-module-parameters.5 | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/man/man5/spl-module-parameters.5 b/man/man5/spl-module-parameters.5
|
||||
index 97241fd..e151144 100644
|
||||
--- a/man/man5/spl-module-parameters.5
|
||||
+++ b/man/man5/spl-module-parameters.5
|
||||
@@ -153,7 +153,7 @@ function takes a single global lock over the entire virtual address range
|
||||
which serializes all allocations. Using slightly different allocation
|
||||
functions for small and large objects allows us to handle a wide range of
|
||||
object sizes.
|
||||
-.sh
|
||||
+.sp
|
||||
The \fBspl_kmem_cache_kmem_limit\fR value is used to determine this cutoff
|
||||
size. One quarter the PAGE_SIZE is used as the default value because
|
||||
\fBspl_kmem_cache_obj_per_slab\fR defaults to 16. This means that at
|
||||
--
|
||||
2.14.1
|
||||
|
||||
@@ -1,3 +1 @@
|
||||
0001-remove-DKMS-and-module-build.patch
|
||||
0002-splat.1-manpage-fix-spelling-of-hexadecimal.patch
|
||||
0003-spl-module-parameters.5-manpage-fix-macro.patch
|
||||
|
||||
@@ -1,3 +1,17 @@
|
||||
zfs-linux (0.7.4-pve2~bpo9) unstable; urgency=medium
|
||||
|
||||
* cherry-pick ARC hit rate fix from 0.7.6
|
||||
|
||||
* always load ZFS modules on boot
|
||||
|
||||
-- Proxmox Support Team <support@proxmox.com> Fri, 19 Jan 2018 11:31:14 +0100
|
||||
|
||||
zfs-linux (0.7.4-pve1~bpo9) unstable; urgency=medium
|
||||
|
||||
* update ZFS to 0.7.4
|
||||
|
||||
-- Proxmox Support Team <support@proxmox.com> Tue, 19 Dec 2017 12:52:42 +0100
|
||||
|
||||
zfs-linux (0.7.3-pve1~bpo9) unstable; urgency=medium
|
||||
|
||||
* update ZFS to 0.7.3
|
||||
|
||||
+1
-1
Submodule zfs-debian updated: ab6f41b56c...20828cd18b
@@ -1,7 +1,7 @@
|
||||
From 0337ccd47d411a1db11e09dce1a6d183c2542f29 Mon Sep 17 00:00:00 2001
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Fabian=20Gr=C3=BCnbichler?= <f.gruenbichler@proxmox.com>
|
||||
Date: Mon, 6 Feb 2017 11:03:10 +0100
|
||||
Subject: [PATCH 1/3] remove DKMS, modules and dracut build
|
||||
Subject: [PATCH] remove DKMS, modules and dracut build
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
@@ -15,24 +15,24 @@ Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
|
||||
4 files changed, 8 insertions(+), 135 deletions(-)
|
||||
|
||||
diff --git a/debian/control.in b/debian/control.in
|
||||
index 18d2417cc..79bd9b302 100644
|
||||
index 771fc3a80..edfed470f 100644
|
||||
--- a/debian/control.in
|
||||
+++ b/debian/control.in
|
||||
@@ -9,7 +9,6 @@ Build-Depends: dh-autoreconf,
|
||||
dh-systemd | debhelper (>= 10.1),
|
||||
@@ -8,7 +8,6 @@ Uploaders: Aron Xu <aron@debian.org>,
|
||||
Build-Depends: dh-autoreconf,
|
||||
autotools-dev,
|
||||
debhelper (>= 9),
|
||||
debhelper (>= 10.2),
|
||||
- dkms (>> 2.1.1.2-5),
|
||||
libselinux1-dev,
|
||||
libtool,
|
||||
lsb-release,
|
||||
@@ -85,25 +84,11 @@ Description: OpenZFS pool library for Linux
|
||||
@@ -84,25 +83,11 @@ Description: OpenZFS pool library for Linux
|
||||
.
|
||||
This zpool library provides support for managing zpools.
|
||||
|
||||
-Package: zfs-dkms
|
||||
-Architecture: all
|
||||
-Pre-Depends: spl-dkms (>= ${source:Upstream-Version})
|
||||
-Pre-Depends: spl-dkms (>= ${source:Upstream-Version}), spl-dkms (<<${source:Upstream-Version}.)
|
||||
-Depends: dkms (>> 2.1.1.2-5), lsb-release, ${misc:Depends}
|
||||
-Recommends: zfsutils-linux, zfs-zed
|
||||
-Provides: zfs-modules
|
||||
@@ -53,7 +53,7 @@ index 18d2417cc..79bd9b302 100644
|
||||
${misc:Depends}
|
||||
Description: OpenZFS root filesystem capabilities for Linux - initramfs
|
||||
The Z file system is a pooled filesystem designed for maximum data
|
||||
@@ -113,23 +98,12 @@ Description: OpenZFS root filesystem capabilities for Linux - initramfs
|
||||
@@ -112,23 +97,12 @@ Description: OpenZFS root filesystem capabilities for Linux - initramfs
|
||||
This package adds OpenZFS to the system initramfs with a hook
|
||||
for the initramfs-tools infrastructure.
|
||||
|
||||
@@ -79,7 +79,7 @@ index 18d2417cc..79bd9b302 100644
|
||||
Conflicts: zfs, zfs-fuse, zutils
|
||||
Provides: zfsutils
|
||||
Description: command-line tools to manage OpenZFS filesystems
|
||||
@@ -143,7 +117,7 @@ Description: command-line tools to manage OpenZFS filesystems
|
||||
@@ -142,7 +116,7 @@ Description: command-line tools to manage OpenZFS filesystems
|
||||
Package: zfs-zed
|
||||
Section: contrib/admin
|
||||
Architecture: linux-any
|
||||
@@ -88,23 +88,23 @@ index 18d2417cc..79bd9b302 100644
|
||||
Description: OpenZFS Event Daemon
|
||||
The Z file system is a pooled filesystem designed for maximum data
|
||||
integrity, supporting data snapshots, multiple copies, and data
|
||||
@@ -154,7 +128,7 @@ Description: OpenZFS Event Daemon
|
||||
@@ -153,7 +127,7 @@ Description: OpenZFS Event Daemon
|
||||
Package: zfs-test
|
||||
Section: contrib/admin
|
||||
Architecture: linux-any
|
||||
-Depends: ${misc:Depends}, ${shlibs:Depends}, zfs-modules | zfs-dkms, zfsutils-linux, parted, lsscsi, mdadm, bc, ksh, fio, acl, sudo, sysstat, python
|
||||
+Depends: ${misc:Depends}, ${shlibs:Depends}, zfsutils-linux, parted, lsscsi, mdadm, bc, ksh, fio, acl, sudo, sysstat, python
|
||||
Breaks: zfsutils-linux (<= 0.6.5.11-1)
|
||||
Replaces: zfsutils-linux (<= 0.6.5.11-1)
|
||||
Description: OpenZFS test infrastructure an support scripts
|
||||
The Z file system is a pooled filesystem designed for maximum data
|
||||
integrity, supporting data snapshots, multiple copies, and data
|
||||
diff --git a/debian/control b/debian/control
|
||||
index 18d2417cc..b426b93c0 100644
|
||||
index 771fc3a80..be0b90337 100644
|
||||
--- a/debian/control
|
||||
+++ b/debian/control
|
||||
@@ -9,7 +9,6 @@ Build-Depends: dh-autoreconf,
|
||||
dh-systemd | debhelper (>= 10.1),
|
||||
@@ -8,7 +8,6 @@ Uploaders: Aron Xu <aron@debian.org>,
|
||||
Build-Depends: dh-autoreconf,
|
||||
autotools-dev,
|
||||
debhelper (>= 9),
|
||||
debhelper (>= 10.2),
|
||||
- dkms (>> 2.1.1.2-5),
|
||||
libselinux1-dev,
|
||||
libtool,
|
||||
@@ -119,12 +119,12 @@ index f54fe7310..16b1cef6c 100644
|
||||
etc/zfs/vdev_id.conf.sas_switch.example
|
||||
+usr/lib/dracut
|
||||
diff --git a/debian/rules b/debian/rules
|
||||
index 800df22e0..8c5beca10 100755
|
||||
index f445b58c5..d71926b33 100755
|
||||
--- a/debian/rules
|
||||
+++ b/debian/rules
|
||||
@@ -5,9 +5,6 @@ NAME := $(shell awk '$$1 == "Name:" { print $$2; }' META)
|
||||
VERSION := $(shell dpkg-parsechangelog \
|
||||
| awk '$$1 == "Version:" { print $$2; }' | cut -d- -f1)
|
||||
@@ -5,9 +5,6 @@ include /usr/share/dpkg/default.mk
|
||||
LSB_DISTRIBUTOR := $(shell lsb_release -is)
|
||||
NAME := $(shell awk '$$1 == "Name:" { print $$2; }' META)
|
||||
|
||||
-DKMSFILES := module include config zfs.release.in autogen.sh META AUTHORS \
|
||||
- DISCLAIMER COPYRIGHT OPENSOLARIS.LICENSE README.markdown
|
||||
@@ -132,16 +132,16 @@ index 800df22e0..8c5beca10 100755
|
||||
ifndef BUILD_UDEB
|
||||
BUILD_UDEB=false
|
||||
endif
|
||||
@@ -21,21 +18,16 @@ KVERS=$(shell uname -r)
|
||||
@@ -17,21 +14,16 @@ KVERS=$(shell uname -r)
|
||||
endif
|
||||
|
||||
ifndef SPL
|
||||
-SPL=/usr/src/spl-$(VERSION)
|
||||
-SPL=/usr/src/spl-$(DEB_VERSION_UPSTREAM)
|
||||
-endif
|
||||
-
|
||||
-ifndef SPLOBJ
|
||||
-SPLOBJ=/var/lib/dkms/spl/$(VERSION)/$(KVERS)/$(shell dpkg-architecture -qDEB_TARGET_GNU_CPU)
|
||||
+SPL=../pkg-spl
|
||||
-SPLOBJ=/var/lib/dkms/spl/$(DEB_VERSION_UPSTREAM)/$(KVERS)/$(DEB_TARGET_GNU_CPU)
|
||||
+SPL=../spl-build
|
||||
endif
|
||||
|
||||
non_epoch_version=$(shell echo $(KVERS) | perl -pe 's/^\d+://')
|
||||
@@ -156,54 +156,54 @@ index 800df22e0..8c5beca10 100755
|
||||
|
||||
override_dh_auto_configure:
|
||||
@cp debian/control.in debian/control
|
||||
@@ -77,36 +69,6 @@ override_dh_auto_install:
|
||||
@@ -73,36 +65,6 @@ override_dh_auto_install:
|
||||
$(INSTALL) -d '$(CURDIR)/debian/tmp/usr/sbin/'
|
||||
mv '$(CURDIR)/debian/tmp/sbin/zed' '$(CURDIR)/debian/tmp/usr/sbin/zed'
|
||||
|
||||
- @# Get a bare copy of the source code for DKMS.
|
||||
- @# This creates the $(CURDIR)/$(NAME)-$(VERSION)/ tree, which does not
|
||||
- @# This creates the $(CURDIR)/$(NAME)-$(DEB_VERSION_UPSTREAM)/ tree, which does not
|
||||
- @# contain the userland sources. NB: Remove-userland-dist-rules.patch
|
||||
- $(MAKE) distdir
|
||||
-
|
||||
- @# Install the DKMS source.
|
||||
- @# We only want the files needed to build the modules
|
||||
- mkdir -p '$(CURDIR)/debian/tmp/usr/src/$(NAME)-$(VERSION)'
|
||||
- $(foreach file,$(DKMSFILES),mv '$(CURDIR)/$(NAME)-$(VERSION)/$(file)' '$(CURDIR)/debian/tmp/usr/src/$(NAME)-$(VERSION)' || exit 1;)
|
||||
- mkdir -p '$(CURDIR)/debian/tmp/usr/src/$(NAME)-$(DEB_VERSION_UPSTREAM)'
|
||||
- $(foreach file,$(DKMSFILES),mv '$(CURDIR)/$(NAME)-$(DEB_VERSION_UPSTREAM)/$(file)' '$(CURDIR)/debian/tmp/usr/src/$(NAME)-$(DEB_VERSION_UPSTREAM)' || exit 1;)
|
||||
- @# Hellish awk line:
|
||||
- @# * Deletes from configure.ac the parts not needed for building the kernel module
|
||||
- @# * It deletes from inside AC_CONFIG_FILES([]) everything except:
|
||||
- @# (Makefile$|include/|module/|*.release$)
|
||||
- @# * Takes care of spaces and tabs
|
||||
- awk '/^AC_CONFIG_FILES\(\[/,/^\]\)/ { if ($$0 !~ /^(AC_CONFIG_FILES\(\[([ \t]+)?$$|\]\)([ \t]+)?$$|([ \t]+)?(include\/|module\/|Makefile([ \t]+)?$$|zfs\.release([ \t]+)?$$))/){next} } {print}' \
|
||||
- '$(CURDIR)/$(NAME)-$(VERSION)/configure.ac' > '$(CURDIR)/debian/tmp/usr/src/$(NAME)-$(VERSION)/configure.ac'
|
||||
- '$(CURDIR)/$(NAME)-$(DEB_VERSION_UPSTREAM)/configure.ac' > '$(CURDIR)/debian/tmp/usr/src/$(NAME)-$(DEB_VERSION_UPSTREAM)/configure.ac'
|
||||
- @# Set "SUBDIRS = module include" for CONFIG_KERNEL and remove SUBDIRS for all other configs.
|
||||
- sed '1,/CONFIG_KERNEL/s/SUBDIRS.*=.*//g;s/SUBDIRS.*=.*/SUBDIRS = module include/g;' \
|
||||
- '$(CURDIR)/$(NAME)-$(VERSION)/Makefile.am' > '$(CURDIR)/debian/tmp/usr/src/$(NAME)-$(VERSION)/Makefile.am'
|
||||
- '$(CURDIR)/$(NAME)-$(DEB_VERSION_UPSTREAM)/Makefile.am' > '$(CURDIR)/debian/tmp/usr/src/$(NAME)-$(DEB_VERSION_UPSTREAM)/Makefile.am'
|
||||
- @# Sanity test
|
||||
- grep -q 'SUBDIRS = module include' '$(CURDIR)/debian/tmp/usr/src/$(NAME)-$(VERSION)/Makefile.am'
|
||||
- grep -q 'SUBDIRS = module include' '$(CURDIR)/debian/tmp/usr/src/$(NAME)-$(DEB_VERSION_UPSTREAM)/Makefile.am'
|
||||
- @# Run autogen on the stripped source tree
|
||||
- cd '$(CURDIR)/debian/tmp/usr/src/$(NAME)-$(VERSION)'; ./autogen.sh
|
||||
- rm -fr '$(CURDIR)/debian/tmp/usr/src/$(NAME)-$(VERSION)/autom4te.cache'
|
||||
- cd '$(CURDIR)/debian/tmp/usr/src/$(NAME)-$(DEB_VERSION_UPSTREAM)'; ./autogen.sh
|
||||
- rm -fr '$(CURDIR)/debian/tmp/usr/src/$(NAME)-$(DEB_VERSION_UPSTREAM)/autom4te.cache'
|
||||
-
|
||||
- @# This shunt allows DKMS to install the Module.symvers and zfs_config.h
|
||||
- @# files to the ${dkms_tree} area through the POST_INSTALL directive.
|
||||
- printf '#!/bin/sh\ncp "$$@"\n' > '$(CURDIR)/debian/tmp/usr/src/$(NAME)-$(VERSION)/cp'
|
||||
- chmod 755 '$(CURDIR)/debian/tmp/usr/src/$(NAME)-$(VERSION)/cp'
|
||||
- printf '#!/bin/sh\ncp "$$@"\n' > '$(CURDIR)/debian/tmp/usr/src/$(NAME)-$(DEB_VERSION_UPSTREAM)/cp'
|
||||
- chmod 755 '$(CURDIR)/debian/tmp/usr/src/$(NAME)-$(DEB_VERSION_UPSTREAM)/cp'
|
||||
-
|
||||
mkdir -p $(CURDIR)/debian/tmp/usr/lib
|
||||
for i in `ls $(CURDIR)/debian/tmp/lib/*.so`; do \
|
||||
ln -s /lib/`readlink $${i}` $(CURDIR)/debian/tmp/usr/lib/`basename $${i}`; \
|
||||
@@ -116,9 +78,6 @@ override_dh_auto_install:
|
||||
@@ -112,9 +74,6 @@ override_dh_auto_install:
|
||||
chmod a-x $(CURDIR)/debian/tmp/etc/zfs/zfs-functions
|
||||
chmod a-x $(CURDIR)/debian/tmp/etc/default/zfs
|
||||
|
||||
-override_dh_dkms:
|
||||
- dh_dkms -V $(VERSION)
|
||||
- dh_dkms -V $(DEB_VERSION_UPSTREAM)
|
||||
-
|
||||
override_dh_makeshlibs:
|
||||
dh_makeshlibs -a
|
||||
dh_makeshlibs -a -V
|
||||
ifeq ($(BUILD_UDEB), true)
|
||||
@@ -156,65 +115,5 @@ override_dh_install:
|
||||
@@ -152,65 +111,5 @@ override_dh_install:
|
||||
|
||||
# ------------
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
From 72fbbc64fe6f9e527e7ebce42d8e57c1fa82dd34 Mon Sep 17 00:00:00 2001
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Fabian=20Gr=C3=BCnbichler?= <f.gruenbichler@proxmox.com>
|
||||
Date: Mon, 24 Oct 2016 13:47:06 +0200
|
||||
Subject: [PATCH 2/3] import with -d /dev/disk/by-id in scan service
|
||||
Subject: [PATCH] import with -d /dev/disk/by-id in scan service
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
@@ -12,10 +12,10 @@ Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/etc/systemd/system/zfs-import-scan.service.in b/etc/systemd/system/zfs-import-scan.service.in
|
||||
index 625f3a955..9a33d5f4a 100644
|
||||
index 227f5b74f..cc428b0d0 100644
|
||||
--- a/etc/systemd/system/zfs-import-scan.service.in
|
||||
+++ b/etc/systemd/system/zfs-import-scan.service.in
|
||||
@@ -11,7 +11,7 @@ ConditionPathExists=!@sysconfdir@/zfs/zpool.cache
|
||||
@@ -12,7 +12,7 @@ ConditionPathExists=!@sysconfdir@/zfs/zpool.cache
|
||||
Type=oneshot
|
||||
RemainAfterExit=yes
|
||||
ExecStartPre=/sbin/modprobe zfs
|
||||
@@ -23,7 +23,7 @@ index 625f3a955..9a33d5f4a 100644
|
||||
+ExecStart=@sbindir@/zpool import -aN -d /dev/disk/by-id -o cachefile=none
|
||||
|
||||
[Install]
|
||||
WantedBy=zfs-mount.service
|
||||
WantedBy=zfs-import.target
|
||||
--
|
||||
2.14.2
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
From f9171eb92ffd260debce2b28111dc7018d258588 Mon Sep 17 00:00:00 2001
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Wolfgang Bumiller <w.bumiller@proxmox.com>
|
||||
Date: Tue, 31 Oct 2017 09:08:42 +0100
|
||||
Subject: [PATCH 3/3] Use user namespaces for FSETID policy check.
|
||||
Subject: [PATCH] Use user namespaces for FSETID policy check.
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
@@ -11,6 +11,7 @@ the setgid flag has a valid mapping in the current
|
||||
namespace.
|
||||
|
||||
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
|
||||
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
|
||||
---
|
||||
module/zfs/policy.c | 16 +++++++++++++---
|
||||
1 file changed, 13 insertions(+), 3 deletions(-)
|
||||
|
||||
@@ -0,0 +1,33 @@
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Antonio Russo <antonio.e.russo@gmail.com>
|
||||
Date: Mon, 18 Dec 2017 12:43:55 -0500
|
||||
Subject: [PATCH] Enable zfs-import.target in systemd preset (#6968)
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
Cherry picked line from PR #6822, this enables the new
|
||||
target introduced in PR #6764.
|
||||
|
||||
Signed-off-by: Antonio Russo <antonio.e.russo@gmail.com>
|
||||
(cherry picked from commit da16fc5739b1962b3d357246938d2df06d6a1075)
|
||||
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
|
||||
---
|
||||
etc/systemd/system/50-zfs.preset.in | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/etc/systemd/system/50-zfs.preset.in b/etc/systemd/system/50-zfs.preset.in
|
||||
index 4d82778e3..884a69b5b 100644
|
||||
--- a/etc/systemd/system/50-zfs.preset.in
|
||||
+++ b/etc/systemd/system/50-zfs.preset.in
|
||||
@@ -1,6 +1,7 @@
|
||||
# ZFS is enabled by default
|
||||
enable zfs-import-cache.service
|
||||
disable zfs-import-scan.service
|
||||
+enable zfs-import.target
|
||||
enable zfs-mount.service
|
||||
enable zfs-share.service
|
||||
enable zfs-zed.service
|
||||
--
|
||||
2.14.2
|
||||
|
||||
@@ -0,0 +1,151 @@
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Brian Behlendorf <behlendorf1@llnl.gov>
|
||||
Date: Mon, 8 Jan 2018 09:52:36 -0800
|
||||
Subject: [PATCH] Fix ARC hit rate
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
When the compressed ARC feature was added in commit d3c2ae1
|
||||
the method of reference counting in the ARC was modified. As
|
||||
part of this accounting change the arc_buf_add_ref() function
|
||||
was removed entirely.
|
||||
|
||||
This would have be fine but the arc_buf_add_ref() function
|
||||
served a second undocumented purpose of updating the ARC access
|
||||
information when taking a hold on a dbuf. Without this logic
|
||||
in place a cached dbuf would not migrate its associated
|
||||
arc_buf_hdr_t to the MFU list. This would negatively impact
|
||||
the ARC hit rate, particularly on systems with a small ARC.
|
||||
|
||||
This change reinstates the missing call to arc_access() from
|
||||
dbuf_hold() by implementing a new arc_buf_access() function.
|
||||
|
||||
Reviewed-by: Giuseppe Di Natale <dinatale2@llnl.gov>
|
||||
Reviewed-by: Tony Hutter <hutter2@llnl.gov>
|
||||
Reviewed-by: Tim Chase <tim@chase2k.com>
|
||||
Reviewed by: George Wilson <george.wilson@delphix.com>
|
||||
Reviewed-by: George Melikov <mail@gmelikov.ru>
|
||||
Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
|
||||
Closes #6171
|
||||
Closes #6852
|
||||
Closes #6989
|
||||
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
|
||||
---
|
||||
include/sys/arc.h | 1 +
|
||||
module/zfs/arc.c | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++--
|
||||
module/zfs/dbuf.c | 4 +++-
|
||||
3 files changed, 56 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/include/sys/arc.h b/include/sys/arc.h
|
||||
index 66f37cf71..1ea4937bd 100644
|
||||
--- a/include/sys/arc.h
|
||||
+++ b/include/sys/arc.h
|
||||
@@ -221,6 +221,7 @@ void arc_buf_destroy(arc_buf_t *buf, void *tag);
|
||||
void arc_buf_info(arc_buf_t *buf, arc_buf_info_t *abi, int state_index);
|
||||
uint64_t arc_buf_size(arc_buf_t *buf);
|
||||
uint64_t arc_buf_lsize(arc_buf_t *buf);
|
||||
+void arc_buf_access(arc_buf_t *buf);
|
||||
void arc_release(arc_buf_t *buf, void *tag);
|
||||
int arc_released(arc_buf_t *buf);
|
||||
void arc_buf_sigsegv(int sig, siginfo_t *si, void *unused);
|
||||
diff --git a/module/zfs/arc.c b/module/zfs/arc.c
|
||||
index 2b0a78d4b..264e67735 100644
|
||||
--- a/module/zfs/arc.c
|
||||
+++ b/module/zfs/arc.c
|
||||
@@ -429,9 +429,14 @@ typedef struct arc_stats {
|
||||
* by multiple buffers.
|
||||
*/
|
||||
kstat_named_t arcstat_mutex_miss;
|
||||
+ /*
|
||||
+ * Number of buffers skipped when updating the access state due to the
|
||||
+ * header having already been released after acquiring the hash lock.
|
||||
+ */
|
||||
+ kstat_named_t arcstat_access_skip;
|
||||
/*
|
||||
* Number of buffers skipped because they have I/O in progress, are
|
||||
- * indrect prefetch buffers that have not lived long enough, or are
|
||||
+ * indirect prefetch buffers that have not lived long enough, or are
|
||||
* not from the spa we're trying to evict from.
|
||||
*/
|
||||
kstat_named_t arcstat_evict_skip;
|
||||
@@ -667,6 +672,7 @@ static arc_stats_t arc_stats = {
|
||||
{ "mfu_ghost_hits", KSTAT_DATA_UINT64 },
|
||||
{ "deleted", KSTAT_DATA_UINT64 },
|
||||
{ "mutex_miss", KSTAT_DATA_UINT64 },
|
||||
+ { "access_skip", KSTAT_DATA_UINT64 },
|
||||
{ "evict_skip", KSTAT_DATA_UINT64 },
|
||||
{ "evict_not_enough", KSTAT_DATA_UINT64 },
|
||||
{ "evict_l2_cached", KSTAT_DATA_UINT64 },
|
||||
@@ -4926,7 +4932,51 @@ arc_access(arc_buf_hdr_t *hdr, kmutex_t *hash_lock)
|
||||
}
|
||||
}
|
||||
|
||||
-/* a generic arc_done_func_t which you can use */
|
||||
+/*
|
||||
+ * This routine is called by dbuf_hold() to update the arc_access() state
|
||||
+ * which otherwise would be skipped for entries in the dbuf cache.
|
||||
+ */
|
||||
+void
|
||||
+arc_buf_access(arc_buf_t *buf)
|
||||
+{
|
||||
+ mutex_enter(&buf->b_evict_lock);
|
||||
+ arc_buf_hdr_t *hdr = buf->b_hdr;
|
||||
+
|
||||
+ /*
|
||||
+ * Avoid taking the hash_lock when possible as an optimization.
|
||||
+ * The header must be checked again under the hash_lock in order
|
||||
+ * to handle the case where it is concurrently being released.
|
||||
+ */
|
||||
+ if (hdr->b_l1hdr.b_state == arc_anon || HDR_EMPTY(hdr)) {
|
||||
+ mutex_exit(&buf->b_evict_lock);
|
||||
+ return;
|
||||
+ }
|
||||
+
|
||||
+ kmutex_t *hash_lock = HDR_LOCK(hdr);
|
||||
+ mutex_enter(hash_lock);
|
||||
+
|
||||
+ if (hdr->b_l1hdr.b_state == arc_anon || HDR_EMPTY(hdr)) {
|
||||
+ mutex_exit(hash_lock);
|
||||
+ mutex_exit(&buf->b_evict_lock);
|
||||
+ ARCSTAT_BUMP(arcstat_access_skip);
|
||||
+ return;
|
||||
+ }
|
||||
+
|
||||
+ mutex_exit(&buf->b_evict_lock);
|
||||
+
|
||||
+ ASSERT(hdr->b_l1hdr.b_state == arc_mru ||
|
||||
+ hdr->b_l1hdr.b_state == arc_mfu);
|
||||
+
|
||||
+ DTRACE_PROBE1(arc__hit, arc_buf_hdr_t *, hdr);
|
||||
+ arc_access(hdr, hash_lock);
|
||||
+ mutex_exit(hash_lock);
|
||||
+
|
||||
+ ARCSTAT_BUMP(arcstat_hits);
|
||||
+ ARCSTAT_CONDSTAT(!HDR_PREFETCH(hdr), demand, prefetch,
|
||||
+ !HDR_ISTYPE_METADATA(hdr), data, metadata, hits);
|
||||
+}
|
||||
+
|
||||
+/* a generic arc_read_done_func_t which you can use */
|
||||
/* ARGSUSED */
|
||||
void
|
||||
arc_bcopy_func(zio_t *zio, arc_buf_t *buf, void *arg)
|
||||
diff --git a/module/zfs/dbuf.c b/module/zfs/dbuf.c
|
||||
index 60f52d294..4ee121f5a 100644
|
||||
--- a/module/zfs/dbuf.c
|
||||
+++ b/module/zfs/dbuf.c
|
||||
@@ -2719,8 +2719,10 @@ __dbuf_hold_impl(struct dbuf_hold_impl_data *dh)
|
||||
return (SET_ERROR(ENOENT));
|
||||
}
|
||||
|
||||
- if (dh->dh_db->db_buf != NULL)
|
||||
+ if (dh->dh_db->db_buf != NULL) {
|
||||
+ arc_buf_access(dh->dh_db->db_buf);
|
||||
ASSERT3P(dh->dh_db->db.db_data, ==, dh->dh_db->db_buf->b_data);
|
||||
+ }
|
||||
|
||||
ASSERT(dh->dh_db->db_buf == NULL || arc_referenced(dh->dh_db->db_buf));
|
||||
|
||||
--
|
||||
2.14.2
|
||||
|
||||
@@ -0,0 +1,30 @@
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Fabian=20Gr=C3=BCnbichler?= <f.gruenbichler@proxmox.com>
|
||||
Date: Fri, 19 Jan 2018 12:13:46 +0100
|
||||
Subject: [PATCH] always load ZFS module on boot
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
since zfs-import-scan.service is disabled by default, and
|
||||
zfs-import-cache.service only gets started if a cache file exists, this
|
||||
is needed for zfs-mount, zfs-share and zfs-zed services in case ZFS is
|
||||
not actually used.
|
||||
|
||||
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
|
||||
---
|
||||
etc/modules-load.d/zfs.conf.in | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/etc/modules-load.d/zfs.conf.in b/etc/modules-load.d/zfs.conf.in
|
||||
index 8b41baa30..59b058c9a 100644
|
||||
--- a/etc/modules-load.d/zfs.conf.in
|
||||
+++ b/etc/modules-load.d/zfs.conf.in
|
||||
@@ -1,3 +1,3 @@
|
||||
# Always load kernel modules at boot. The default behavior is to load the
|
||||
# kernel modules in the zfs-import-*.service or when blkid(8) detects a pool.
|
||||
-#zfs
|
||||
+zfs
|
||||
--
|
||||
2.14.2
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
0001-remove-DKMS-modules-and-dracut-build.patch
|
||||
0002-import-with-d-dev-disk-by-id-in-scan-service.patch
|
||||
0003-Use-user-namespaces-for-FSETID-policy-check.patch
|
||||
0004-Enable-zfs-import.target-in-systemd-preset-6968.patch
|
||||
0005-Fix-ARC-hit-rate.patch
|
||||
0006-always-load-ZFS-module-on-boot.patch
|
||||
|
||||
Reference in New Issue
Block a user