From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 2FF0BC001DF for ; Fri, 7 Jul 2023 20:12:16 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232713AbjGGUMP (ORCPT ); Fri, 7 Jul 2023 16:12:15 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:43028 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232666AbjGGUMN (ORCPT ); Fri, 7 Jul 2023 16:12:13 -0400 Received: from dfw.source.kernel.org (dfw.source.kernel.org [IPv6:2604:1380:4641:c500::1]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 0726E1FF0 for ; Fri, 7 Jul 2023 13:12:10 -0700 (PDT) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 911C161A71 for ; Fri, 7 Jul 2023 20:12:09 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id E6496C433C8; Fri, 7 Jul 2023 20:12:08 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linux-foundation.org; s=korg; t=1688760729; bh=wMULDsottGT5bXbZuh5IK9zJFsBJG7s9MMlUdnbPa4Y=; h=Date:To:From:Subject:From; b=g5/wPu18tWdF0NX5rrHtWb+EcQY+jXt6p3/n532RjX0gqvHlCsgiyIRa3dWnsNJeF KuCWq0jeKgdBQR+jLWJdqfuW4lRqYVPI3PvuXyt4NRiy2MaehxGmRap1Sb2gUrRpaS fB5qBzdO4/N+T27IML7LsQWwdep8tr8y9lQajVKo= Date: Fri, 07 Jul 2023 13:12:08 -0700 To: mm-commits@vger.kernel.org, tsbogend@alpha.franken.de, sourabhjain@linux.ibm.com, glaubitz@physik.fu-berlin.de, geert@linux-m68k.org, agordeev@linux.ibm.com, eric.devolder@oracle.com, akpm@linux-foundation.org From: Andrew Morton Subject: + riscv-kexec-refactor-for-kernel-kconfigkexec.patch added to mm-nonmm-unstable branch Message-Id: <20230707201208.E6496C433C8@smtp.kernel.org> Precedence: bulk Reply-To: linux-kernel@vger.kernel.org List-ID: X-Mailing-List: mm-commits@vger.kernel.org The patch titled Subject: riscv/kexec: refactor for kernel/Kconfig.kexec has been added to the -mm mm-nonmm-unstable branch. Its filename is riscv-kexec-refactor-for-kernel-kconfigkexec.patch This patch will shortly appear at https://git.kernel.org/pub/scm/linux/kernel/git/akpm/25-new.git/tree/patches/riscv-kexec-refactor-for-kernel-kconfigkexec.patch This patch will later appear in the mm-nonmm-unstable branch at git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm Before you just go and hit "reply", please: a) Consider who else should be cc'ed b) Prefer to cc a suitable mailing list as well c) Ideally: find the original patch on the mailing list and do a reply-to-all to that, adding suitable additional cc's *** Remember to use Documentation/process/submit-checklist.rst when testing your code *** The -mm tree is included into linux-next via the mm-everything branch at git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm and is updated there every 2-3 working days ------------------------------------------------------ From: Eric DeVolder Subject: riscv/kexec: refactor for kernel/Kconfig.kexec Date: Thu, 6 Jul 2023 18:20:25 -0400 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. Link: https://lkml.kernel.org/r/20230706222027.189117-12-eric.devolder@oracle.com Signed-off-by: Eric DeVolder Cc: Alexander Gordeev Cc: Geert Uytterhoeven Cc: John Paul Adrian Glaubitz Cc: Sourabh Jain Cc: Thomas Bogendoerfer Signed-off-by: Andrew Morton --- arch/riscv/Kconfig | 48 +++++++++++++------------------------------ 1 file changed, 15 insertions(+), 33 deletions(-) --- a/arch/riscv/Kconfig~riscv-kexec-refactor-for-kernel-kconfigkexec +++ a/arch/riscv/Kconfig @@ -647,48 +647,30 @@ config RISCV_BOOT_SPINWAIT If unsure what to do here, say N. -config KEXEC - bool "Kexec system call" - depends on MMU +config ARCH_SUPPORTS_KEXEC + def_bool MMU + +config ARCH_SELECTS_KEXEC + def_bool y + depends on KEXEC select HOTPLUG_CPU if 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. - -config KEXEC_FILE - bool "kexec file based systmem call" - depends on 64BIT && MMU + +config ARCH_SUPPORTS_KEXEC_FILE + def_bool 64BIT && MMU + +config ARCH_SELECTS_KEXEC_FILE + def_bool y + depends on KEXEC_FILE select HAVE_IMA_KEXEC if IMA - select KEXEC_CORE select KEXEC_ELF - help - This is new version of kexec system call. This system call is - file based and takes file descriptors as system call argument - for kernel and initramfs as opposed to list of segments as - accepted by previous system call. - - If you don't know what to do here, say Y. config ARCH_HAS_KEXEC_PURGATORY def_bool KEXEC_FILE depends on CRYPTO=y depends on CRYPTO_SHA256=y -config CRASH_DUMP - bool "Build kdump crash kernel" - help - Generate crash dump after being started by kexec. This should - be normally only set in special crash dump kernels which are - loaded in the main kernel with kexec-tools into a specially - reserved region and then later executed after a crash by - kdump/kexec. - - For more details see Documentation/admin-guide/kdump/kdump.rst +config ARCH_SUPPORTS_CRASH_DUMP + def_bool y config COMPAT bool "Kernel support for 32-bit U-mode" _ Patches currently in -mm which might be from eric.devolder@oracle.com are kexec-consolidate-kexec-and-crash-options-into-kernel-kconfigkexec.patch x86-kexec-refactor-for-kernel-kconfigkexec.patch arm-kexec-refactor-for-kernel-kconfigkexec.patch ia64-kexec-refactor-for-kernel-kconfigkexec.patch arm64-kexec-refactor-for-kernel-kconfigkexec.patch loongarch-kexec-refactor-for-kernel-kconfigkexec.patch m68k-kexec-refactor-for-kernel-kconfigkexec.patch mips-kexec-refactor-for-kernel-kconfigkexec.patch parisc-kexec-refactor-for-kernel-kconfigkexec.patch powerpc-kexec-refactor-for-kernel-kconfigkexec.patch riscv-kexec-refactor-for-kernel-kconfigkexec.patch s390-kexec-refactor-for-kernel-kconfigkexec.patch sh-kexec-refactor-for-kernel-kconfigkexec.patch