What:		/sys/kernel/kexec/*
Date:		Nov 2025
Contact:	kexec@lists.infradead.org
Description:
		The /sys/kernel/kexec/* directory contains sysfs files
		that provide information about the configuration status
		of kexec and kdump.

What:		/sys/kernel/kexec/loaded
Date:		Nov 2025
Contact:	kexec@lists.infradead.org
Description:	read only
		Indicates whether a new kernel image has been loaded
		into memory using the kexec system call. It shows 1 if
		a kexec image is present and ready to boot, or 0 if none
		is loaded.
User:		kexec tools, kdump service

What:		/sys/kernel/kexec/crash_loaded
Date:		Nov 2025
Contact:	kexec@lists.infradead.org
Description:	read only
		Indicates whether a crash (kdump) kernel is currently
		loaded into memory. It shows 1 if a crash kernel has been
		successfully loaded for panic handling, or 0 if no crash
		kernel is present.
User:		Kexec tools, Kdump service

What:		/sys/kernel/kexec/crash_size
Date:		Nov 2025
Contact:	kexec@lists.infradead.org
Description:	read/write
		Shows the amount of memory reserved for loading the crash
		(kdump) kernel. It reports the size, in bytes, of the
		crash kernel area defined by the crashkernel= parameter.
		This interface also allows reducing the crashkernel
		reservation by writing a smaller value, and the reclaimed
		space is added back to the system RAM.
User:		Kdump service

What:		/sys/kernel/kexec/crash_elfcorehdr_size
Date:		Nov 2025
Contact:	kexec@lists.infradead.org
Description:	read only
		Indicates the preferred size of the memory buffer for the
		ELF core header used by the crash (kdump) kernel. It defines
		how much space is needed to hold metadata about the crashed
		system, including CPU and memory information. This information
		is used by the user space utility kexec to support updating the
		in-kernel kdump image during hotplug operations.
User:		Kexec tools

What:		/sys/kernel/kexec/crash_cma_ranges
Date:		Nov 2025
Contact:	kexec@lists.infradead.org
Description:	read only
		Provides information about the memory ranges reserved from
		the Contiguous Memory Allocator (CMA) area that are allocated
		to the crash (kdump) kernel. It lists the start and end physical
		addresses of CMA regions assigned for crashkernel use.
User:		kdump service
