]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
kdump, documentation: describe craskernel CMA reservation
authorJiri Bohac <jbohac@suse.cz>
Thu, 12 Jun 2025 10:17:39 +0000 (12:17 +0200)
committerAndrew Morton <akpm@linux-foundation.org>
Sun, 20 Jul 2025 02:08:23 +0000 (19:08 -0700)
Describe the new crashkernel ",cma" suffix in Documentation/

Link: https://lkml.kernel.org/r/aEqpQwUy6gqSiUkV@dwarf.suse.cz
Signed-off-by: Jiri Bohac <jbohac@suse.cz>
Cc: Baoquan He <bhe@redhat.com>
Cc: Dave Young <dyoung@redhat.com>
Cc: David Hildenbrand <david@redhat.com>
Cc: Donald Dutile <ddutile@redhat.com>
Cc: Michal Hocko <mhocko@suse.cz>
Cc: Philipp Rudo <prudo@redhat.com>
Cc: Pingfan Liu <piliu@redhat.com>
Cc: Tao Liu <ltao@redhat.com>
Cc: Vivek Goyal <vgoyal@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Documentation/admin-guide/kdump/kdump.rst
Documentation/admin-guide/kernel-parameters.txt

index 20fabdf6567e1df130c78a3350c2ad42b31c45f4..9c6cd52f69cf7706dc6d6488255770b51d847d26 100644 (file)
@@ -311,6 +311,27 @@ crashkernel syntax
 
             crashkernel=0,low
 
+4) crashkernel=size,cma
+
+       Reserve additional crash kernel memory from CMA. This reservation is
+       usable by the first system's userspace memory and kernel movable
+       allocations (memory balloon, zswap). Pages allocated from this memory
+       range will not be included in the vmcore so this should not be used if
+       dumping of userspace memory is intended and it has to be expected that
+       some movable kernel pages may be missing from the dump.
+
+       A standard crashkernel reservation, as described above, is still needed
+       to hold the crash kernel and initrd.
+
+       This option increases the risk of a kdump failure: DMA transfers
+       configured by the first kernel may end up corrupting the second
+       kernel's memory.
+
+       This reservation method 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.
+
 Boot into System Kernel
 -----------------------
 1) Update the boot loader (such as grub, yaboot, or lilo) configuration
index f1f2c0874da9ddfc95058c464fdf5dabaf0de713..ac4a239b9388c38adb21f3466741d1037ab445a7 100644 (file)
                        0: to disable low allocation.
                        It will be ignored when crashkernel=X,high is not used
                        or memory reserved is below 4G.
+       crashkernel=size[KMG],cma
+                       [KNL, X86] Reserve additional crash kernel memory from
+                       CMA. This reservation is usable by the first system's
+                       userspace memory and kernel movable allocations (memory
+                       balloon, zswap). Pages allocated from this memory range
+                       will not be included in the vmcore so this should not
+                       be used if dumping of userspace memory is intended and
+                       it has to be expected that some movable kernel pages
+                       may be missing from the dump.
+
+                       A standard crashkernel reservation, as described above,
+                       is still needed to hold the crash kernel and initrd.
+
+                       This option increases the risk of a kdump failure: DMA
+                       transfers configured by the first kernel may end up
+                       corrupting the second kernel's memory.
+
+                       This reservation method 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.
 
        cryptomgr.notests
                        [KNL] Disable crypto self-tests