All of lore.kernel.org
 help / color / mirror / Atom feed
From: Eric DeVolder <eric.devolder@oracle.com>
To: linux-kernel@vger.kernel.org, x86@kernel.org,
	kexec@lists.infradead.org, ebiederm@xmission.com,
	dyoung@redhat.com, bhe@redhat.com, vgoyal@redhat.com
Cc: tglx@linutronix.de, mingo@redhat.com, bp@alien8.de,
	dave.hansen@linux.intel.com, hpa@zytor.com,
	nramas@linux.microsoft.com, thomas.lendacky@amd.com,
	robh@kernel.org, efault@gmx.de, rppt@kernel.org,
	konrad.wilk@oracle.com, boris.ostrovsky@oracle.com,
	eric.devolder@oracle.com
Subject: [RFC v1 2/8] crash hp: Introduce CRASH_HOTPLUG configuration options
Date: Thu, 18 Nov 2021 12:49:42 -0500	[thread overview]
Message-ID: <20211118174948.37435-3-eric.devolder@oracle.com> (raw)
In-Reply-To: <20211118174948.37435-1-eric.devolder@oracle.com>

The bulk of the support for CPU and memory hotplug support for
crash is controlled by the CRASH_HOTPLUG configuration option,
introduced by this patch.

The CRASH_HOTPLUG_ELFCOREHDR_SZ related configuration option is
also introduced with this patch.

Signed-off-by: Eric DeVolder <eric.devolder@oracle.com>
---
 arch/x86/Kconfig | 26 ++++++++++++++++++++++++++
 1 file changed, 26 insertions(+)

diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
index 95dd1ee01546..5feb829adb60 100644
--- a/arch/x86/Kconfig
+++ b/arch/x86/Kconfig
@@ -2046,6 +2046,32 @@ config CRASH_DUMP
 	  (CONFIG_RELOCATABLE=y).
 	  For more details see Documentation/admin-guide/kdump/kdump.rst
 
+config CRASH_HOTPLUG
+	bool "kernel updates of crash elfcorehdr"
+	depends on CRASH_DUMP && (HOTPLUG_CPU || MEMORY_HOTPLUG) && KEXEC_FILE
+	help
+	  Enable the kernel to update the crash elfcorehdr (which contains
+	  the list of CPUs and memory regions) directly when hot plug/unplug
+	  of CPUs or memory. Otherwise userspace must monitor these hot
+	  plug/unplug change notifications via udev in order to
+	  unload-then-reload the crash kernel so that the list of CPUs and
+	  memory regions is kept up-to-date. Note that the udev CPU and
+	  memory change notifications still occur (however, userspace is not
+	  required to monitor for crash dump purposes).
+
+config CRASH_HOTPLUG_ELFCOREHDR_SZ
+	depends on CRASH_HOTPLUG
+	int
+	default 131072
+	help
+	  Specify the maximum size of the elfcorehdr buffer/segment.
+	  The 128KiB default is sized so that it can accommodate 2048
+	  Elf64_Phdr, where each Phdr represents either a CPU or a
+	  region of memory.
+	  For example, this size can accommodate hotplugging a machine
+	  with up to 1024 CPUs and up to 1024 memory regions (e.g. 1TiB
+	  with 1024 1GiB memory DIMMs).
+
 config KEXEC_JUMP
 	bool "kexec jump"
 	depends on KEXEC && HIBERNATION
-- 
2.27.0


WARNING: multiple messages have this Message-ID (diff)
From: Eric DeVolder <eric.devolder@oracle.com>
To: linux-kernel@vger.kernel.org, x86@kernel.org,
	kexec@lists.infradead.org, ebiederm@xmission.com,
	dyoung@redhat.com, bhe@redhat.com, vgoyal@redhat.com
Cc: tglx@linutronix.de, mingo@redhat.com, bp@alien8.de,
	dave.hansen@linux.intel.com, hpa@zytor.com,
	nramas@linux.microsoft.com, thomas.lendacky@amd.com,
	robh@kernel.org, efault@gmx.de, rppt@kernel.org,
	konrad.wilk@oracle.com, boris.ostrovsky@oracle.com,
	eric.devolder@oracle.com
Subject: [RFC v1 2/8] crash hp: Introduce CRASH_HOTPLUG configuration options
Date: Thu, 18 Nov 2021 12:49:42 -0500	[thread overview]
Message-ID: <20211118174948.37435-3-eric.devolder@oracle.com> (raw)
In-Reply-To: <20211118174948.37435-1-eric.devolder@oracle.com>

The bulk of the support for CPU and memory hotplug support for
crash is controlled by the CRASH_HOTPLUG configuration option,
introduced by this patch.

The CRASH_HOTPLUG_ELFCOREHDR_SZ related configuration option is
also introduced with this patch.

Signed-off-by: Eric DeVolder <eric.devolder@oracle.com>
---
 arch/x86/Kconfig | 26 ++++++++++++++++++++++++++
 1 file changed, 26 insertions(+)

diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
index 95dd1ee01546..5feb829adb60 100644
--- a/arch/x86/Kconfig
+++ b/arch/x86/Kconfig
@@ -2046,6 +2046,32 @@ config CRASH_DUMP
 	  (CONFIG_RELOCATABLE=y).
 	  For more details see Documentation/admin-guide/kdump/kdump.rst
 
+config CRASH_HOTPLUG
+	bool "kernel updates of crash elfcorehdr"
+	depends on CRASH_DUMP && (HOTPLUG_CPU || MEMORY_HOTPLUG) && KEXEC_FILE
+	help
+	  Enable the kernel to update the crash elfcorehdr (which contains
+	  the list of CPUs and memory regions) directly when hot plug/unplug
+	  of CPUs or memory. Otherwise userspace must monitor these hot
+	  plug/unplug change notifications via udev in order to
+	  unload-then-reload the crash kernel so that the list of CPUs and
+	  memory regions is kept up-to-date. Note that the udev CPU and
+	  memory change notifications still occur (however, userspace is not
+	  required to monitor for crash dump purposes).
+
+config CRASH_HOTPLUG_ELFCOREHDR_SZ
+	depends on CRASH_HOTPLUG
+	int
+	default 131072
+	help
+	  Specify the maximum size of the elfcorehdr buffer/segment.
+	  The 128KiB default is sized so that it can accommodate 2048
+	  Elf64_Phdr, where each Phdr represents either a CPU or a
+	  region of memory.
+	  For example, this size can accommodate hotplugging a machine
+	  with up to 1024 CPUs and up to 1024 memory regions (e.g. 1TiB
+	  with 1024 1GiB memory DIMMs).
+
 config KEXEC_JUMP
 	bool "kexec jump"
 	depends on KEXEC && HIBERNATION
-- 
2.27.0


_______________________________________________
kexec mailing list
kexec@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/kexec

  parent reply	other threads:[~2021-11-18 17:51 UTC|newest]

Thread overview: 34+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-11-18 17:49 [RFC v1 0/8] RFC v1: Kernel handling of CPU and memory hot un/plug for crash Eric DeVolder
2021-11-18 17:49 ` Eric DeVolder
2021-11-18 17:49 ` [RFC v1 1/8] crash: fix minor typo/bug in debug message Eric DeVolder
2021-11-18 17:49   ` Eric DeVolder
2021-11-24  1:17   ` Baoquan He
2021-11-24  1:17     ` Baoquan He
2021-11-18 17:49 ` Eric DeVolder [this message]
2021-11-18 17:49   ` [RFC v1 2/8] crash hp: Introduce CRASH_HOTPLUG configuration options Eric DeVolder
2021-11-18 17:49 ` [RFC v1 3/8] crash hp: definitions and prototypes for crash hotplug support Eric DeVolder
2021-11-18 17:49   ` Eric DeVolder
2021-11-18 17:49 ` [RFC v1 4/8] crash hp: generic crash hotplug support infrastructure Eric DeVolder
2021-11-18 17:49   ` Eric DeVolder
2021-11-18 17:49 ` [RFC v1 5/8] crash hp: kexec_file changes for use by crash hotplug handler Eric DeVolder
2021-11-18 17:49   ` Eric DeVolder
2021-11-18 17:49 ` [RFC v1 6/8] crash hp: Add x86 crash hotplug state items to kimage Eric DeVolder
2021-11-18 17:49   ` Eric DeVolder
2021-11-18 17:49 ` [RFC v1 7/8] crash hp: Add x86 crash hotplug support for kexec_file_load Eric DeVolder
2021-11-18 17:49   ` Eric DeVolder
2021-11-18 17:49 ` [RFC v1 8/8] crash hp: Add x86 crash hotplug support for bzImage Eric DeVolder
2021-11-18 17:49   ` Eric DeVolder
2021-11-19  2:37 ` [RFC v1 0/8] RFC v1: Kernel handling of CPU and memory hot un/plug for crash Baoquan He
2021-11-19  2:37   ` Baoquan He
2021-11-24  9:02 ` Baoquan He
2021-11-24  9:02   ` Baoquan He
2021-11-29 19:42   ` Eric DeVolder
2021-11-29 19:42     ` Eric DeVolder
2021-12-01 12:59     ` Baoquan He
2021-12-01 12:59       ` Baoquan He
2021-12-07 20:04       ` Eric DeVolder
2021-12-07 20:04         ` Eric DeVolder
2021-11-29  8:45 ` Sourabh Jain
2021-11-29  8:45   ` Sourabh Jain
2021-11-29 20:00   ` Eric DeVolder
2021-11-29 20:00     ` Eric DeVolder

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20211118174948.37435-3-eric.devolder@oracle.com \
    --to=eric.devolder@oracle.com \
    --cc=bhe@redhat.com \
    --cc=boris.ostrovsky@oracle.com \
    --cc=bp@alien8.de \
    --cc=dave.hansen@linux.intel.com \
    --cc=dyoung@redhat.com \
    --cc=ebiederm@xmission.com \
    --cc=efault@gmx.de \
    --cc=hpa@zytor.com \
    --cc=kexec@lists.infradead.org \
    --cc=konrad.wilk@oracle.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@redhat.com \
    --cc=nramas@linux.microsoft.com \
    --cc=robh@kernel.org \
    --cc=rppt@kernel.org \
    --cc=tglx@linutronix.de \
    --cc=thomas.lendacky@amd.com \
    --cc=vgoyal@redhat.com \
    --cc=x86@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.