linuxppc-dev.lists.ozlabs.org archive mirror
 help / color / mirror / Atom feed
From: Sourabh Jain <sourabhjain@linux.ibm.com>
To: linuxppc-dev@ozlabs.org, mpe@ellerman.id.au
Cc: eric.devolder@oracle.com, bhe@redhat.com,
	mahesh@linux.vnet.ibm.com, kexec@lists.infradead.org,
	ldufour@linux.ibm.com, hbathini@linux.ibm.com
Subject: [PATCH v9 2/6] powerpc/crash: introduce a new config option CRASH_HOTPLUG
Date: Sun, 12 Mar 2023 23:41:50 +0530	[thread overview]
Message-ID: <20230312181154.278900-3-sourabhjain@linux.ibm.com> (raw)
In-Reply-To: <20230312181154.278900-1-sourabhjain@linux.ibm.com>

Due to CPU/Memory hotplug events the system resources changes. A similar
change should reflect in the loaded kdump kernel image that describes
the state of the CPU and memory of the running kernel.

If the kdump kernel image is not updated after the CPU or Memory hotplug
events and it tries to collect the dump with the stale system resource
data this might lead to dump collection failure or an inaccurate dump
collection.

The current method to keep the kdump kernel up to date is by triggering
reload (i.e unload and load) the entire kdump kernel image whenever a
CPU or Memory hotplug event is observed by udev in the userspace.
Reloading the complete kdump kernel image is an expensive task. It can
be easily avoided by doing the in-kernel updates to specific kdump
kernel image components which are responsible for describing CPU and
Memory resources of the running kernel to the kdump kernel.

The kernel changes related to in-kernel update to the kdump kernel image
on CPU/Memory hotplug events are kept under the CRASH_HOTPLUG config
option.

Later in the series, a powerpc crash hotplug handler is introduced to
update the kdump kernel image on CPU/Memory hotplug events. This arch
specific handler is trigger from a generic crash handler that registers
with the CPU and memory notifiers.

The CRASH_HOTPLUG config option is enabled by default.

Signed-off-by: Sourabh Jain <sourabhjain@linux.ibm.com>
---
 arch/powerpc/Kconfig | 12 ++++++++++++
 1 file changed, 12 insertions(+)

diff --git a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig
index a6c4407d3ec83..2f45b3f5175cb 100644
--- a/arch/powerpc/Kconfig
+++ b/arch/powerpc/Kconfig
@@ -681,6 +681,18 @@ config CRASH_DUMP
 	  The same kernel binary can be used as production kernel and dump
 	  capture kernel.
 
+config CRASH_HOTPLUG
+	bool "Update crash capture system on CPU/Memory hotplug event"
+	default y
+	depends on CRASH_DUMP && (HOTPLUG_CPU || MEMORY_HOTPLUG)
+	help
+	  In kernel update to relevant kexec segments due to change
+	  in the system configuration, rather reloading all the kexec
+	  segments again from userspace by monitoring CPU/Memory
+	  hotplug events in the userspace using udev.
+
+	  If unsure, say N.
+
 config FA_DUMP
 	bool "Firmware-assisted dump"
 	depends on PPC64 && (PPC_RTAS || PPC_POWERNV)
-- 
2.39.1


  parent reply	other threads:[~2023-03-12 18:14 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-03-12 18:11 [PATCH v9 0/6] PowerPC: in kernel handling of CPU hotplug events for crash kernel Sourabh Jain
2023-03-12 18:11 ` [PATCH v9 1/6] powerpc/kexec: turn some static helper functions public Sourabh Jain
2023-03-13 16:18   ` Laurent Dufour
2023-03-14  3:41     ` Sourabh Jain
2023-03-12 18:11 ` Sourabh Jain [this message]
2023-03-13 15:46   ` [PATCH v9 2/6] powerpc/crash: introduce a new config option CRASH_HOTPLUG Eric DeVolder
2023-03-14  5:17     ` Sourabh Jain
2023-03-12 18:11 ` [PATCH v9 3/6] powerpc/crash: add a new member to the kimage_arch struct Sourabh Jain
2023-03-13 16:25   ` Laurent Dufour
2023-03-14  5:01     ` Sourabh Jain
2023-03-12 18:11 ` [PATCH v9 4/6] powerpc/crash: add crash CPU hotplug support Sourabh Jain
2023-03-12 18:11 ` [PATCH v9 5/6] crash: forward memory_notify args to arch crash hotplug handler Sourabh Jain
2023-03-12 18:11 ` [PATCH v9 6/6] powerpc/kexec: add crash memory hotplug support Sourabh Jain
2023-03-13 15:42 ` [PATCH v9 0/6] PowerPC: in kernel handling of CPU hotplug events for crash kernel Eric DeVolder
2023-03-14  3:38   ` Sourabh Jain

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=20230312181154.278900-3-sourabhjain@linux.ibm.com \
    --to=sourabhjain@linux.ibm.com \
    --cc=bhe@redhat.com \
    --cc=eric.devolder@oracle.com \
    --cc=hbathini@linux.ibm.com \
    --cc=kexec@lists.infradead.org \
    --cc=ldufour@linux.ibm.com \
    --cc=linuxppc-dev@ozlabs.org \
    --cc=mahesh@linux.vnet.ibm.com \
    --cc=mpe@ellerman.id.au \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).