]> git.proxmox.com Git - proxmox-backup-restore-image.git/commitdiff
update kernel to 6.5.11 and ZFS to 2.2.1, refresh patches
authorStoiko Ivanov <s.ivanov@proxmox.com>
Tue, 28 Nov 2023 15:07:30 +0000 (16:07 +0100)
committerThomas Lamprecht <t.lamprecht@proxmox.com>
Tue, 28 Nov 2023 15:31:32 +0000 (16:31 +0100)
* for the kernel-patch this includes a rename from 0003+0004 to
  0001+0002
* for ZFS there was a change in upstream's autotools-setup - I
  referenced the commit in the actual patch-file

minimally tested with a VM with a zfs-pool and an ext4 disk
* restore of a directory on ext4 containing 160MB of debian packages
  as tar.zstd
* restore of a small folder (/root in a debian container) on zfs
both worked

restoring files from a Windows guest - worked, however there is an
independent issue with tpmstate not being found:
`given image 'drive-tpmstate0-backup.img.fidx' not found (400)`

directories with 10 million files also still cause the restore-shim to
run into OOM (but this is independent of the restore-image)

Signed-off-by: Stoiko Ivanov <s.ivanov@proxmox.com>
src/patches/kernel/0001-vsock-reduce-packet-size.patch [new file with mode: 0644]
src/patches/kernel/0002-PBS-restore-halt-machine-on-kernel-panic.patch [new file with mode: 0644]
src/patches/kernel/0003-vsock-reduce-packet-size.patch [deleted file]
src/patches/kernel/0004-PBS-restore-halt-machine-on-kernel-panic.patch [deleted file]
src/patches/zfs/0001-remove-reference-to-libudev.patch
src/submodules/ubuntu-kernel
src/submodules/zfsonlinux

diff --git a/src/patches/kernel/0001-vsock-reduce-packet-size.patch b/src/patches/kernel/0001-vsock-reduce-packet-size.patch
new file mode 100644 (file)
index 0000000..75b0e92
--- /dev/null
@@ -0,0 +1,33 @@
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: Stefan Reiter <s.reiter@proxmox.com>
+Date: Mon, 26 Apr 2021 14:08:36 +0200
+Subject: [PATCH] vsock: reduce packet size
+
+Reduce the maximum packet size to avoid allocation errors in VMs with
+very little memory available (since the buffer needs a contiguous
+block of memory, which can get rare for 64kB blocks).
+
+4kB used to be the default, and according to [0] increasing it makes
+the difference between ~25Gb/s and ~40Gb/s - certainly a lot faster,
+but both within the realm of unreachable for our restore scenario.
+
+[0] https://stefano-garzarella.github.io/posts/2019-11-08-kvmforum-2019-vsock/
+
+Signed-off-by: Stefan Reiter <s.reiter@proxmox.com>
+---
+ include/linux/virtio_vsock.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/include/linux/virtio_vsock.h b/include/linux/virtio_vsock.h
+index c58453699ee9..62a609444e12 100644
+--- a/include/linux/virtio_vsock.h
++++ b/include/linux/virtio_vsock.h
+@@ -112,7 +112,7 @@ static inline size_t virtio_vsock_skb_len(struct sk_buff *skb)
+ #define VIRTIO_VSOCK_DEFAULT_RX_BUF_SIZE      (1024 * 4)
+ #define VIRTIO_VSOCK_MAX_BUF_SIZE             0xFFFFFFFFUL
+-#define VIRTIO_VSOCK_MAX_PKT_BUF_SIZE         (1024 * 64)
++#define VIRTIO_VSOCK_MAX_PKT_BUF_SIZE         (1024 * 4)
+ enum {
+       VSOCK_VQ_RX     = 0, /* for host to guest data */
diff --git a/src/patches/kernel/0002-PBS-restore-halt-machine-on-kernel-panic.patch b/src/patches/kernel/0002-PBS-restore-halt-machine-on-kernel-panic.patch
new file mode 100644 (file)
index 0000000..8c2cabd
--- /dev/null
@@ -0,0 +1,29 @@
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: Stefan Reiter <s.reiter@proxmox.com>
+Date: Mon, 3 May 2021 11:13:10 +0200
+Subject: [PATCH] PBS-restore: halt machine on kernel panic
+
+Otherwise we might get into a loop where the user-space watchdog never
+has time to start, and thus the VM will run forever. Still not an idea
+options, since the kernel might hang and not panic, but better than
+nothing, and at least solves the out-of-memory forever looping.
+
+Signed-off-by: Stefan Reiter <s.reiter@proxmox.com>
+---
+ kernel/panic.c | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/kernel/panic.c b/kernel/panic.c
+index ea1c5fcb2d19..c317ca992a26 100644
+--- a/kernel/panic.c
++++ b/kernel/panic.c
+@@ -417,6 +417,9 @@ void panic(const char *fmt, ...)
+               }
+       }
+       if (panic_timeout != 0) {
++              /* PBS restore: stop machine on panic, let host deal with it */
++              machine_power_off();
++
+               /*
+                * This will not be a clean reboot, with everything
+                * shutting down.  But if there is a chance of
diff --git a/src/patches/kernel/0003-vsock-reduce-packet-size.patch b/src/patches/kernel/0003-vsock-reduce-packet-size.patch
deleted file mode 100644 (file)
index 378da53..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-From a437d428733881f408b5d42eb75812600083cb75 Mon Sep 17 00:00:00 2001
-From: Stefan Reiter <s.reiter@proxmox.com>
-Date: Mon, 26 Apr 2021 14:08:36 +0200
-Subject: [PATCH] vsock: reduce packet size
-
-Reduce the maximum packet size to avoid allocation errors in VMs with
-very little memory available (since the buffer needs a contiguous
-block of memory, which can get rare for 64kB blocks).
-
-4kB used to be the default, and according to [0] increasing it makes
-the difference between ~25Gb/s and ~40Gb/s - certainly a lot faster,
-but both within the realm of unreachable for our restore scenario.
-
-[0] https://stefano-garzarella.github.io/posts/2019-11-08-kvmforum-2019-vsock/
-
-Signed-off-by: Stefan Reiter <s.reiter@proxmox.com>
----
- include/linux/virtio_vsock.h | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/include/linux/virtio_vsock.h b/include/linux/virtio_vsock.h
-index dc636b727179..18c09ff72929 100644
---- a/include/linux/virtio_vsock.h
-+++ b/include/linux/virtio_vsock.h
-@@ -9,7 +9,7 @@
- #define VIRTIO_VSOCK_DEFAULT_RX_BUF_SIZE      (1024 * 4)
- #define VIRTIO_VSOCK_MAX_BUF_SIZE             0xFFFFFFFFUL
--#define VIRTIO_VSOCK_MAX_PKT_BUF_SIZE         (1024 * 64)
-+#define VIRTIO_VSOCK_MAX_PKT_BUF_SIZE         (1024 * 4)
- enum {
-       VSOCK_VQ_RX     = 0, /* for host to guest data */
--- 
-2.20.1
-
diff --git a/src/patches/kernel/0004-PBS-restore-halt-machine-on-kernel-panic.patch b/src/patches/kernel/0004-PBS-restore-halt-machine-on-kernel-panic.patch
deleted file mode 100644 (file)
index d79833f..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-From 7222e7424aab957f63b98853ea9fb30eec83666e Mon Sep 17 00:00:00 2001
-From: Stefan Reiter <s.reiter@proxmox.com>
-Date: Mon, 3 May 2021 11:13:10 +0200
-Subject: [PATCH] PBS-restore: halt machine on kernel panic
-
-Otherwise we might get into a loop where the user-space watchdog never
-has time to start, and thus the VM will run forever. Still not an idea
-options, since the kernel might hang and not panic, but better than
-nothing, and at least solves the out-of-memory forever looping.
-
-Signed-off-by: Stefan Reiter <s.reiter@proxmox.com>
----
- kernel/panic.c | 3 +++
- 1 file changed, 3 insertions(+)
-
-diff --git a/kernel/panic.c b/kernel/panic.c
-index 332736a72a58..56339ae5165c 100644
---- a/kernel/panic.c
-+++ b/kernel/panic.c
-@@ -325,6 +325,9 @@ void panic(const char *fmt, ...)
-               }
-       }
-       if (panic_timeout != 0) {
-+              /* PBS restore: stop machine on panic, let host deal with it */
-+              machine_power_off();
-+
-               /*
-                * This will not be a clean reboot, with everything
-                * shutting down.  But if there is a chance of
--- 
-2.20.1
-
index 467d9b5267db2a7da6b14478fa7b2e693050538c..8fe9b3140365dfd7099f05061964ec06d9f87601 100644 (file)
@@ -6,6 +6,8 @@ Subject: [PATCH] remove reference to libudev
 since there's no command line flag I can see...
 
 Signed-off-by: Stefan Reiter <s.reiter@proxmox.com>
+[ SI adapt to aebd94cc8541e0ec3b1de57edbd57c4280213089 ]
+Signed-off-by: Stoiko Ivanov <s.ivanov@proxmox.com>
 ---
  config/user-libudev.m4 | 17 -----------------
  config/user.m4         |  1 -
@@ -36,17 +38,14 @@ index 8c3c1d7e0..000000000
 -      ])
 -])
 diff --git a/config/user.m4 b/config/user.m4
-index c22067551..1b6d3a24e 100644
+index 6ec27a5b2..46244f19b 100644
 --- a/config/user.m4
 +++ b/config/user.m4
-@@ -18,7 +18,6 @@ AC_DEFUN([ZFS_AC_CONFIG_USER], [
+@@ -14,7 +14,6 @@ AC_DEFUN([ZFS_AC_CONFIG_USER], [
+       AM_COND_IF([BUILD_LINUX], [
+               ZFS_AC_CONFIG_USER_UDEV
+               ZFS_AC_CONFIG_USER_SYSTEMD
+-              ZFS_AC_CONFIG_USER_LIBUDEV
+               ZFS_AC_CONFIG_USER_LIBUUID
                ZFS_AC_CONFIG_USER_LIBBLKID
        ])
-       ZFS_AC_CONFIG_USER_LIBTIRPC
--      ZFS_AC_CONFIG_USER_LIBUDEV
-       ZFS_AC_CONFIG_USER_LIBCRYPTO
-       ZFS_AC_CONFIG_USER_LIBAIO
-       ZFS_AC_CONFIG_USER_CLOCK_GETTIME
--- 
-2.30.2
-
index 1978bab71596981268838efebf801f03fdce9d3a..9f8b45f5f8dbd6093b7ff71750bc6eb762fc8b20 160000 (submodule)
@@ -1 +1 @@
-Subproject commit 1978bab71596981268838efebf801f03fdce9d3a
+Subproject commit 9f8b45f5f8dbd6093b7ff71750bc6eb762fc8b20
index e25f9131d679692704c11dc0c1df6d4585b70c35..55dd24c4ccee2da61d5396289ef560f9b7bc6a68 160000 (submodule)
@@ -1 +1 @@
-Subproject commit e25f9131d679692704c11dc0c1df6d4585b70c35
+Subproject commit 55dd24c4ccee2da61d5396289ef560f9b7bc6a68