Compare commits
7 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| d855afe7be | |||
| 34d701d1ac | |||
| 40fe66e33e | |||
| 1b7710c13c | |||
| 2f5fca8a1a | |||
| 8ba2c83746 | |||
| dff6b68bf5 |
@@ -1,7 +0,0 @@
|
|||||||
/*.build
|
|
||||||
/*.buildinfo
|
|
||||||
/*.changes
|
|
||||||
/*.deb
|
|
||||||
/*.dsc
|
|
||||||
/*.tar*
|
|
||||||
/zfs-utils-*.*/
|
|
||||||
@@ -1,11 +1,9 @@
|
|||||||
include /usr/share/dpkg/default.mk
|
include /usr/share/dpkg/default.mk
|
||||||
# source form https://github.com/zfsonlinux/
|
# source form https://github.com/zfsonlinux/
|
||||||
|
|
||||||
PACKAGE = zfs-linux
|
ZFSDIR=zfs-linux_$(DEB_VERSION_UPSTREAM)
|
||||||
|
ZFSSRC=upstream
|
||||||
SRCDIR = upstream
|
ORIG_SRC_TAR=$(ZFSDIR).orig.tar.gz
|
||||||
BUILDDIR ?= $(PACKAGE)-$(DEB_VERSION_UPSTREAM)
|
|
||||||
ORIG_SRC_TAR = $(PACKAGE)_$(DEB_VERSION_UPSTREAM).orig.tar.gz
|
|
||||||
|
|
||||||
ZFS_DEB1= libnvpair3linux_$(DEB_VERSION)_amd64.deb
|
ZFS_DEB1= libnvpair3linux_$(DEB_VERSION)_amd64.deb
|
||||||
|
|
||||||
@@ -32,14 +30,10 @@ DEBS= $(ZFS_DEB1) $(ZFS_DEB2) $(ZFS_DBG_DEBS)
|
|||||||
ZFS_DSC = zfs-linux_$(DEB_VERSION).dsc
|
ZFS_DSC = zfs-linux_$(DEB_VERSION).dsc
|
||||||
|
|
||||||
all: deb
|
all: deb
|
||||||
|
.PHONY: deb
|
||||||
.PHONY: deb dsc
|
|
||||||
deb: $(DEBS)
|
deb: $(DEBS)
|
||||||
|
.PHONY: dsc
|
||||||
dsc:
|
dsc: $(ZFS_DSC)
|
||||||
rm -rf *.dsc $(BUILDDIR)
|
|
||||||
$(MAKE) $(ZFS_DSC)
|
|
||||||
lintian $(ZFS_DSC)
|
|
||||||
|
|
||||||
# called from pve-kernel's Makefile to get patched sources
|
# called from pve-kernel's Makefile to get patched sources
|
||||||
.PHONY: kernel
|
.PHONY: kernel
|
||||||
@@ -53,36 +47,37 @@ dinstall: $(DEBS)
|
|||||||
|
|
||||||
.PHONY: submodule
|
.PHONY: submodule
|
||||||
submodule:
|
submodule:
|
||||||
test -f "$(SRCDIR)/README.md" || git submodule update --init
|
test -f "$(ZFSSRC)/README.md" || git submodule update --init
|
||||||
|
$(ZFSSRC)/README.md: submodule
|
||||||
$(SRCDIR)/README.md: submodule
|
|
||||||
|
|
||||||
.PHONY: zfs
|
.PHONY: zfs
|
||||||
zfs: $(DEBS)
|
zfs: $(DEBS)
|
||||||
$(ZFS_DEB2) $(ZFS_DBG_DEBS): $(ZFS_DEB1)
|
$(ZFS_DEB2) $(ZFS_DBG_DEBS): $(ZFS_DEB1)
|
||||||
$(ZFS_DEB1): $(BUILDDIR)
|
$(ZFS_DEB1): $(ZFSDIR)
|
||||||
cd $(BUILDDIR); dpkg-buildpackage -b -uc -us
|
cd $(ZFSDIR); dpkg-buildpackage -b -uc -us
|
||||||
lintian $(DEBS)
|
lintian $(DEBS)
|
||||||
|
|
||||||
$(ORIG_SRC_TAR): $(BUILDDIR)
|
$(ORIG_SRC_TAR): $(ZFSDIR)
|
||||||
tar czf $(ORIG_SRC_TAR) --exclude="$(BUILDDIR)/debian" $(BUILDDIR)
|
tar czf $(ORIG_SRC_TAR) --exclude="$(ZFSDIR)/debian" $(ZFSDIR)
|
||||||
|
|
||||||
$(ZFS_DSC): $(BUILDDIR) $(ORIG_SRC_TAR)
|
$(ZFS_DSC): $(ZFSDIR) $(ORIG_SRC_TAR)
|
||||||
cd $(BUILDDIR); dpkg-buildpackage -S -uc -us -d
|
tar czf zfs-linux_$(ZFSVER).orig.tar.gz $(ZFSDIR)
|
||||||
|
cd $(ZFSDIR); dpkg-buildpackage -S -uc -us -d
|
||||||
|
lintian $@
|
||||||
|
|
||||||
sbuild: $(ZFS_DSC)
|
sbuild: $(ZFS_DSC)
|
||||||
sbuild $(ZFS_DSC)
|
sbuild $(ZFS_DSC)
|
||||||
|
|
||||||
$(BUILDDIR): $(SRCDIR)/README.md $(SRCDIR) debian
|
$(ZFSDIR): $(ZFSSRC)/README.md $(ZFSSRC) debian
|
||||||
rm -rf $@ $@.tmp
|
rm -rf $(ZFSDIR) $(ZFSDIR).tmp
|
||||||
cp -a $(SRCDIR) $@.tmp
|
cp -a $(ZFSSRC) $(ZFSDIR).tmp
|
||||||
cp -a debian $@.tmp/debian
|
cp -a debian $(ZFSDIR).tmp/debian
|
||||||
mv $@.tmp $@
|
mv $(ZFSDIR).tmp $(ZFSDIR)
|
||||||
|
|
||||||
|
|
||||||
.PHONY: clean
|
.PHONY: clean
|
||||||
clean:
|
clean:
|
||||||
rm -rf $(PACKAGE)-[0-9]*/
|
rm -rf *~ *.deb *.changes *.buildinfo *.build *.dsc *.orig.tar.* *.debian.tar.* $(ZFSDIR)
|
||||||
rm -f *~ *.deb *.changes *.buildinfo *.build *.dsc *.orig.tar.* *.debian.tar.*
|
|
||||||
|
|
||||||
.PHONY: distclean
|
.PHONY: distclean
|
||||||
distclean: clean
|
distclean: clean
|
||||||
|
|||||||
Vendored
-26
@@ -1,29 +1,3 @@
|
|||||||
zfs-linux (2.1.15-pve1) bullseye; urgency=medium
|
|
||||||
|
|
||||||
* update ZFS to 2.1.15
|
|
||||||
|
|
||||||
-- Proxmox Support Team <support@proxmox.com> Fri, 29 Mar 2024 15:18:31 +0100
|
|
||||||
|
|
||||||
zfs-linux (2.1.14-pve1) bullseye; urgency=medium
|
|
||||||
|
|
||||||
* update ZFS to 2.1.14
|
|
||||||
|
|
||||||
-- Proxmox Support Team <support@proxmox.com> Fri, 01 Dec 2023 13:47:16 +0100
|
|
||||||
|
|
||||||
zfs-linux (2.1.13-pve1) bookworm; urgency=medium
|
|
||||||
|
|
||||||
* update ZFS to 2.1.13
|
|
||||||
|
|
||||||
-- Proxmox Support Team <support@proxmox.com> Thu, 28 Sep 2023 12:22:28 +0200
|
|
||||||
|
|
||||||
zfs-linux (2.1.12-pve1) bookworm; urgency=medium
|
|
||||||
|
|
||||||
* update ZFS to 2.1.12
|
|
||||||
|
|
||||||
* zfs trim: avoid exit-failure if last pool isn't nvme-only
|
|
||||||
|
|
||||||
-- Proxmox Support Team <support@proxmox.com> Tue, 13 Jun 2023 15:25:16 +0200
|
|
||||||
|
|
||||||
zfs-linux (2.1.11-pve2) bookworm; urgency=medium
|
zfs-linux (2.1.11-pve2) bookworm; urgency=medium
|
||||||
|
|
||||||
* re-build for Debian 12 Bookworm based releases
|
* re-build for Debian 12 Bookworm based releases
|
||||||
|
|||||||
Vendored
-14
@@ -285,17 +285,3 @@ Description: Solaris Porting Layer user-space utilities for Linux (dummy)
|
|||||||
to Linux primitives.
|
to Linux primitives.
|
||||||
.
|
.
|
||||||
This is a transitional dummy package. It can safely be removed.
|
This is a transitional dummy package. It can safely be removed.
|
||||||
|
|
||||||
Package: zfs-dbg
|
|
||||||
Section: contrib/metapackages
|
|
||||||
Architecture: all
|
|
||||||
Suggests: libnvpair3linux-dbgsym,
|
|
||||||
libpam-zfs-dbgsym,
|
|
||||||
libuutil3linux-dbgsym,
|
|
||||||
libzfs4linux-dbgsym,
|
|
||||||
libzfsbootenv1linux-dbgsym,
|
|
||||||
libzpool5linux-dbgsym,
|
|
||||||
zfs-test-dbgsym,
|
|
||||||
zfsutils-linux-dbgsym,
|
|
||||||
zfs-zed-dbgsym,
|
|
||||||
Description: Transitional package. It can be safely removed.
|
|
||||||
|
|||||||
+1
-1
@@ -13,7 +13,7 @@ Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
|
|||||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
diff --git a/cmd/zed/zed.d/zed.rc b/cmd/zed/zed.d/zed.rc
|
diff --git a/cmd/zed/zed.d/zed.rc b/cmd/zed/zed.d/zed.rc
|
||||||
index 1dfd43454..0180dd827 100644
|
index 227b26c26..240d0dbfa 100644
|
||||||
--- a/cmd/zed/zed.d/zed.rc
|
--- a/cmd/zed/zed.d/zed.rc
|
||||||
+++ b/cmd/zed/zed.d/zed.rc
|
+++ b/cmd/zed/zed.d/zed.rc
|
||||||
@@ -42,7 +42,7 @@ ZED_EMAIL_ADDR="root"
|
@@ -42,7 +42,7 @@ ZED_EMAIL_ADDR="root"
|
||||||
|
|||||||
+2
-2
@@ -17,10 +17,10 @@ Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
|
|||||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
diff --git a/cmd/zed/zed.d/Makefile.am b/cmd/zed/zed.d/Makefile.am
|
diff --git a/cmd/zed/zed.d/Makefile.am b/cmd/zed/zed.d/Makefile.am
|
||||||
index 1905a9207..6dc06252a 100644
|
index 2c8173b3e..ad39292e4 100644
|
||||||
--- a/cmd/zed/zed.d/Makefile.am
|
--- a/cmd/zed/zed.d/Makefile.am
|
||||||
+++ b/cmd/zed/zed.d/Makefile.am
|
+++ b/cmd/zed/zed.d/Makefile.am
|
||||||
@@ -51,7 +51,7 @@ install-data-hook:
|
@@ -49,7 +49,7 @@ install-data-hook:
|
||||||
for f in $(zedconfdefaults); do \
|
for f in $(zedconfdefaults); do \
|
||||||
test -f "$(DESTDIR)$(zedconfdir)/$${f}" -o \
|
test -f "$(DESTDIR)$(zedconfdir)/$${f}" -o \
|
||||||
-L "$(DESTDIR)$(zedconfdir)/$${f}" || \
|
-L "$(DESTDIR)$(zedconfdir)/$${f}" || \
|
||||||
|
|||||||
-87
@@ -1,87 +0,0 @@
|
|||||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Rich Ercolani <214141+rincebrain@users.noreply.github.com>
|
|
||||||
Date: Sat, 26 Aug 2023 14:25:46 -0400
|
|
||||||
Subject: [PATCH] Avoid save/restoring AMX registers to avoid a SPR erratum
|
|
||||||
|
|
||||||
Intel SPR erratum SPR4 says that if you trip into a vmexit while
|
|
||||||
doing FPU save/restore, your AMX register state might misbehave...
|
|
||||||
and by misbehave, I mean save all zeroes incorrectly, leading to
|
|
||||||
explosions if you restore it.
|
|
||||||
|
|
||||||
Since we're not using AMX for anything, the simple way to avoid
|
|
||||||
this is to just not save/restore those when we do anything, since
|
|
||||||
we're killing preemption of any sort across our save/restores.
|
|
||||||
|
|
||||||
If we ever decide to use AMX, it's not clear that we have any
|
|
||||||
way to mitigate this, on Linux...but I am not an expert.
|
|
||||||
|
|
||||||
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
|
|
||||||
Signed-off-by: Rich Ercolani <rincebrain@gmail.com>
|
|
||||||
Closes #14989
|
|
||||||
Closes #15168
|
|
||||||
(cherry picked from commit 277f2e587b085d1eb8aa48b4ac0768a9ef5745ab)
|
|
||||||
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
|
|
||||||
---
|
|
||||||
include/os/linux/kernel/linux/simd_x86.h | 19 ++++++++++++++-----
|
|
||||||
1 file changed, 14 insertions(+), 5 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/include/os/linux/kernel/linux/simd_x86.h b/include/os/linux/kernel/linux/simd_x86.h
|
|
||||||
index 660f0d42d..455167ac8 100644
|
|
||||||
--- a/include/os/linux/kernel/linux/simd_x86.h
|
|
||||||
+++ b/include/os/linux/kernel/linux/simd_x86.h
|
|
||||||
@@ -157,6 +157,15 @@
|
|
||||||
#endif
|
|
||||||
#endif
|
|
||||||
|
|
||||||
+#ifndef XFEATURE_MASK_XTILE
|
|
||||||
+/*
|
|
||||||
+ * For kernels where this doesn't exist yet, we still don't want to break
|
|
||||||
+ * by save/restoring this broken nonsense.
|
|
||||||
+ * See issue #14989 or Intel errata SPR4 for why
|
|
||||||
+ */
|
|
||||||
+#define XFEATURE_MASK_XTILE 0x60000
|
|
||||||
+#endif
|
|
||||||
+
|
|
||||||
#include <linux/mm.h>
|
|
||||||
#include <linux/slab.h>
|
|
||||||
|
|
||||||
@@ -319,18 +328,18 @@ kfpu_begin(void)
|
|
||||||
union fpregs_state *state = zfs_kfpu_fpregs[smp_processor_id()];
|
|
||||||
#if defined(HAVE_XSAVES)
|
|
||||||
if (static_cpu_has(X86_FEATURE_XSAVES)) {
|
|
||||||
- kfpu_do_xsave("xsaves", &state->xsave, ~0);
|
|
||||||
+ kfpu_do_xsave("xsaves", &state->xsave, ~XFEATURE_MASK_XTILE);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
#if defined(HAVE_XSAVEOPT)
|
|
||||||
if (static_cpu_has(X86_FEATURE_XSAVEOPT)) {
|
|
||||||
- kfpu_do_xsave("xsaveopt", &state->xsave, ~0);
|
|
||||||
+ kfpu_do_xsave("xsaveopt", &state->xsave, ~XFEATURE_MASK_XTILE);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
if (static_cpu_has(X86_FEATURE_XSAVE)) {
|
|
||||||
- kfpu_do_xsave("xsave", &state->xsave, ~0);
|
|
||||||
+ kfpu_do_xsave("xsave", &state->xsave, ~XFEATURE_MASK_XTILE);
|
|
||||||
} else if (static_cpu_has(X86_FEATURE_FXSR)) {
|
|
||||||
kfpu_save_fxsr(&state->fxsave);
|
|
||||||
} else {
|
|
||||||
@@ -415,12 +424,12 @@ kfpu_end(void)
|
|
||||||
union fpregs_state *state = zfs_kfpu_fpregs[smp_processor_id()];
|
|
||||||
#if defined(HAVE_XSAVES)
|
|
||||||
if (static_cpu_has(X86_FEATURE_XSAVES)) {
|
|
||||||
- kfpu_do_xrstor("xrstors", &state->xsave, ~0);
|
|
||||||
+ kfpu_do_xrstor("xrstors", &state->xsave, ~XFEATURE_MASK_XTILE);
|
|
||||||
goto out;
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
if (static_cpu_has(X86_FEATURE_XSAVE)) {
|
|
||||||
- kfpu_do_xrstor("xrstor", &state->xsave, ~0);
|
|
||||||
+ kfpu_do_xrstor("xrstor", &state->xsave, ~XFEATURE_MASK_XTILE);
|
|
||||||
} else if (static_cpu_has(X86_FEATURE_FXSR)) {
|
|
||||||
kfpu_restore_fxsr(&state->fxsave);
|
|
||||||
} else {
|
|
||||||
--
|
|
||||||
2.39.2
|
|
||||||
|
|
||||||
Vendored
-1
@@ -8,4 +8,3 @@
|
|||||||
0008-Patch-move-manpage-arcstat-1-to-arcstat-8.patch
|
0008-Patch-move-manpage-arcstat-1-to-arcstat-8.patch
|
||||||
0009-arcstat-Fix-integer-division-with-python3.patch
|
0009-arcstat-Fix-integer-division-with-python3.patch
|
||||||
0010-arc-stat-summary-guard-access-to-l2arc-MFU-MRU-stats.patch
|
0010-arc-stat-summary-guard-access-to-l2arc-MFU-MRU-stats.patch
|
||||||
0011-Avoid-save-restoring-AMX-registers-to-avoid-a-SPR-er.patch
|
|
||||||
|
|||||||
Vendored
-3
@@ -91,9 +91,6 @@ override_dh_python3:
|
|||||||
override_dh_makeshlibs:
|
override_dh_makeshlibs:
|
||||||
dh_makeshlibs -a -V
|
dh_makeshlibs -a -V
|
||||||
|
|
||||||
override_dh_strip:
|
|
||||||
dh_strip --dbgsym-migration='zfs-dbg (<< 2.0.4~)'
|
|
||||||
|
|
||||||
override_dh_auto_clean:
|
override_dh_auto_clean:
|
||||||
find . -name .gitignore -delete
|
find . -name .gitignore -delete
|
||||||
rm -rf zfs-$(DEB_VERSION_UPSTREAM)
|
rm -rf zfs-$(DEB_VERSION_UPSTREAM)
|
||||||
|
|||||||
+1
-1
@@ -60,7 +60,7 @@ do
|
|||||||
case "${ret}" in
|
case "${ret}" in
|
||||||
disable);;
|
disable);;
|
||||||
enable) trim_if_not_already_trimming "${pool}" ;;
|
enable) trim_if_not_already_trimming "${pool}" ;;
|
||||||
-|auto) if pool_is_nvme_only "${pool}"; then trim_if_not_already_trimming "${pool}"; fi ;;
|
-|auto) pool_is_nvme_only "${pool}" && trim_if_not_already_trimming "${pool}" ;;
|
||||||
*) cat > /dev/stderr <<EOF
|
*) cat > /dev/stderr <<EOF
|
||||||
$0: [WARNING] illegal value "${ret}" for property "${PROPERTY_NAME}" of ZFS dataset "${pool}".
|
$0: [WARNING] illegal value "${ret}" for property "${PROPERTY_NAME}" of ZFS dataset "${pool}".
|
||||||
$0: Acceptable choices for this property are: auto, enable, disable. The default is auto.
|
$0: Acceptable choices for this property are: auto, enable, disable. The default is auto.
|
||||||
|
|||||||
Vendored
-2
@@ -31,7 +31,6 @@ sbin/zstream
|
|||||||
sbin/zstreamdump
|
sbin/zstreamdump
|
||||||
usr/bin/zvol_wait
|
usr/bin/zvol_wait
|
||||||
usr/lib/modules-load.d/ lib/
|
usr/lib/modules-load.d/ lib/
|
||||||
usr/lib/zfs-linux/zfs_prepare_disk
|
|
||||||
usr/lib/zfs-linux/zpool.d/
|
usr/lib/zfs-linux/zpool.d/
|
||||||
usr/lib/zfs-linux/zpool_influxdb
|
usr/lib/zfs-linux/zpool_influxdb
|
||||||
usr/sbin/arc_summary
|
usr/sbin/arc_summary
|
||||||
@@ -69,7 +68,6 @@ usr/share/man/man8/zfs-list.8
|
|||||||
usr/share/man/man8/zfs-load-key.8
|
usr/share/man/man8/zfs-load-key.8
|
||||||
usr/share/man/man8/zfs-mount-generator.8
|
usr/share/man/man8/zfs-mount-generator.8
|
||||||
usr/share/man/man8/zfs-mount.8
|
usr/share/man/man8/zfs-mount.8
|
||||||
usr/share/man/man8/zfs_prepare_disk.8
|
|
||||||
usr/share/man/man8/zfs-program.8
|
usr/share/man/man8/zfs-program.8
|
||||||
usr/share/man/man8/zfs-project.8
|
usr/share/man/man8/zfs-project.8
|
||||||
usr/share/man/man8/zfs-projectspace.8
|
usr/share/man/man8/zfs-projectspace.8
|
||||||
|
|||||||
+1
-1
Submodule upstream updated: fb6d532066...e25f9131d6
Reference in New Issue
Block a user