From: Eric DeVolder <eric.devolder@oracle.com>
To: Kees Cook <keescook@chromium.org>
Cc: dalias@libc.org, linux-ia64@vger.kernel.org,
linux-sh@vger.kernel.org, peterz@infradead.org,
catalin.marinas@arm.com, linus.walleij@linaro.org,
dave.hansen@linux.intel.com, linux-mips@vger.kernel.org,
James.Bottomley@hansenpartnership.com, hpa@zytor.com,
linux-riscv@lists.infradead.org, will@kernel.org,
kernel@xen0n.name, tsi@tuyoix.net, linux-s390@vger.kernel.org,
agordeev@linux.ibm.com, rmk+kernel@armlinux.org.uk,
paulmck@kernel.org, ysato@users.sourceforge.jp, deller@gmx.de,
chenhuacai@kernel.org, linux@armlinux.org.uk,
paul.walmsley@sifive.com, mingo@redhat.com, geert@linux-m68k.org,
hbathini@linux.ibm.com, samitolvanen@google.com,
ojeda@kernel.org, juerg.haefliger@canonical.com,
borntraeger@linux.ibm.com, frederic@kernel.org, arnd@arndb.de,
mhiramat@kernel.org, ardb@kernel.org, thunder.leizhen@huawei.com,
aou@eecs.berkeley.edu, ziy@nvidia.com, gor@linux.ibm.com,
anshuman.khandual@arm.com, hca@linux.ibm.com, xin3.li@intel.com,
npiggin@gmail.com, konrad.wilk@oracle.com,
linux-m68k@lists.linux-m68k.org, bp@alien8.de,
loongarch@lists.linux.dev, glaubitz@physik.fu-berlin.de,
tglx@linutronix.de, linux-arm-kernel@lists.infradead.org,
boris.ostrovsky@oracle.com, tsbogend@alpha.franken.de,
sebastian.reichel@collabora.com, bhe@redhat.com,
linux-parisc@vger.kernel.org, gregkh@linuxfoundation.org,
kirill.shutemov@linux.intel.com, ndesaulniers@google.com,
linux-kernel@vger.kernel.org, sourabhjain@linux.ibm.com,
palmer@dabbelt.com, svens@linux.ibm.com, tj@kernel.org,
akpm@linux-foundation.org, linuxppc-dev@lists.ozlabs.org,
masahiroy@kernel.org, rppt@kernel.org
Subject: Re: [PATCH v1 00/21] refactor Kconfig to consolidate KEXEC and CRASH options
Date: Wed, 14 Jun 2023 07:01:04 -0500 [thread overview]
Message-ID: <8a97f096-2bdc-0298-a1c5-8d48dbf94179@oracle.com> (raw)
In-Reply-To: <202306131314.EFA558B7@keescook>
On 6/13/23 15:21, Kees Cook wrote:
> On Mon, Jun 12, 2023 at 01:27:52PM -0400, Eric DeVolder wrote:
>> The Kconfig is refactored to consolidate KEXEC and CRASH options from
>> various arch/<arch>/Kconfig files into new file kernel/Kconfig.kexec.
>
> This looks very nice!
>
Thank you Kees!
>> [...]
>> - The boolean ARCH_HAS_<option> in effect allows the arch to determine
>> when the feature is allowed. Archs which don't have the feature
>> simply do not provide the corresponding ARCH_HAS_<option>.
>> For each arch, where there previously were KEXEC and/or CRASH
>> options, these have been replaced with the corresponding boolean
>> ARCH_HAS_<option>, and an appropriate def_bool statement.
>>
>> For example, if the arch supports KEXEC_FILE, then the
>> ARCH_HAS_KEXEC_FILE simply has a 'def_bool y'. This permits the
>> KEXEC_FILE option to be available.
>>
>> If the arch has a 'depends on' statement in its original coding
>> of the option, then that expression becomes part of the def_bool
>> expression. For example, arm64 had:
>>
>> config KEXEC
>> depends on PM_SLEEP_SMP
>>
>> and in this solution, this converts to:
>>
>> config ARCH_HAS_KEXEC
>> def_bool PM_SLEEP_SMP
>>
>>
>> - In order to account for the differences in the config coding for
>> the three common options, the ARCH_SUPPORTS_<option> is used.
>> This options has a 'depends on <option>' statement to couple it
>> to the main option, and from there can insert the differences
>> from the common option and the arch original coding of that option.
>>
>> For example, a few archs enable CRYPTO and CRYTPO_SHA256 for
>> KEXEC_FILE. These require a ARCH_SUPPORTS_KEXEC_FILE and
>> 'select CRYPTO' and 'select CRYPTO_SHA256' statements.
>
> Naming nit: "HAS" and "SUPPORTS" feel very similar, and looking at
> existing configs, "ARCH_SUPPORTS_..." is already used for doing this
> kind of bare "bool" management. e.g. see ARCH_SUPPORTS_INT128
>
> It looks like you need to split "depends" and "select" so the options
> can be chosen separately from the "selectable" configs.
>
> How about naming this ARCH_SELECTS_<option>, since that's what it's
> there for?
>
I'm OK with this. Let's see if others agree?
Thank you!
eric
> -Kees
>
next prev parent reply other threads:[~2023-06-14 23:51 UTC|newest]
Thread overview: 30+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-06-12 17:27 [PATCH v1 00/21] refactor Kconfig to consolidate KEXEC and CRASH options Eric DeVolder
2023-06-12 17:27 ` [PATCH v1 01/21] kexec: consolidate kexec and crash options into kernel/Kconfig.kexec Eric DeVolder
2023-06-14 1:19 ` Leizhen (ThunderTown)
2023-06-14 11:54 ` Eric DeVolder
2023-06-14 15:24 ` Alexander Gordeev
2023-06-14 22:11 ` Eric DeVolder
2023-06-12 17:27 ` [PATCH v1 02/21] x86/kexec: refactor for kernel/Kconfig.kexec Eric DeVolder
2023-06-12 17:27 ` [PATCH v1 03/21] arm/kexec: " Eric DeVolder
2023-06-12 17:27 ` [PATCH v1 04/21] ia64/kexec: " Eric DeVolder
2023-06-12 17:27 ` [PATCH v1 05/21] arm64/kexec: " Eric DeVolder
2023-06-14 1:22 ` Leizhen (ThunderTown)
2023-06-14 11:57 ` Eric DeVolder
2023-06-12 17:27 ` [PATCH v1 06/21] loongarch/kexec: " Eric DeVolder
2023-06-12 17:27 ` [PATCH v1 07/21] m68k/kexec: " Eric DeVolder
2023-06-12 19:38 ` Geert Uytterhoeven
2023-06-14 11:58 ` Eric DeVolder
2023-06-12 17:28 ` [PATCH v1 08/21] mips/kexec: " Eric DeVolder
2023-06-12 17:28 ` [PATCH v1 09/21] parisc/kexec: " Eric DeVolder
2023-06-12 17:28 ` [PATCH v1 10/21] powerpc/kexec: " Eric DeVolder
2023-06-15 3:34 ` Michael Ellerman
2023-06-15 16:17 ` Eric DeVolder
2023-06-15 16:19 ` Segher Boessenkool
2023-06-12 17:28 ` [PATCH v1 11/21] riscv/kexec: " Eric DeVolder
2023-06-12 17:28 ` [PATCH v1 12/21] s390/kexec: " Eric DeVolder
2023-06-12 17:28 ` [PATCH v1 13/21] sh/kexec: " Eric DeVolder
2023-06-12 17:32 ` [PATCH v1 00/21] refactor Kconfig to consolidate KEXEC and CRASH options Eric DeVolder
2023-06-13 20:21 ` Kees Cook
2023-06-14 12:01 ` Eric DeVolder [this message]
2023-06-15 3:26 ` Michael Ellerman
2023-06-15 16:18 ` 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=8a97f096-2bdc-0298-a1c5-8d48dbf94179@oracle.com \
--to=eric.devolder@oracle.com \
--cc=James.Bottomley@hansenpartnership.com \
--cc=agordeev@linux.ibm.com \
--cc=akpm@linux-foundation.org \
--cc=anshuman.khandual@arm.com \
--cc=aou@eecs.berkeley.edu \
--cc=ardb@kernel.org \
--cc=arnd@arndb.de \
--cc=bhe@redhat.com \
--cc=boris.ostrovsky@oracle.com \
--cc=borntraeger@linux.ibm.com \
--cc=bp@alien8.de \
--cc=catalin.marinas@arm.com \
--cc=chenhuacai@kernel.org \
--cc=dalias@libc.org \
--cc=dave.hansen@linux.intel.com \
--cc=deller@gmx.de \
--cc=frederic@kernel.org \
--cc=geert@linux-m68k.org \
--cc=glaubitz@physik.fu-berlin.de \
--cc=gor@linux.ibm.com \
--cc=gregkh@linuxfoundation.org \
--cc=hbathini@linux.ibm.com \
--cc=hca@linux.ibm.com \
--cc=hpa@zytor.com \
--cc=juerg.haefliger@canonical.com \
--cc=keescook@chromium.org \
--cc=kernel@xen0n.name \
--cc=kirill.shutemov@linux.intel.com \
--cc=konrad.wilk@oracle.com \
--cc=linus.walleij@linaro.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-ia64@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-m68k@lists.linux-m68k.org \
--cc=linux-mips@vger.kernel.org \
--cc=linux-parisc@vger.kernel.org \
--cc=linux-riscv@lists.infradead.org \
--cc=linux-s390@vger.kernel.org \
--cc=linux-sh@vger.kernel.org \
--cc=linux@armlinux.org.uk \
--cc=linuxppc-dev@lists.ozlabs.org \
--cc=loongarch@lists.linux.dev \
--cc=masahiroy@kernel.org \
--cc=mhiramat@kernel.org \
--cc=mingo@redhat.com \
--cc=ndesaulniers@google.com \
--cc=npiggin@gmail.com \
--cc=ojeda@kernel.org \
--cc=palmer@dabbelt.com \
--cc=paul.walmsley@sifive.com \
--cc=paulmck@kernel.org \
--cc=peterz@infradead.org \
--cc=rmk+kernel@armlinux.org.uk \
--cc=rppt@kernel.org \
--cc=samitolvanen@google.com \
--cc=sebastian.reichel@collabora.com \
--cc=sourabhjain@linux.ibm.com \
--cc=svens@linux.ibm.com \
--cc=tglx@linutronix.de \
--cc=thunder.leizhen@huawei.com \
--cc=tj@kernel.org \
--cc=tsbogend@alpha.franken.de \
--cc=tsi@tuyoix.net \
--cc=will@kernel.org \
--cc=xin3.li@intel.com \
--cc=ysato@users.sourceforge.jp \
--cc=ziy@nvidia.com \
/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).