mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
synced 2024-12-28 16:52:18 +00:00
361469d853
Let's implement the get_device_ram() vmcore callback, so architectures that select NEED_PROC_VMCORE_NEED_DEVICE_RAM, like s390 soon, can include that memory in a crash dump. Merge ranges, and process ranges that might contain a mixture of plugged and unplugged, to reduce the total number of ranges. Link: https://lkml.kernel.org/r/20241204125444.1734652-12-david@redhat.com Signed-off-by: David Hildenbrand <david@redhat.com> Cc: Alexander Gordeev <agordeev@linux.ibm.com> Cc: Baoquan He <bhe@redhat.com> Cc: Christian Borntraeger <borntraeger@linux.ibm.com> Cc: Claudio Imbrenda <imbrenda@linux.ibm.com> Cc: Cornelia Huck <cohuck@redhat.com> Cc: Dave Young <dyoung@redhat.com> Cc: Eric Farman <farman@linux.ibm.com> Cc: Eugenio Pérez <eperezma@redhat.com> Cc: Heiko Carstens <hca@linux.ibm.com> Cc: Janosch Frank <frankja@linux.ibm.com> Cc: Jason Wang <jasowang@redhat.com> Cc: Michael S. Tsirkin <mst@redhat.com> Cc: Sven Schnelle <svens@linux.ibm.com> Cc: Thomas Huth <thuth@redhat.com> Cc: Vasily Gorbik <gor@linux.ibm.com> Cc: Vivek Goyal <vgoyal@redhat.com> Cc: Xuan Zhuo <xuanzhuo@linux.alibaba.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
130 lines
4.8 KiB
Plaintext
130 lines
4.8 KiB
Plaintext
# SPDX-License-Identifier: GPL-2.0-only
|
|
config PROC_FS
|
|
bool "/proc file system support" if EXPERT
|
|
default y
|
|
help
|
|
This is a virtual file system providing information about the status
|
|
of the system. "Virtual" means that it doesn't take up any space on
|
|
your hard disk: the files are created on the fly by the kernel when
|
|
you try to access them. Also, you cannot read the files with older
|
|
version of the program less: you need to use more or cat.
|
|
|
|
It's totally cool; for example, "cat /proc/interrupts" gives
|
|
information about what the different IRQs are used for at the moment
|
|
(there is a small number of Interrupt ReQuest lines in your computer
|
|
that are used by the attached devices to gain the CPU's attention --
|
|
often a source of trouble if two devices are mistakenly configured
|
|
to use the same IRQ). The program procinfo to display some
|
|
information about your system gathered from the /proc file system.
|
|
|
|
Before you can use the /proc file system, it has to be mounted,
|
|
meaning it has to be given a location in the directory hierarchy.
|
|
That location should be /proc. A command such as "mount -t proc proc
|
|
/proc" or the equivalent line in /etc/fstab does the job.
|
|
|
|
The /proc file system is explained in the file
|
|
<file:Documentation/filesystems/proc.rst> and on the proc(5) manpage
|
|
("man 5 proc").
|
|
|
|
This option will enlarge your kernel by about 67 KB. Several
|
|
programs depend on this, so everyone should say Y here.
|
|
|
|
config PROC_KCORE
|
|
bool "/proc/kcore support" if !ARM
|
|
depends on PROC_FS && MMU
|
|
select VMCORE_INFO
|
|
help
|
|
Provides a virtual ELF core file of the live kernel. This can
|
|
be read with gdb and other ELF tools. No modifications can be
|
|
made using this mechanism.
|
|
|
|
config PROC_VMCORE
|
|
bool "/proc/vmcore support"
|
|
depends on PROC_FS && CRASH_DUMP
|
|
default y
|
|
help
|
|
Exports the dump image of crashed kernel in ELF format.
|
|
|
|
config PROC_VMCORE_DEVICE_DUMP
|
|
bool "Device Hardware/Firmware Log Collection"
|
|
depends on PROC_VMCORE
|
|
default n
|
|
help
|
|
After kernel panic, device drivers can collect the device
|
|
specific snapshot of their hardware or firmware before the
|
|
underlying devices are initialized in crash recovery kernel.
|
|
Note that the device driver must be present in the crash
|
|
recovery kernel's initramfs to collect its underlying device
|
|
snapshot.
|
|
|
|
If you say Y here, the collected device dumps will be added
|
|
as ELF notes to /proc/vmcore. You can still disable device
|
|
dump using the kernel command line option 'novmcoredd'.
|
|
|
|
config NEED_PROC_VMCORE_DEVICE_RAM
|
|
bool
|
|
|
|
config PROC_VMCORE_DEVICE_RAM
|
|
def_bool y
|
|
depends on PROC_VMCORE && NEED_PROC_VMCORE_DEVICE_RAM
|
|
depends on VIRTIO_MEM
|
|
help
|
|
If the elfcore hdr is allocated and prepared by the dump kernel
|
|
("2nd kernel") instead of the crashed kernel, RAM provided by memory
|
|
devices such as virtio-mem will not be included in the dump
|
|
image, because only the device driver can properly detect them.
|
|
|
|
With this config enabled, these RAM ranges will be queried from the
|
|
device drivers once the device gets probed, so they can be included
|
|
in the crash dump.
|
|
|
|
Relevant architectures should select NEED_PROC_VMCORE_DEVICE_RAM.
|
|
|
|
config PROC_SYSCTL
|
|
bool "Sysctl support (/proc/sys)" if EXPERT
|
|
depends on PROC_FS
|
|
select SYSCTL
|
|
default y
|
|
help
|
|
The sysctl interface provides a means of dynamically changing
|
|
certain kernel parameters and variables on the fly without requiring
|
|
a recompile of the kernel or reboot of the system. The primary
|
|
interface is through /proc/sys. If you say Y here a tree of
|
|
modifiable sysctl entries will be generated beneath the
|
|
/proc/sys directory. They are explained in the files
|
|
in <file:Documentation/admin-guide/sysctl/>. Note that enabling this
|
|
option will enlarge the kernel by at least 8 KB.
|
|
|
|
As it is generally a good thing, you should say Y here unless
|
|
building a kernel for install/rescue disks or your system is very
|
|
limited in memory.
|
|
|
|
config PROC_PAGE_MONITOR
|
|
default y
|
|
depends on PROC_FS && MMU
|
|
bool "Enable /proc page monitoring" if EXPERT
|
|
help
|
|
Various /proc files exist to monitor process memory utilization:
|
|
/proc/pid/smaps, /proc/pid/clear_refs, /proc/pid/pagemap,
|
|
/proc/kpagecount, and /proc/kpageflags. Disabling these
|
|
interfaces will reduce the size of the kernel by approximately 4kb.
|
|
|
|
config PROC_CHILDREN
|
|
bool "Include /proc/<pid>/task/<tid>/children file"
|
|
depends on PROC_FS
|
|
default n
|
|
help
|
|
Provides a fast way to retrieve first level children pids of a task. See
|
|
<file:Documentation/filesystems/proc.rst> for more information.
|
|
|
|
Say Y if you are running any user-space software which takes benefit from
|
|
this interface. For example, rkt is such a piece of software.
|
|
|
|
config PROC_PID_ARCH_STATUS
|
|
def_bool n
|
|
depends on PROC_FS
|
|
|
|
config PROC_CPU_RESCTRL
|
|
def_bool n
|
|
depends on PROC_FS
|