Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package kdump for openSUSE:Factory checked in at 2026-09-17 15:16:13 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/kdump (Old) and /work/SRC/openSUSE:Factory/.kdump.new.383539 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kdump" Thu Sep 17 15:16:13 2026 rev:167 rq:1378408 version:2.1.10 Changes: -------- --- /work/SRC/openSUSE:Factory/kdump/kdump.changes 2026-05-07 15:43:50.960363501 +0200 +++ /work/SRC/openSUSE:Factory/.kdump.new.383539/kdump.changes 2026-09-17 15:17:43.572700086 +0200 @@ -1,0 +2,11 @@ +Fri Sep 11 18:03:17 UTC 2026 - Jiri Bohac <[email protected]> + +- upgrade to version 2.1.10 + * calibrate: measure per-cpu requirements + * kdumptool calibrate: take KDUMP_CPUS into account for PPC + * PPC: round up KDUMP_CPUS on SMT systems to nearest threads-per-cpu + * Set default KDUMP_CPUs to 4 (jsc#PED-16732, bsc#1239999) + * add KDUMP_USE_CMA: experimental support for CMA reservation (jsc#PED-14553) +- update calibrate values + +------------------------------------------------------------------- Old: ---- kdump-2.1.9.tar.xz New: ---- kdump-2.1.10.tar.xz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ kdump.spec ++++++ --- /var/tmp/diff_new_pack.MpYxpc/_old 2026-09-17 15:17:44.449736838 +0200 +++ /var/tmp/diff_new_pack.MpYxpc/_new 2026-09-17 15:17:44.451736922 +0200 @@ -57,7 +57,7 @@ %define dracutlibdir %{_prefix}/lib/dracut Name: kdump -Version: 2.1.9 +Version: 2.1.10 Release: 0 Summary: Kernel crash dump scripts and utilities License: GPL-2.0-or-later ++++++ _scmsync.obsinfo ++++++ --- /var/tmp/diff_new_pack.MpYxpc/_old 2026-09-17 15:17:44.487738431 +0200 +++ /var/tmp/diff_new_pack.MpYxpc/_new 2026-09-17 15:17:44.491738598 +0200 @@ -1,6 +1,6 @@ -mtime: 1778078166 -commit: 1a01525bacf61303e988dcd9c56e0550a75c63764454c9cd8510ee182618a73a +mtime: 1789150827 +commit: b5698f4864f02da7f23dd11c409c96ae97902f7c79a09480148ad36e16672923 url: https://src.opensuse.org/kernel-kdump/kdump -revision: 1a01525bacf61303e988dcd9c56e0550a75c63764454c9cd8510ee182618a73a +revision: b5698f4864f02da7f23dd11c409c96ae97902f7c79a09480148ad36e16672923 projectscmsync: https://src.opensuse.org/kernel-kdump/_ObsPrj ++++++ build.specials.obscpio ++++++ ++++++ build.specials.obscpio ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/.gitignore new/.gitignore --- old/.gitignore 1970-01-01 01:00:00.000000000 +0100 +++ new/.gitignore 2026-09-11 20:20:27.000000000 +0200 @@ -0,0 +1 @@ +.osc ++++++ calibrate.conf.all ++++++ --- /var/tmp/diff_new_pack.MpYxpc/_old 2026-09-17 15:17:44.699747315 +0200 +++ /var/tmp/diff_new_pack.MpYxpc/_new 2026-09-17 15:17:44.702747441 +0200 @@ -1,23 +1,23 @@ -alp1600.aarch64:INIT_CACHED=42120 -alp1600.aarch64:INIT_CACHED_64kb=80192 +alp1600.aarch64:INIT_CACHED=47712 +alp1600.aarch64:INIT_CACHED_64kb=102784 alp1600.aarch64:INIT_CACHED_NET=28336 alp1600.aarch64:INIT_CACHED_NET_64kb=35584 -alp1600.aarch64:INIT_NET=8912 -alp1600.aarch64:INIT_NET_64kb=8896 -alp1600.aarch64:KERNEL_BASE=106428 -alp1600.aarch64:KERNEL_BASE_64kb=131456 -alp1600.aarch64:KERNEL_INIT=26240 -alp1600.aarch64:KERNEL_INIT_64kb=27520 +alp1600.aarch64:INIT_NET=8964 +alp1600.aarch64:INIT_NET_64kb=8960 +alp1600.aarch64:KERNEL_BASE=110728 +alp1600.aarch64:KERNEL_BASE_64kb=152752 +alp1600.aarch64:KERNEL_INIT=30896 +alp1600.aarch64:KERNEL_INIT_64kb=32128 alp1600.aarch64:PAGESIZE=4096 alp1600.aarch64:PAGESIZE_64kb=65536 -alp1600.aarch64:PERCPU=224 -alp1600.aarch64:PERCPU_64kb=896 +alp1600.aarch64:PERCPU=2064 +alp1600.aarch64:PERCPU_64kb=5288 alp1600.aarch64:SIZEOFPAGE=64 alp1600.aarch64:SIZEOFPAGE_64kb=64 -alp1600.aarch64:USER_BASE=23568 -alp1600.aarch64:USER_BASE_64kb=68608 -alp1600.aarch64:USER_NET=3444 -alp1600.aarch64:USER_NET_64kb=10304 +alp1600.aarch64:USER_BASE=23424 +alp1600.aarch64:USER_BASE_64kb=69760 +alp1600.aarch64:USER_NET=2028 +alp1600.aarch64:USER_NET_64kb=9152 alp1600.i386:INIT_CACHED=42804 alp1600.i386:INIT_CACHED_NET=12916 alp1600.i386:INIT_NET=4748 @@ -38,16 +38,16 @@ alp1600.ppc64:SIZEOFPAGE=64 alp1600.ppc64:USER_BASE=47552 alp1600.ppc64:USER_NET=1536 -alp1600.ppc64le:INIT_CACHED=84352 -alp1600.ppc64le:INIT_CACHED_NET=41728 -alp1600.ppc64le:INIT_NET=10368 -alp1600.ppc64le:KERNEL_BASE=137536 -alp1600.ppc64le:KERNEL_INIT=23424 +alp1600.ppc64le:INIT_CACHED=86016 +alp1600.ppc64le:INIT_CACHED_NET=42240 +alp1600.ppc64le:INIT_NET=10496 +alp1600.ppc64le:KERNEL_BASE=142950 +alp1600.ppc64le:KERNEL_INIT=23872 alp1600.ppc64le:PAGESIZE=65536 -alp1600.ppc64le:PERCPU=768 +alp1600.ppc64le:PERCPU=6221 alp1600.ppc64le:SIZEOFPAGE=64 -alp1600.ppc64le:USER_BASE=69632 -alp1600.ppc64le:USER_NET=10240 +alp1600.ppc64le:USER_BASE=68480 +alp1600.ppc64le:USER_NET=13632 alp1600.riscv64:INIT_CACHED=32504 alp1600.riscv64:INIT_CACHED_NET=11580 alp1600.riscv64:INIT_NET=5320 @@ -58,76 +58,76 @@ alp1600.riscv64:SIZEOFPAGE=64 alp1600.riscv64:USER_BASE=12092 alp1600.riscv64:USER_NET=1928 -alp1600.s390x:INIT_CACHED=36640 -alp1600.s390x:INIT_CACHED_NET=27428 -alp1600.s390x:INIT_NET=9348 -alp1600.s390x:KERNEL_BASE=62292 -alp1600.s390x:KERNEL_INIT=14684 +alp1600.s390x:INIT_CACHED=37144 +alp1600.s390x:INIT_CACHED_NET=27624 +alp1600.s390x:INIT_NET=9444 +alp1600.s390x:KERNEL_BASE=69274 +alp1600.s390x:KERNEL_INIT=14896 alp1600.s390x:PAGESIZE=4096 -alp1600.s390x:PERCPU=216 +alp1600.s390x:PERCPU=2027 alp1600.s390x:SIZEOFPAGE=64 -alp1600.s390x:USER_BASE=24436 -alp1600.s390x:USER_NET=3608 -alp1600.x86_64:INIT_CACHED=41564 -alp1600.x86_64:INIT_CACHED_NET=26664 -alp1600.x86_64:INIT_NET=9728 -alp1600.x86_64:KERNEL_BASE=103840 -alp1600.x86_64:KERNEL_INIT=23352 +alp1600.s390x:USER_BASE=23176 +alp1600.s390x:USER_NET=328 +alp1600.x86_64:INIT_CACHED=42420 +alp1600.x86_64:INIT_CACHED_NET=26876 +alp1600.x86_64:INIT_NET=9812 +alp1600.x86_64:KERNEL_BASE=117940 +alp1600.x86_64:KERNEL_INIT=23720 alp1600.x86_64:PAGESIZE=4096 -alp1600.x86_64:PERCPU=372 +alp1600.x86_64:PERCPU=2144 alp1600.x86_64:SIZEOFPAGE=64 -alp1600.x86_64:USER_BASE=29824 -alp1600.x86_64:USER_NET=2432 -alp1610.aarch64:INIT_CACHED=41904 -alp1610.aarch64:INIT_CACHED_64kb=80256 -alp1610.aarch64:INIT_CACHED_NET=28456 -alp1610.aarch64:INIT_CACHED_NET_64kb=35712 -alp1610.aarch64:INIT_NET=8924 -alp1610.aarch64:INIT_NET_64kb=8896 -alp1610.aarch64:KERNEL_BASE=85204 -alp1610.aarch64:KERNEL_BASE_64kb=147904 -alp1610.aarch64:KERNEL_INIT=25940 -alp1610.aarch64:KERNEL_INIT_64kb=27200 +alp1600.x86_64:USER_BASE=29604 +alp1600.x86_64:USER_NET=1212 +alp1610.aarch64:INIT_CACHED=47712 +alp1610.aarch64:INIT_CACHED_64kb=102784 +alp1610.aarch64:INIT_CACHED_NET=28336 +alp1610.aarch64:INIT_CACHED_NET_64kb=35584 +alp1610.aarch64:INIT_NET=8964 +alp1610.aarch64:INIT_NET_64kb=8960 +alp1610.aarch64:KERNEL_BASE=110728 +alp1610.aarch64:KERNEL_BASE_64kb=152752 +alp1610.aarch64:KERNEL_INIT=30896 +alp1610.aarch64:KERNEL_INIT_64kb=32128 alp1610.aarch64:PAGESIZE=4096 alp1610.aarch64:PAGESIZE_64kb=65536 -alp1610.aarch64:PERCPU=224 -alp1610.aarch64:PERCPU_64kb=896 +alp1610.aarch64:PERCPU=2064 +alp1610.aarch64:PERCPU_64kb=5288 alp1610.aarch64:SIZEOFPAGE=64 alp1610.aarch64:SIZEOFPAGE_64kb=64 -alp1610.aarch64:USER_BASE=22860 -alp1610.aarch64:USER_BASE_64kb=70528 -alp1610.aarch64:USER_NET=2996 -alp1610.aarch64:USER_NET_64kb=13056 -alp1610.ppc64le:INIT_CACHED=85312 -alp1610.ppc64le:INIT_CACHED_NET=42112 -alp1610.ppc64le:INIT_NET=10368 -alp1610.ppc64le:KERNEL_BASE=138688 -alp1610.ppc64le:KERNEL_INIT=23168 +alp1610.aarch64:USER_BASE=23424 +alp1610.aarch64:USER_BASE_64kb=69760 +alp1610.aarch64:USER_NET=2028 +alp1610.aarch64:USER_NET_64kb=9152 +alp1610.ppc64le:INIT_CACHED=86016 +alp1610.ppc64le:INIT_CACHED_NET=42240 +alp1610.ppc64le:INIT_NET=10496 +alp1610.ppc64le:KERNEL_BASE=142950 +alp1610.ppc64le:KERNEL_INIT=23872 alp1610.ppc64le:PAGESIZE=65536 -alp1610.ppc64le:PERCPU=768 +alp1610.ppc64le:PERCPU=6221 alp1610.ppc64le:SIZEOFPAGE=64 -alp1610.ppc64le:USER_BASE=68736 -alp1610.ppc64le:USER_NET=11392 -alp1610.s390x:INIT_CACHED=36640 -alp1610.s390x:INIT_CACHED_NET=27544 -alp1610.s390x:INIT_NET=9388 -alp1610.s390x:KERNEL_BASE=60448 -alp1610.s390x:KERNEL_INIT=14572 +alp1610.ppc64le:USER_BASE=68480 +alp1610.ppc64le:USER_NET=13632 +alp1610.s390x:INIT_CACHED=37144 +alp1610.s390x:INIT_CACHED_NET=27624 +alp1610.s390x:INIT_NET=9444 +alp1610.s390x:KERNEL_BASE=69274 +alp1610.s390x:KERNEL_INIT=14896 alp1610.s390x:PAGESIZE=4096 -alp1610.s390x:PERCPU=216 +alp1610.s390x:PERCPU=2027 alp1610.s390x:SIZEOFPAGE=64 -alp1610.s390x:USER_BASE=24620 -alp1610.s390x:USER_NET=0 -alp1610.x86_64:INIT_CACHED=41376 -alp1610.x86_64:INIT_CACHED_NET=26792 -alp1610.x86_64:INIT_NET=9736 -alp1610.x86_64:KERNEL_BASE=114332 -alp1610.x86_64:KERNEL_INIT=24160 +alp1610.s390x:USER_BASE=23176 +alp1610.s390x:USER_NET=328 +alp1610.x86_64:INIT_CACHED=42420 +alp1610.x86_64:INIT_CACHED_NET=26876 +alp1610.x86_64:INIT_NET=9812 +alp1610.x86_64:KERNEL_BASE=117940 +alp1610.x86_64:KERNEL_INIT=23720 alp1610.x86_64:PAGESIZE=4096 -alp1610.x86_64:PERCPU=372 +alp1610.x86_64:PERCPU=2144 alp1610.x86_64:SIZEOFPAGE=64 -alp1610.x86_64:USER_BASE=30072 -alp1610.x86_64:USER_NET=2016 +alp1610.x86_64:USER_BASE=29604 +alp1610.x86_64:USER_NET=1212 leap150500.aarch64:INIT_CACHED=31912 leap150500.aarch64:INIT_CACHED_NET=10384 leap150500.aarch64:INIT_NET=3424 @@ -258,26 +258,26 @@ leap150700.x86_64:SIZEOFPAGE=64 leap150700.x86_64:USER_BASE=31084 leap150700.x86_64:USER_NET=9260 -leap160000.aarch64:INIT_CACHED=42120 -leap160000.aarch64:INIT_CACHED_64kb=80192 +leap160000.aarch64:INIT_CACHED=47712 +leap160000.aarch64:INIT_CACHED_64kb=102784 leap160000.aarch64:INIT_CACHED_NET=28336 leap160000.aarch64:INIT_CACHED_NET_64kb=35584 -leap160000.aarch64:INIT_NET=8912 -leap160000.aarch64:INIT_NET_64kb=8896 -leap160000.aarch64:KERNEL_BASE=106428 -leap160000.aarch64:KERNEL_BASE_64kb=131456 -leap160000.aarch64:KERNEL_INIT=26240 -leap160000.aarch64:KERNEL_INIT_64kb=27520 +leap160000.aarch64:INIT_NET=8964 +leap160000.aarch64:INIT_NET_64kb=8960 +leap160000.aarch64:KERNEL_BASE=110728 +leap160000.aarch64:KERNEL_BASE_64kb=152752 +leap160000.aarch64:KERNEL_INIT=30896 +leap160000.aarch64:KERNEL_INIT_64kb=32128 leap160000.aarch64:PAGESIZE=4096 leap160000.aarch64:PAGESIZE_64kb=65536 -leap160000.aarch64:PERCPU=224 -leap160000.aarch64:PERCPU_64kb=896 +leap160000.aarch64:PERCPU=2064 +leap160000.aarch64:PERCPU_64kb=5288 leap160000.aarch64:SIZEOFPAGE=64 leap160000.aarch64:SIZEOFPAGE_64kb=64 -leap160000.aarch64:USER_BASE=23568 -leap160000.aarch64:USER_BASE_64kb=68608 -leap160000.aarch64:USER_NET=3444 -leap160000.aarch64:USER_NET_64kb=10304 +leap160000.aarch64:USER_BASE=23424 +leap160000.aarch64:USER_BASE_64kb=69760 +leap160000.aarch64:USER_NET=2028 +leap160000.aarch64:USER_NET_64kb=9152 leap160000.i386:INIT_CACHED=42804 leap160000.i386:INIT_CACHED_NET=12916 leap160000.i386:INIT_NET=4748 @@ -298,16 +298,16 @@ leap160000.ppc64:SIZEOFPAGE=64 leap160000.ppc64:USER_BASE=47552 leap160000.ppc64:USER_NET=1536 -leap160000.ppc64le:INIT_CACHED=84352 -leap160000.ppc64le:INIT_CACHED_NET=41728 -leap160000.ppc64le:INIT_NET=10368 -leap160000.ppc64le:KERNEL_BASE=137536 -leap160000.ppc64le:KERNEL_INIT=23424 +leap160000.ppc64le:INIT_CACHED=86016 +leap160000.ppc64le:INIT_CACHED_NET=42240 +leap160000.ppc64le:INIT_NET=10496 +leap160000.ppc64le:KERNEL_BASE=142950 +leap160000.ppc64le:KERNEL_INIT=23872 leap160000.ppc64le:PAGESIZE=65536 -leap160000.ppc64le:PERCPU=768 +leap160000.ppc64le:PERCPU=6221 leap160000.ppc64le:SIZEOFPAGE=64 -leap160000.ppc64le:USER_BASE=69632 -leap160000.ppc64le:USER_NET=10240 +leap160000.ppc64le:USER_BASE=68480 +leap160000.ppc64le:USER_NET=13632 leap160000.riscv64:INIT_CACHED=32504 leap160000.riscv64:INIT_CACHED_NET=11580 leap160000.riscv64:INIT_NET=5320 @@ -318,26 +318,26 @@ leap160000.riscv64:SIZEOFPAGE=64 leap160000.riscv64:USER_BASE=12092 leap160000.riscv64:USER_NET=1928 -leap160000.s390x:INIT_CACHED=36640 -leap160000.s390x:INIT_CACHED_NET=27428 -leap160000.s390x:INIT_NET=9348 -leap160000.s390x:KERNEL_BASE=62292 -leap160000.s390x:KERNEL_INIT=14684 +leap160000.s390x:INIT_CACHED=37144 +leap160000.s390x:INIT_CACHED_NET=27624 +leap160000.s390x:INIT_NET=9444 +leap160000.s390x:KERNEL_BASE=69274 +leap160000.s390x:KERNEL_INIT=14896 leap160000.s390x:PAGESIZE=4096 -leap160000.s390x:PERCPU=216 +leap160000.s390x:PERCPU=2027 leap160000.s390x:SIZEOFPAGE=64 -leap160000.s390x:USER_BASE=24436 -leap160000.s390x:USER_NET=3608 -leap160000.x86_64:INIT_CACHED=41564 -leap160000.x86_64:INIT_CACHED_NET=26664 -leap160000.x86_64:INIT_NET=9728 -leap160000.x86_64:KERNEL_BASE=103840 -leap160000.x86_64:KERNEL_INIT=23352 +leap160000.s390x:USER_BASE=23176 +leap160000.s390x:USER_NET=328 +leap160000.x86_64:INIT_CACHED=42420 +leap160000.x86_64:INIT_CACHED_NET=26876 +leap160000.x86_64:INIT_NET=9812 +leap160000.x86_64:KERNEL_BASE=117940 +leap160000.x86_64:KERNEL_INIT=23720 leap160000.x86_64:PAGESIZE=4096 -leap160000.x86_64:PERCPU=372 +leap160000.x86_64:PERCPU=2144 leap160000.x86_64:SIZEOFPAGE=64 -leap160000.x86_64:USER_BASE=29824 -leap160000.x86_64:USER_NET=2432 +leap160000.x86_64:USER_BASE=29604 +leap160000.x86_64:USER_NET=1212 sle150500.aarch64:INIT_CACHED=31912 sle150500.aarch64:INIT_CACHED_NET=10384 sle150500.aarch64:INIT_NET=3424 @@ -478,26 +478,26 @@ sle150700.x86_64:SIZEOFPAGE=64 sle150700.x86_64:USER_BASE=33792 sle150700.x86_64:USER_NET=2284 -tumbleweed.aarch64:INIT_CACHED=46444 -tumbleweed.aarch64:INIT_CACHED_64kb=100672 -tumbleweed.aarch64:INIT_CACHED_NET=27928 -tumbleweed.aarch64:INIT_CACHED_NET_64kb=35456 -tumbleweed.aarch64:INIT_NET=8940 +tumbleweed.aarch64:INIT_CACHED=47132 +tumbleweed.aarch64:INIT_CACHED_64kb=101504 +tumbleweed.aarch64:INIT_CACHED_NET=28400 +tumbleweed.aarch64:INIT_CACHED_NET_64kb=35712 +tumbleweed.aarch64:INIT_NET=8964 tumbleweed.aarch64:INIT_NET_64kb=8960 -tumbleweed.aarch64:KERNEL_BASE=99536 -tumbleweed.aarch64:KERNEL_BASE_64kb=143040 -tumbleweed.aarch64:KERNEL_INIT=30140 -tumbleweed.aarch64:KERNEL_INIT_64kb=30848 +tumbleweed.aarch64:KERNEL_BASE=87350 +tumbleweed.aarch64:KERNEL_BASE_64kb=148734 +tumbleweed.aarch64:KERNEL_INIT=30384 +tumbleweed.aarch64:KERNEL_INIT_64kb=31616 tumbleweed.aarch64:PAGESIZE=4096 tumbleweed.aarch64:PAGESIZE_64kb=65536 -tumbleweed.aarch64:PERCPU=224 -tumbleweed.aarch64:PERCPU_64kb=448 +tumbleweed.aarch64:PERCPU=2377 +tumbleweed.aarch64:PERCPU_64kb=5249 tumbleweed.aarch64:SIZEOFPAGE=64 tumbleweed.aarch64:SIZEOFPAGE_64kb=64 -tumbleweed.aarch64:USER_BASE=22272 -tumbleweed.aarch64:USER_BASE_64kb=72576 -tumbleweed.aarch64:USER_NET=2824 -tumbleweed.aarch64:USER_NET_64kb=7616 +tumbleweed.aarch64:USER_BASE=22764 +tumbleweed.aarch64:USER_BASE_64kb=70400 +tumbleweed.aarch64:USER_NET=2424 +tumbleweed.aarch64:USER_NET_64kb=10816 tumbleweed.i386:INIT_CACHED=42804 tumbleweed.i386:INIT_CACHED_NET=12916 tumbleweed.i386:INIT_NET=4748 @@ -518,16 +518,16 @@ tumbleweed.ppc64:SIZEOFPAGE=64 tumbleweed.ppc64:USER_BASE=87872 tumbleweed.ppc64:USER_NET=4160 -tumbleweed.ppc64le:INIT_CACHED=94976 +tumbleweed.ppc64le:INIT_CACHED=85632 tumbleweed.ppc64le:INIT_CACHED_NET=42240 -tumbleweed.ppc64le:INIT_NET=10688 -tumbleweed.ppc64le:KERNEL_BASE=142592 -tumbleweed.ppc64le:KERNEL_INIT=25216 +tumbleweed.ppc64le:INIT_NET=10368 +tumbleweed.ppc64le:KERNEL_BASE=137138 +tumbleweed.ppc64le:KERNEL_INIT=23744 tumbleweed.ppc64le:PAGESIZE=65536 -tumbleweed.ppc64le:PERCPU=448 +tumbleweed.ppc64le:PERCPU=5927 tumbleweed.ppc64le:SIZEOFPAGE=64 -tumbleweed.ppc64le:USER_BASE=70016 -tumbleweed.ppc64le:USER_NET=6528 +tumbleweed.ppc64le:USER_BASE=69120 +tumbleweed.ppc64le:USER_NET=12160 tumbleweed.riscv64:INIT_CACHED=32504 tumbleweed.riscv64:INIT_CACHED_NET=11580 tumbleweed.riscv64:INIT_NET=5320 @@ -538,24 +538,24 @@ tumbleweed.riscv64:SIZEOFPAGE=64 tumbleweed.riscv64:USER_BASE=12092 tumbleweed.riscv64:USER_NET=1928 -tumbleweed.s390x:INIT_CACHED=37036 -tumbleweed.s390x:INIT_CACHED_NET=26700 -tumbleweed.s390x:INIT_NET=9164 -tumbleweed.s390x:KERNEL_BASE=52828 -tumbleweed.s390x:KERNEL_INIT=15144 +tumbleweed.s390x:INIT_CACHED=36852 +tumbleweed.s390x:INIT_CACHED_NET=27580 +tumbleweed.s390x:INIT_NET=9380 +tumbleweed.s390x:KERNEL_BASE=67554 +tumbleweed.s390x:KERNEL_INIT=14780 tumbleweed.s390x:PAGESIZE=4096 -tumbleweed.s390x:PERCPU=220 +tumbleweed.s390x:PERCPU=2411 tumbleweed.s390x:SIZEOFPAGE=64 -tumbleweed.s390x:USER_BASE=10188 -tumbleweed.s390x:USER_NET=4 -tumbleweed.x86_64:INIT_CACHED=45440 -tumbleweed.x86_64:INIT_CACHED_NET=26764 -tumbleweed.x86_64:INIT_NET=9952 -tumbleweed.x86_64:KERNEL_BASE=113956 -tumbleweed.x86_64:KERNEL_INIT=27796 +tumbleweed.s390x:USER_BASE=23004 +tumbleweed.s390x:USER_NET=172 +tumbleweed.x86_64:INIT_CACHED=41804 +tumbleweed.x86_64:INIT_CACHED_NET=26864 +tumbleweed.x86_64:INIT_NET=9732 +tumbleweed.x86_64:KERNEL_BASE=115810 +tumbleweed.x86_64:KERNEL_INIT=23440 tumbleweed.x86_64:PAGESIZE=4096 -tumbleweed.x86_64:PERCPU=344 +tumbleweed.x86_64:PERCPU=2143 tumbleweed.x86_64:SIZEOFPAGE=64 -tumbleweed.x86_64:USER_BASE=33164 -tumbleweed.x86_64:USER_NET=0 +tumbleweed.x86_64:USER_BASE=30540 +tumbleweed.x86_64:USER_NET=3204 ++++++ kdump-2.1.9.tar.xz -> kdump-2.1.10.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdump-2.1.9/NEWS new/kdump-2.1.10/NEWS --- old/kdump-2.1.9/NEWS 2026-04-10 16:58:57.000000000 +0200 +++ new/kdump-2.1.10/NEWS 2026-09-11 19:33:19.000000000 +0200 @@ -1,3 +1,11 @@ +2.1.10 +------ +* calibrate: measure per-cpu requirements +* kdumptool calibrate: take KDUMP_CPUS into account for PPC +* PPC: round up KDUMP_CPUS on SMT systems to nearest threads-per-cpu +* Set default KDUMP_CPUs to 4 (jsc#PED-16732, bsc#1239999) +* add KDUMP_USE_CMA: experimental support for CMA reservation (jsc#PED-14553) + 2.1.9 ----- * fix syntax in sysconfig diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdump-2.1.9/calibrate/kernel.py new/kdump-2.1.10/calibrate/kernel.py --- old/kdump-2.1.9/calibrate/kernel.py 2026-04-10 16:58:57.000000000 +0200 +++ new/kdump-2.1.10/calibrate/kernel.py 2026-09-11 19:33:19.000000000 +0200 @@ -9,10 +9,8 @@ help='print debugging messages on stderr') cmdline = parser.parse_args() -re_memory = re.compile('Memory: (\\d+)K/(\\d+)K available') re_freeing = re.compile('Freeing (.*) memory: (\\d+)K$') -available = 0 freed = 0 unpack = False for line in sys.stdin: @@ -29,13 +27,5 @@ file=sys.stderr) elif 'Trying to unpack rootfs image' in line: unpack = True - else: - match = re_memory.search(line) - if match: - available = int(match[2]) - if cmdline.debug: - print('Memory {}K/{}K'.format(match[1], match[2]), - file=sys.stderr) -print('AVAILABLE={:d}'.format(available)) print('KERNEL_INIT={:d}'.format(freed)) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdump-2.1.9/calibrate/maxrss.py new/kdump-2.1.10/calibrate/maxrss.py --- old/kdump-2.1.9/calibrate/maxrss.py 2026-04-10 16:58:57.000000000 +0200 +++ new/kdump-2.1.10/calibrate/maxrss.py 2026-09-11 19:33:19.000000000 +0200 @@ -16,7 +16,6 @@ memfree = None cached = None -percpu = None pagesize = None sizeofpage = None @@ -57,8 +56,6 @@ memfree = int(value.split()[0]) elif key == 'Cached': cached = int(value.split()[0]) - elif key == 'Percpu': - percpu = int(value.split()[0]) elif category == 'vmcoreinfo': try: @@ -86,10 +83,6 @@ print('Cannot determine Cached', file=sys.stderr) exit(1) -if percpu is None: - print('Cannot determine Percpu', file=sys.stderr) - exit(1) - if pagesize is None: print('Cannot determine page size', file=sys.stderr) exit(1) @@ -107,5 +100,4 @@ print('SIZEOFPAGE={:d}'.format(sizeofpage)) print('INIT_MEMFREE={:d}'.format(memfree)) print('INIT_CACHED={:d}'.format(cached)) -print('PERCPU={:d}'.format(percpu)) print('USER_BASE={:d}'.format(maxrss)) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdump-2.1.9/calibrate/run-qemu.py new/kdump-2.1.10/calibrate/run-qemu.py --- old/kdump-2.1.9/calibrate/run-qemu.py 2026-04-10 16:58:57.000000000 +0200 +++ new/kdump-2.1.10/calibrate/run-qemu.py 2026-09-11 19:33:19.000000000 +0200 @@ -302,9 +302,7 @@ numpages = (params['TOTAL_RAM'] + pagesize_kb - 1) // pagesize_kb memmap_pages = (numpages * results['SIZEOFPAGE'] + pagesize - 1) // pagesize kernel_base -= memmap_pages * pagesize_kb - results['KERNEL_BASE'] = kernel_base - results['PERCPU'] - - results['PERCPU'] = results['PERCPU'] // params['NUMCPUS'] + results['KERNEL_BASE'] = kernel_base return results @@ -390,7 +388,16 @@ install_kdump_init(oldcwd) init_local_dracut(params) + # qemu will be run three times: + # with BASE_CPUS cpus, no network to get base requirements + # with MANY_CPUS cpus, no network, to calculate the extra per-cpu requirements + # with 2 cpus and network, to calculate the extra network requirements + + BASE_CPUS = 2 + MANY_CPUS = 64 + params['NET'] = False + params['NUMCPUS'] = BASE_CPUS initrd = build_initrd(oldcwd, params, 'dummy.conf', "test-initrd") results = run_qemu(oldcwd, params, initrd, elfcorehdr) # verify that the dump completed successfully @@ -401,20 +408,32 @@ if not ret: print("non-network dump failed; calibration failed", file=sys.stderr) exit(1) + + params['NUMCPUS'] = MANY_CPUS + results_many = run_qemu(oldcwd, params, initrd, elfcorehdr) + # we don't need to check the dump result, we're only interested in KERNEL_BASE + if not results_many['KERNEL_BASE']: + print("kernel failed with larger number of cpus; calibration failed", file=sys.stderr) + exit(1) + params['NET'] = True + params['NUMCPUS'] = BASE_CPUS initrd = build_initrd(oldcwd, params, 'dummy-net.conf', "test-initrd-net") os.mkdir('/tmp/netdump') - netresults = run_qemu(oldcwd, params, initrd, elfcorehdr) + results_net = run_qemu(oldcwd, params, initrd, elfcorehdr) if not dump_ok('/tmp/netdump'): print("network dump failed; calibration failed", file=sys.stderr) exit(1) os.chdir(oldcwd) - calc_diff(results, netresults, 'KERNEL_INIT', 'INIT_NET') - calc_diff(results, netresults, 'INIT_CACHED', 'INIT_CACHED_NET') - calc_diff(results, netresults, 'USER_BASE', 'USER_NET') + calc_diff(results, results_net, 'KERNEL_INIT', 'INIT_NET') + calc_diff(results, results_net, 'INIT_CACHED', 'INIT_CACHED_NET') + calc_diff(results, results_net, 'USER_BASE', 'USER_NET') + + results['PERCPU'] = (results_many['KERNEL_BASE'] - results['KERNEL_BASE']) // (MANY_CPUS - BASE_CPUS) + results['KERNEL_BASE'] -= results['PERCPU'] * BASE_CPUS keys = ( 'KERNEL_BASE', @@ -447,9 +466,6 @@ # Total VM memory in KiB: params['TOTAL_RAM'] = 1024 * 1024 -# Number of CPUs for the VM -params['NUMCPUS'] = 2 - # Where kernel messages should go params['MESSAGES_LOG'] = 'messages.log' diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdump-2.1.9/doc/man/kdump.5.txt.in new/kdump-2.1.10/doc/man/kdump.5.txt.in --- old/kdump-2.1.9/doc/man/kdump.5.txt.in 2026-04-10 16:58:57.000000000 +0200 +++ new/kdump-2.1.10/doc/man/kdump.5.txt.in 2026-09-11 19:33:19.000000000 +0200 @@ -102,18 +102,22 @@ ~~~~~~~~~~ This parameter can be used to limit the number of CPUs used by kdump. -The value is passed in the _nr_cpus_ parameter to the kdump / fadump kernel and -in the _--num-threads_ option to *makedumpfile*(8). +The value is passed in the _nr_cpus_ parameter to the kdump / fadump kernel. If the value is zero, all available CPUs are used, i.e. the _nr_cpus_ parameter is not added to the kdump kernel command line and _--num-threads_ is set to the number of CPUs. +On ppc64, when SMT is active, KDUMP_CPUS is rounded up to the nearest +number of threads-per-core. + +On XEN the KDUMP_CPUS is set to 1. + Decreasing the number of CPUs will lower the memory required by kdump, while increasing it can raise memory usage and may cause kdump failure if crashkernel memory is insufficient. -Default is 32. +Default is 4. KDUMP_COMMANDLINE @@ -661,6 +665,29 @@ Default: "" +KDUMP_USE_CMA +~~~~~~~~~~~~~ + +Make _kdumptool commandline_ use the ,cma crashkernel suffix, instructing the +kernel to use CMA for part of the crashkernel reservation. Memory reserved from +the CMA remains available to the production system's user space. More memory can +be used by kdump (making it less likely that kdump fails because not enough +memory has been reserved), while more memory also remains usable for production. + +*KDUMP_USE_CMA is an experimental feature. Kdump may become less reliable +because the DMA transfers configured by the production kernel may end up +corrupting the kdump kernel's memory.* It is intended for systems that can't +afford to sacrifice enough memory for standard crashkernel reservation and +where less reliable and possibly incomplete kdump is preferable to no kdump +at all. + +KDUMP_USE_CMA cannot be used when KDUMP_DUMPLEVEL is configured to dump user space +pages. + +CMA crashkernel reservation is not supported by all architectures. + +Default is "false". + URL FORMAT ---------- diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdump-2.1.9/dracut/kdump-save new/kdump-2.1.10/dracut/kdump-save --- old/kdump-2.1.9/dracut/kdump-save 2026-04-10 16:58:57.000000000 +0200 +++ new/kdump-2.1.10/dracut/kdump-save 2026-09-11 19:33:19.000000000 +0200 @@ -278,7 +278,6 @@ # number of threads THREADS="" CPUS=$(nproc) - [[ ${KDUMP_CPUS} -gt 0 ]] && [[ ${KDUMP_CPUS} -lt ${CPUS} ]] && CPUS=${KDUMP_CPUS} [[ ${KDUMP_DUMPFORMAT} == ELF ]] && CPUS=1 [[ ${CPUS} -ne 1 ]] && THREADS="--num-threads ${CPUS}" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdump-2.1.9/init/load.sh new/kdump-2.1.10/init/load.sh --- old/kdump-2.1.9/init/load.sh 2026-04-10 16:58:57.000000000 +0200 +++ new/kdump-2.1.10/init/load.sh 2026-09-11 19:33:19.000000000 +0200 @@ -101,7 +101,15 @@ commandline=$(echo "$commandline" | remove_from_commandline 'quiet') fi - [[ -e /proc/xen ]] && KDUMP_CPUS=1 # makedumpfile does not support --num-threads on XEN + # KDUMP_CPUS tweaks + # round up to nearest threads-per-core on ppc64/SMT systems + if SMT=$(ppc64_cpu --smt -n 2>/dev/null); then + SMT=${SMT##SMT=} + KDUMP_CPUS=$((KDUMP_CPUS+SMT-1-(KDUMP_CPUS+SMT-1)%SMT)) + fi + # makedumpfile does not support --num-threads on XEN + [[ -e /proc/xen ]] && KDUMP_CPUS=1 + if [ ${KDUMP_CPUS:-1} -ne 0 ] ; then nr_cpus="nr_cpus=${KDUMP_CPUS:-1}" fi @@ -297,6 +305,12 @@ exit 1 } + if [[ $((KDUMP_DUMPLEVEL & 8)) -eq 0 ]] && read < /sys/kernel/kexec_crash_cma_ranges 2>/dev/null; then + echo "KDUMP_DUMPLEVEL must be configured to filter user data when" >&2 + echo "crashkernel CMA reservation is used." >&2 + exit 1 + fi + # check if initrd and the kernel it was built for exist # return 6 if not, which is treated as success by # the kdump-early service diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdump-2.1.9/kdump-read-config.sh new/kdump-2.1.10/kdump-read-config.sh --- old/kdump-2.1.9/kdump-read-config.sh 2026-04-10 16:58:57.000000000 +0200 +++ new/kdump-2.1.10/kdump-read-config.sh 2026-09-11 19:33:19.000000000 +0200 @@ -10,7 +10,7 @@ option string KDUMP_COMMANDLINE "" option string KDUMP_COMMANDLINE_APPEND "" option bool KDUMP_CONTINUE_ON_ERROR true - option int KDUMP_CPUS 32 + option int KDUMP_CPUS 4 option string KDUMP_CRASHKERNEL "auto" option string KDUMP_DUMPFORMAT "compressed" option int KDUMP_DUMPLEVEL 31 @@ -38,6 +38,7 @@ option int KDUMP_VERBOSE 0 option string KEXEC_OPTIONS "" option string MAKEDUMPFILE_OPTIONS "" + option bool KDUMP_USE_CMA false option deprecated KDUMPTOOL_FLAGS "" option deprecated KDUMP_COPY_KERNEL "" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdump-2.1.9/kdumptool/calibrate.cc new/kdump-2.1.10/kdumptool/calibrate.cc --- old/kdump-2.1.9/kdumptool/calibrate.cc 2026-04-10 16:58:57.000000000 +0200 +++ new/kdump-2.1.10/kdumptool/calibrate.cc 2026-09-11 19:33:19.000000000 +0200 @@ -43,6 +43,7 @@ char *kernel_version = NULL; bool m_shrink = false; bool debug = false; +unsigned long cpus = 0; void read_str(std::string &str, const char* path); @@ -68,49 +69,37 @@ // The following macros are defined: // // DEF_RESERVE_KB default reservation size -// CAN_REDUCE_CPUS non-zero if the architecture can reduce kernel -// memory requirements with nr_cpus= -// #if defined(__x86_64__) # define DEF_RESERVE_KB MB(192) -# define CAN_REDUCE_CPUS 1 #elif defined(__i386__) # define DEF_RESERVE_KB MB(192) -# define CAN_REDUCE_CPUS 1 #elif defined(__powerpc64__) # define DEF_RESERVE_KB MB(384) -# define CAN_REDUCE_CPUS 0 #elif defined(__powerpc__) # define DEF_RESERVE_KB MB(192) -# define CAN_REDUCE_CPUS 0 #elif defined(__s390x__) # define DEF_RESERVE_KB MB(192) -# define CAN_REDUCE_CPUS 1 # define align_memmap s390x_align_memmap #elif defined(__s390__) # define DEF_RESERVE_KB MB(192) -# define CAN_REDUCE_CPUS 1 # define align_memmap s390_align_memmap #elif defined(__aarch64__) # define DEF_RESERVE_KB MB(192) -# define CAN_REDUCE_CPUS 1 #elif defined(__arm__) # define DEF_RESERVE_KB MB(192) -# define CAN_REDUCE_CPUS 1 #elif defined(__riscv) # define DEF_RESERVE_KB MB(192) -# define CAN_REDUCE_CPUS 1 #else # error "No default crashkernel reservation for your architecture!" @@ -915,18 +904,7 @@ } // Add memory based on CPU count - unsigned long cpus = 0, percpu; - if (CAN_REDUCE_CPUS) { - cpus = KDUMP_CPUS; - } - if (!cpus) { - unsigned long online = SystemCPU_count("/sys/devices/system/cpu/online"); - unsigned long offline = SystemCPU_count("/sys/devices/system/cpu/offline"); - DEBUG("CPUs online: %lu, offline: %lu", - online, offline); - cpus = online + offline; - } - DEBUG("Total assumed CPUs: %lu", cpus); + unsigned long percpu; percpu = sizes.percpu_kb(); // kernel percpu from calibrate.conf percpu += 50 * 2; // generic ~50k thread footprint (measured) * 2 for safety percpu += 3 * sizes.pagesize() / 1024; // makedumpfile BUF_PARALLEL and BUF_OUT_PARALLEL @@ -1084,6 +1062,8 @@ cout << "MaxLow: 0" << endl; cout << "MinHigh: 0 " << endl; cout << "MaxHigh: 0 " << endl; + cout << "NonCMA: 0" << endl; + cout << "CMA: 0" << endl; return 0; } @@ -1095,9 +1075,19 @@ // Get total RAM size DEBUG("Expected total RAM: %lu KiB", memtotal); + cpus = KDUMP_CPUS; + if (!cpus) { + unsigned long online = SystemCPU_count("/sys/devices/system/cpu/online"); + unsigned long offline = SystemCPU_count("/sys/devices/system/cpu/offline"); + DEBUG("CPUs online: %lu, offline: %lu", + online, offline); + cpus = online + offline; + } + DEBUG("Total assumed CPUs: %lu", cpus); + // Calculate boot requirements unsigned long bootsize = sizes.kernel_base_kb() + - sizes.kernel_init_kb() + sizes.initramfs_kb(); + sizes.kernel_init_kb() + sizes.initramfs_kb() + cpus * sizes.percpu_kb(); if (needsNetwork) bootsize += sizes.kernel_init_net_kb() + sizes.initramfs_net_kb(); DEBUG("Memory needed at boot: %lu KiB", bootsize); @@ -1122,6 +1112,22 @@ unsigned long low, minlow, maxlow; unsigned long high, minhigh, maxhigh; + unsigned long cma, noncma; + + /* simplified generous calculation for KDUMP_USE_CMA case */ + noncma = bootsize; + noncma = noncma * 5 / 4; + noncma += MB(64); + cma = 0; + cma += sizes.initramfs_kb(); + cma += sizes.user_base_kb(); + cma += needsNetwork ? sizes.user_net_kb() : 0; + cma *= 4; // increase 4 times + cma += MB(256); // add 256 MB + cma += cpus * MB(16); // add 16 MB per CPU + cma += memtotal >> 10; // add 1/1024 of total RAM + cma += KDUMP_LUKS_MEMORY * 5 / 4; // add LUKS memory + 25% + cma = shr_round_up(cma, 16) << 16; // round up to nearest 64 MB #if defined(__x86_64__) @@ -1173,6 +1179,8 @@ cout << "MaxLow: " << (maxlow >> 10) << endl; cout << "MinHigh: " << shr_round_up(minhigh, 10) << endl; cout << "MaxHigh: " << (maxhigh >> 10) << endl; + cout << "NonCMA: " << shr_round_up(noncma, 10) << endl; + cout << "CMA: " << shr_round_up(cma, 10) << endl; #if HAVE_FADUMP unsigned long fadump, minfadump, maxfadump; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdump-2.1.9/kdumptool/kdumptool new/kdump-2.1.10/kdumptool/kdumptool --- old/kdump-2.1.9/kdumptool/kdumptool 2026-04-10 16:58:57.000000000 +0200 +++ new/kdump-2.1.10/kdumptool/kdumptool 2026-09-11 19:33:19.000000000 +0200 @@ -116,11 +116,15 @@ CALIBRATE_LOW= CALIBRATE_HIGH= CALIBRATE_FADUMP= + CALIBRATE_NONCMA= + CALIBRATE_CMA= while read -r KEY VALUE; do case "${KEY}" in "Low:") CALIBRATE_LOW=${VALUE};; "High:") CALIBRATE_HIGH=${VALUE};; "Fadump:") CALIBRATE_FADUMP=${VALUE};; + "NonCMA:") CALIBRATE_NONCMA=${VALUE};; + "CMA:") CALIBRATE_CMA=${VALUE};; esac done <<<"$(do_calibrate)" @@ -130,6 +134,13 @@ return 1 fi CRASHKERNEL=("crashkernel=${CALIBRATE_FADUMP}M") + elif ${KDUMP_USE_CMA} && [[ ${CALIBRATE_CMA} -gt 0 ]] && [[ ${CALIBRATE_NONCMA} -gt 0 ]]; then + if [[ $((KDUMP_DUMPLEVEL & 8)) -eq 0 ]]; then + echo "KDUMP_DUMPLEVEL must be configured to filter user data when" >&2 + echo "KDUMP_USE_CMA is used." >&2 + return 1 + fi + CRASHKERNEL=("crashkernel=${CALIBRATE_NONCMA}M" "crashkernel=${CALIBRATE_CMA}M,cma") else if [[ -z ${CALIBRATE_LOW} ]] || [[ -z ${CALIBRATE_HIGH} ]]; then echo "Error parsing calibrate output" >&2 @@ -311,6 +322,15 @@ set -a . /usr/lib/kdump/kdump-read-config.sh +# KDUMP_CPUS tweaks +# round up to nearest threads-per-core on ppc64/SMT systems +if SMT=$(ppc64_cpu --smt -n 2>/dev/null); then + SMT=${SMT##SMT=} + KDUMP_CPUS=$((KDUMP_CPUS+SMT-1-(KDUMP_CPUS+SMT-1)%SMT)) +fi +# makedumpfile does not support --num-threads on XEN +[[ -e /proc/xen ]] && KDUMP_CPUS=1 + case $1 in calibrate) do_calibrate "$@" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdump-2.1.9/packaging/suse/calibrate/README new/kdump-2.1.10/packaging/suse/calibrate/README --- old/kdump-2.1.9/packaging/suse/calibrate/README 2026-04-10 16:58:57.000000000 +0200 +++ new/kdump-2.1.10/packaging/suse/calibrate/README 2026-09-11 19:33:19.000000000 +0200 @@ -29,10 +29,10 @@ One way to do this is to branch the package. In OBS, in the branched projects's "Project Config" tab, enter: + BuildFlags: allowrootforbuild:1 Macros: %_with_calibrate 1 :Macros - BuildFlags: allowrootforbuild:1 The package build will run qemu and generate a fresh calibrate.conf file, not using the pre-built values from calibrate.conf.all diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdump-2.1.9/packaging/suse/kdump.spec new/kdump-2.1.10/packaging/suse/kdump.spec --- old/kdump-2.1.9/packaging/suse/kdump.spec 2026-04-10 16:58:57.000000000 +0200 +++ new/kdump-2.1.10/packaging/suse/kdump.spec 2026-09-11 19:33:19.000000000 +0200 @@ -73,10 +73,7 @@ BuildRequires: pkgconfig(systemd) BuildRequires: pkgconfig(udev) #!BuildIgnore: fop -# dependencies needed when with_calibrate is turned on -# OBS does not work with conditional buildrequires -# so turn them on unconditionally -# %if %{with calibrate} +%if %{with calibrate} BuildRequires: %qemu BuildRequires: udev BuildRequires: systemd @@ -102,8 +99,7 @@ BuildRequires: qemu-ipxe BuildRequires: qemu-vgabios %endif -# end of with_calibrate dependencies -# %endif +%endif Requires: /usr/bin/sed Requires: dracut >= 047 Requires: kexec-tools diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kdump-2.1.9/sysconfig.kdump.in new/kdump-2.1.10/sysconfig.kdump.in --- old/kdump-2.1.9/sysconfig.kdump.in 2026-04-10 16:58:57.000000000 +0200 +++ new/kdump-2.1.10/sysconfig.kdump.in 2026-09-11 19:33:19.000000000 +0200 @@ -64,7 +64,7 @@ # # See also: kdump(5). # -KDUMP_CPUS=32 +KDUMP_CPUS=4 ## Type: string ## Default: "" @@ -428,3 +428,30 @@ # # See also: kdump(5) KDUMP_SSH_IDENTITY="" + +## Type: boolean ## Default: "false" ## ServiceRestart: kdump +# +# Experimental! +# +# Make _kdumptool commandline_ use the ,cma crashkernel suffix, instructing the +# kernel to use CMA for part of the crashkernel reservation. Memory reserved +# from the CMA remains available to the production system's user space. More +# memory can be used by kdump (making it less likely that kdump fails because +# not enough memory has been reserved), while more memory also remains usable +# for production. +# +# KDUMP_USE_CMA is an experimental feature. Kdump may become less reliable +# because the DMA transfers configured by the production kernel may end up +# corrupting the kdump kernel's memory. It is intended for systems that can't +# afford to sacrifice enough memory for standard crashkernel reservation and +# where less reliable and possibly incomplete kdump is preferable to no kdump +# at all. +# +# KDUMP_USE_CMA cannot be used when KDUMP_DUMPLEVEL is configured to dump user space +# pages. +# +# CMA crashkernel reservation is not supported by all architectures. +# +# See also: kdump(5) + +KDUMP_USE_CMA="false"
