Re: [PATCH v2 02/13] x86/kexec: refactor for kernel/Kconfig.kexec

Eric DeVolder <[email protected]>
Newsgroups gmane.linux.ports.riscv,gmane.linux.kernel,gmane.linux.ports.arm.kernel,gmane.linux.ports.ia64,gmane.linux.ports.mips,gmane.linux.ports.parisc,gmane.linux.ports.ppc64.devel,gmane.linux.ports.sh.devel
Message-ID <[email protected]>

On 6/20/23 03:21, Baoquan He wrote:
> Hi Eric,
> 
> On 06/19/23 at 10:57am, Eric DeVolder wrote:
> ......
>> +config ARCH_SUPPORTS_KEXEC
>> +	def_bool y
>>   
>> -config ARCH_HAS_KEXEC_PURGATORY
>> -	def_bool KEXEC_FILE
>> +config ARCH_SUPPORTS_KEXEC_FILE
>> +	def_bool X86_64 && CRYPTO && CRYPTO_SHA256
> ......
>> +config ARCH_SELECTS_KEXEC_FILE
>> +	def_bool y
>>   	depends on KEXEC_FILE
>> -	help
> 
> I am a little confused about this ARCH_SELECTS_XX adding. Wondering what
> limits us defining the ARCH_SUPPORTS_KEXEC_FILE like below? I have limited
> knowledge about Kconfig, please correct me if I am wrong. Thanks in
> advance.
> 
>   +config ARCH_SUPPORTS_KEXEC_FILE
>   +	def_bool y
>    	depends on KEXEC_FILE
>    	depends on X86_64 && CRYPTO && CRYPTO_SHA256
> 

For the ARCH_SUPPORTS_ options, I chose to list the dependencies on the def_bool line to show that 
it took all those conditions to result in True.
However, as you point out, using a def_bool y and then listing them as 'depends on' works as well.
Probably would have resulted in fewer changes to the Kconfig file.
Either way is ok (the 'depends on KEXEC_FILE' is erroneous in your example).
eric


>> -
>> -	  This option makes the kexec_file_load() syscall check for a valid
>> -	  signature of the kernel image.  The image can still be loaded without
>> -	  a valid signature unless you also enable KEXEC_SIG_FORCE, though if
>> -	  there's a signature that we can check, then it must be valid.
>> -
>> -	  In addition to this option, you need to enable signature
>> -	  verification for the corresponding kernel image type being
>> -	  loaded in order for this to work.
>> -
>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.