public inbox for linuxppc-dev@ozlabs.org 
 help / color / mirror / Atom feed
From: Eric DeVolder <eric.devolder@oracle•com>
To: linux@armlinux•org.uk, catalin.marinas@arm•com, will@kernel•org,
	chenhuacai@kernel•org, geert@linux-m68k•org,
	tsbogend@alpha•franken.de, James.Bottomley@HansenPartnership•com,
	deller@gmx•de, ysato@users•sourceforge.jp, dalias@libc•org,
	glaubitz@physik•fu-berlin.de, tglx@linutronix•de,
	mingo@redhat•com, bp@alien8•de, dave.hansen@linux•intel.com,
	x86@kernel•org, linux-kernel@vger•kernel.org,
	linux-arm-kernel@lists•infradead.org, linux-ia64@vger•kernel.org,
	loongarch@lists•linux.dev, linux-m68k@lists•linux-m68k.org,
	linux-mips@vger•kernel.org, linux-parisc@vger•kernel.org,
	linuxppc-dev@lists•ozlabs.org, linux-riscv@lists•infradead.org,
	linux-s390@vger•kernel.org, linux-sh@vger•kernel.org
Cc: peterz@infradead•org, linus.walleij@linaro•org,
	thunder.leizhen@huawei•com, hpa@zytor•com, kernel@xen0n•name,
	eric.devolder@oracle•com, ardb@kernel•org, tsi@tuyoix•net,
	agordeev@linux•ibm.com, paulmck@kernel•org, bhe@redhat•com,
	masahiroy@kernel•org, konrad.wilk@oracle•com,
	sebastian.reichel@collabora•com, samitolvanen@google•com,
	ojeda@kernel•org, juerg.haefliger@canonical•com,
	borntraeger@linux•ibm.com, frederic@kernel•org, arnd@arndb•de,
	mhiramat@kernel•org, aou@eecs•berkeley.edu,
	keescook@chromium•org, gor@linux•ibm.com,
	anshuman.khandual@arm•com, hca@linux•ibm.com, xin3.li@intel•com,
	npiggin@gmail•com, rmk+kernel@armlinux•org.uk,
	paul.walmsley@sifive•com, boris.ostrovsky@oracle•com,
	ziy@nvidia•com, hbathini@linux•ibm.com,
	gregkh@linuxfoundation•org, kirill.shutemov@linux•intel.com,
	ndesaulniers@google•com, sourabhjain@linux•ibm.com,
	palmer@dabbelt•com, svens@linux•ibm.com, tj@kernel•org,
	akpm@linux-foundation•org, rppt@kernel•org
Subject: [PATCH v6 10/14] powerpc/kexec: refactor for kernel/Kconfig.kexec
Date: Wed, 12 Jul 2023 12:15:41 -0400	[thread overview]
Message-ID: <20230712161545.87870-11-eric.devolder@oracle.com> (raw)
In-Reply-To: <20230712161545.87870-1-eric.devolder@oracle.com>

The kexec and crash kernel options are provided in the common
kernel/Kconfig.kexec. Utilize the common options and provide
the ARCH_SUPPORTS_ and ARCH_SELECTS_ entries to recreate the
equivalent set of KEXEC and CRASH options.

Signed-off-by: Eric DeVolder <eric.devolder@oracle•com>
Reviewed-by: Sourabh Jain <sourabhjain@linux•ibm.com>
---
 arch/powerpc/Kconfig | 55 ++++++++++++++------------------------------
 1 file changed, 17 insertions(+), 38 deletions(-)

diff --git a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig
index 0b1172cbeccb..1695a71777f0 100644
--- a/arch/powerpc/Kconfig
+++ b/arch/powerpc/Kconfig
@@ -589,41 +589,21 @@ config PPC64_SUPPORTS_MEMORY_FAILURE
 	default "y" if PPC_POWERNV
 	select ARCH_SUPPORTS_MEMORY_FAILURE
 
-config KEXEC
-	bool "kexec system call"
-	depends on PPC_BOOK3S || PPC_E500 || (44x && !SMP)
-	select KEXEC_CORE
-	help
-	  kexec is a system call that implements the ability to shutdown your
-	  current kernel, and to start another kernel.  It is like a reboot
-	  but it is independent of the system firmware.   And like a reboot
-	  you can start any kernel with it, not just Linux.
-
-	  The name comes from the similarity to the exec system call.
-
-	  It is an ongoing process to be certain the hardware in a machine
-	  is properly shutdown, so do not be surprised if this code does not
-	  initially work for you.  As of this writing the exact hardware
-	  interface is strongly in flux, so no good recommendation can be
-	  made.
-
-config KEXEC_FILE
-	bool "kexec file based system call"
-	select KEXEC_CORE
-	select HAVE_IMA_KEXEC if IMA
-	select KEXEC_ELF
-	depends on PPC64
-	depends on CRYPTO=y
-	depends on CRYPTO_SHA256=y
-	help
-	  This is a new version of the kexec system call. This call is
-	  file based and takes in file descriptors as system call arguments
-	  for kernel and initramfs as opposed to a list of segments as is the
-	  case for the older kexec call.
+config ARCH_SUPPORTS_KEXEC
+	def_bool PPC_BOOK3S || PPC_E500 || (44x && !SMP)
+
+config ARCH_SUPPORTS_KEXEC_FILE
+	def_bool PPC64 && CRYPTO=y && CRYPTO_SHA256=y
 
 config ARCH_HAS_KEXEC_PURGATORY
 	def_bool KEXEC_FILE
 
+config ARCH_SELECTS_KEXEC_FILE
+	def_bool y
+	depends on KEXEC_FILE
+	select KEXEC_ELF
+	select HAVE_IMA_KEXEC if IMA
+
 config PPC64_BIG_ENDIAN_ELF_ABI_V2
 	# Option is available to BFD, but LLD does not support ELFv1 so this is
 	# always true there.
@@ -683,14 +663,13 @@ config RELOCATABLE_TEST
 	  loaded at, which tends to be non-zero and therefore test the
 	  relocation code.
 
-config CRASH_DUMP
-	bool "Build a dump capture kernel"
-	depends on PPC64 || PPC_BOOK3S_32 || PPC_85xx || (44x && !SMP)
+config ARCH_SUPPORTS_CRASH_DUMP
+	def_bool PPC64 || PPC_BOOK3S_32 || PPC_85xx || (44x && !SMP)
+
+config ARCH_SELECTS_CRASH_DUMP
+	def_bool y
+	depends on CRASH_DUMP
 	select RELOCATABLE if PPC64 || 44x || PPC_85xx
-	help
-	  Build a kernel suitable for use as a dump capture kernel.
-	  The same kernel binary can be used as production kernel and dump
-	  capture kernel.
 
 config FA_DUMP
 	bool "Firmware-assisted dump"
-- 
2.31.1


  parent reply	other threads:[~2023-07-12 22:35 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-07-12 16:15 [PATCH v6 00/14] refactor Kconfig to consolidate KEXEC and CRASH options Eric DeVolder
2023-07-12 16:15 ` [PATCH v6 01/14] kexec: consolidate kexec and crash options into kernel/Kconfig.kexec Eric DeVolder
2023-07-12 16:15 ` [PATCH v6 02/14] x86/kexec: refactor for kernel/Kconfig.kexec Eric DeVolder
2023-07-13 11:13   ` Leizhen (ThunderTown)
2023-08-22  6:32     ` Michal Suchánek
2023-07-12 16:15 ` [PATCH v6 03/14] arm/kexec: " Eric DeVolder
2023-07-12 16:15 ` [PATCH v6 04/14] ia64/kexec: " Eric DeVolder
2023-07-12 16:15 ` [PATCH v6 05/14] arm64/kexec: " Eric DeVolder
2023-07-12 16:15 ` [PATCH v6 06/14] loongarch/kexec: " Eric DeVolder
2023-07-12 16:15 ` [PATCH v6 07/14] m68k/kexec: " Eric DeVolder
2023-07-12 16:15 ` [PATCH v6 08/14] mips/kexec: " Eric DeVolder
2023-07-12 16:15 ` [PATCH v6 09/14] parisc/kexec: " Eric DeVolder
2023-07-12 16:15 ` Eric DeVolder [this message]
2023-07-12 16:15 ` [PATCH v6 11/14] riscv/kexec: " Eric DeVolder
2023-07-12 16:15 ` [PATCH v6 12/14] s390/kexec: " Eric DeVolder
2023-07-12 16:15 ` [PATCH v6 13/14] sh/kexec: " Eric DeVolder
2023-07-12 16:15 ` [PATCH v6 14/14] kexec: rename ARCH_HAS_KEXEC_PURGATORY 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=20230712161545.87870-11-eric.devolder@oracle.com \
    --to=eric.devolder@oracle$(echo .)com \
    --cc=James.Bottomley@HansenPartnership$(echo .)com \
    --cc=agordeev@linux$(echo .)ibm.com \
    --cc=akpm@linux-foundation$(echo .)org \
    --cc=anshuman.khandual@arm$(echo .)com \
    --cc=aou@eecs$(echo .)berkeley.edu \
    --cc=ardb@kernel$(echo .)org \
    --cc=arnd@arndb$(echo .)de \
    --cc=bhe@redhat$(echo .)com \
    --cc=boris.ostrovsky@oracle$(echo .)com \
    --cc=borntraeger@linux$(echo .)ibm.com \
    --cc=bp@alien8$(echo .)de \
    --cc=catalin.marinas@arm$(echo .)com \
    --cc=chenhuacai@kernel$(echo .)org \
    --cc=dalias@libc$(echo .)org \
    --cc=dave.hansen@linux$(echo .)intel.com \
    --cc=deller@gmx$(echo .)de \
    --cc=frederic@kernel$(echo .)org \
    --cc=geert@linux-m68k$(echo .)org \
    --cc=glaubitz@physik$(echo .)fu-berlin.de \
    --cc=gor@linux$(echo .)ibm.com \
    --cc=gregkh@linuxfoundation$(echo .)org \
    --cc=hbathini@linux$(echo .)ibm.com \
    --cc=hca@linux$(echo .)ibm.com \
    --cc=hpa@zytor$(echo .)com \
    --cc=juerg.haefliger@canonical$(echo .)com \
    --cc=keescook@chromium$(echo .)org \
    --cc=kernel@xen0n$(echo .)name \
    --cc=kirill.shutemov@linux$(echo .)intel.com \
    --cc=konrad.wilk@oracle$(echo .)com \
    --cc=linus.walleij@linaro$(echo .)org \
    --cc=linux-arm-kernel@lists$(echo .)infradead.org \
    --cc=linux-ia64@vger$(echo .)kernel.org \
    --cc=linux-kernel@vger$(echo .)kernel.org \
    --cc=linux-m68k@lists$(echo .)linux-m68k.org \
    --cc=linux-mips@vger$(echo .)kernel.org \
    --cc=linux-parisc@vger$(echo .)kernel.org \
    --cc=linux-riscv@lists$(echo .)infradead.org \
    --cc=linux-s390@vger$(echo .)kernel.org \
    --cc=linux-sh@vger$(echo .)kernel.org \
    --cc=linux@armlinux$(echo .)org.uk \
    --cc=linuxppc-dev@lists$(echo .)ozlabs.org \
    --cc=loongarch@lists$(echo .)linux.dev \
    --cc=masahiroy@kernel$(echo .)org \
    --cc=mhiramat@kernel$(echo .)org \
    --cc=mingo@redhat$(echo .)com \
    --cc=ndesaulniers@google$(echo .)com \
    --cc=npiggin@gmail$(echo .)com \
    --cc=ojeda@kernel$(echo .)org \
    --cc=palmer@dabbelt$(echo .)com \
    --cc=paul.walmsley@sifive$(echo .)com \
    --cc=paulmck@kernel$(echo .)org \
    --cc=peterz@infradead$(echo .)org \
    --cc=rmk+kernel@armlinux$(echo .)org.uk \
    --cc=rppt@kernel$(echo .)org \
    --cc=samitolvanen@google$(echo .)com \
    --cc=sebastian.reichel@collabora$(echo .)com \
    --cc=sourabhjain@linux$(echo .)ibm.com \
    --cc=svens@linux$(echo .)ibm.com \
    --cc=tglx@linutronix$(echo .)de \
    --cc=thunder.leizhen@huawei$(echo .)com \
    --cc=tj@kernel$(echo .)org \
    --cc=tsbogend@alpha$(echo .)franken.de \
    --cc=tsi@tuyoix$(echo .)net \
    --cc=will@kernel$(echo .)org \
    --cc=x86@kernel$(echo .)org \
    --cc=xin3.li@intel$(echo .)com \
    --cc=ysato@users$(echo .)sourceforge.jp \
    --cc=ziy@nvidia$(echo .)com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html
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