[Linux-kernel-mentees] [PATCH RFC] kconfig: use interpreters to invoke scripts

Ujjwal Kumar ujjwalkumar0501 at gmail.com
Fri Oct 2 07:10:46 UTC 2020


On 02/10/20 9:20 am, Lukas Bulwahn wrote:
> 
> 
> On Fri, 2 Oct 2020, Ujjwal Kumar wrote:
> 
>> We cannot rely on execute bits to be set on files in the repository.
>> The build script should use the explicit interpreter when invoking any 
>> script from the repository.
>>
>> Link: https://lore.kernel.org/lkml/20200830174409.c24c3f67addcce0cea9a9d4c@linux-foundation.org/
>> Link: https://lore.kernel.org/lkml/202008271102.FEB906C88@keescook/
>>
>> Suggested-by: Andrew Morton <akpm at linux-foundation.org>
>> Suggested-by: Kees Cook <keescook at chromium.org>
>> Suggested-by: Lukas Bulwahn <lukas.bulwahn at gmail.com>
>> Signed-off-by: Ujjwal Kumar <ujjwalkumar0501 at gmail.com>
> 
> 
> Ujjwal, you have nicely split the patches. I suggest you send out this 
> patch and the patch "kbuild: use interpreters to incoke scripts" together 
> as one patch series.
> 
> You just need to write a cover letter and explain there which steps you 
> did to find this being wrong before and what you did to test that it is 
> now corrected.
> 
> Also, can you please share on this list to whom/which lists you would send 
> this patch series?Running 'get_maintainer.pl' script I get the following list.

kconfig: use interpreters to invoke scripts-

Nathan Chancellor <natechancellor at gmail.com>
Nick Desaulniers <ndesaulniers at google.com>
Masahiro Yamada <masahiroy at kernel.org>
"Steven Rostedt (VMware)" <rostedt at goodmis.org>
Masami Hiramatsu <mhiramat at kernel.org>
Daniel Borkmann <daniel at iogearbox.net>
Andrew Morton <akpm at linux-foundation.org>
Krzysztof Kozlowski <krzk at kernel.org>
Valentin Schneider <valentin.schneider at arm.com>
Nick Terrell <terrelln at fb.com>
"Eric W. Biederman" <ebiederm at xmission.com>
Johannes Weiner <hannes at cmpxchg.org>
linux-kernel at vger.kernel.org
clang-built-linux at googlegroups.com


kbuild: use interpreters to invoke scripts-

Masahiro Yamada <masahiroy at kernel.org>
Michal Marek <michal.lkml at markovi.net>
Catalin Marinas <catalin.marinas at arm.com>
Will Deacon <will at kernel.org>
Tony Luck <tony.luck at intel.com>
Fenghua Yu <fenghua.yu at intel.com>
Nick Hu <nickhu at andestech.com>
Greentime Hu <green.hu at gmail.com>
Vincent Chen <deanbo422 at gmail.com>
Vincenzo Frascino <vincenzo.frascino at arm.com>
Kees Cook <keescook at chromium.org>
Nick Desaulniers <ndesaulniers at google.com>
Alexander Popov <alex.popov at linux.com>
Mark Brown <broonie at kernel.org>
Sami Tolvanen <samitolvanen at google.com>
Nathan Chancellor <natechancellor at gmail.com>
Denis Efremov <efremov at linux.com>
linux-kbuild at vger.kernel.org
linux-kernel at vger.kernel.org
linux-arm-kernel at lists.infradead.org
linux-ia64 at vger.kernel.org

> 
> Then we check that we did not miss anyone important for these two patches.
> 
> Please resend the two mentioned patches again as patch series with a cover 
> letter.
> 
> We are getting close now to sending this to the larger group of kernel 
> developers.
> 
> Good progress so far.
> 
> Lukas
> 
>> ---
>>  init/Kconfig | 16 ++++++++--------
>>  1 file changed, 8 insertions(+), 8 deletions(-)
>>
>> diff --git a/init/Kconfig b/init/Kconfig
>> index 91456ac0ef20..335c8fcb99af 100644
>> --- a/init/Kconfig
>> +++ b/init/Kconfig
>> @@ -30,12 +30,12 @@ config CC_IS_GCC
>>  
>>  config GCC_VERSION
>>  	int
>> -	default $(shell,$(srctree)/scripts/gcc-version.sh $(CC)) if CC_IS_GCC
>> +	default $(shell,$(CONFIG_SHELL) $(srctree)/scripts/gcc-version.sh $(CC)) if CC_IS_GCC
>>  	default 0
>>  
>>  config LD_VERSION
>>  	int
>> -	default $(shell,$(LD) --version | $(srctree)/scripts/ld-version.sh)
>> +	default $(shell,$(LD) --version | $(AWK) -f $(srctree)/scripts/ld-version.sh)
>>  
>>  config CC_IS_CLANG
>>  	def_bool $(success,echo "$(CC_VERSION_TEXT)" | grep -q clang)
>> @@ -45,20 +45,20 @@ config LD_IS_LLD
>>  
>>  config CLANG_VERSION
>>  	int
>> -	default $(shell,$(srctree)/scripts/clang-version.sh $(CC))
>> +	default $(shell,$(CONFIG_SHELL) $(srctree)/scripts/clang-version.sh $(CC))
>>  
>>  config CC_CAN_LINK
>>  	bool
>> -	default $(success,$(srctree)/scripts/cc-can-link.sh $(CC) $(CLANG_FLAGS) $(m64-flag)) if 64BIT
>> -	default $(success,$(srctree)/scripts/cc-can-link.sh $(CC) $(CLANG_FLAGS) $(m32-flag))
>> +	default $(success,$(CONFIG_SHELL) $(srctree)/scripts/cc-can-link.sh $(CC) $(CLANG_FLAGS) $(m64-flag)) if 64BIT
>> +	default $(success,$(CONFIG_SHELL) $(srctree)/scripts/cc-can-link.sh $(CC) $(CLANG_FLAGS) $(m32-flag))
>>  
>>  config CC_CAN_LINK_STATIC
>>  	bool
>> -	default $(success,$(srctree)/scripts/cc-can-link.sh $(CC) $(CLANG_FLAGS) $(m64-flag) -static) if 64BIT
>> -	default $(success,$(srctree)/scripts/cc-can-link.sh $(CC) $(CLANG_FLAGS) $(m32-flag) -static)
>> +	default $(success,$(CONFIG_SHELL) $(srctree)/scripts/cc-can-link.sh $(CC) $(CLANG_FLAGS) $(m64-flag) -static) if 64BIT
>> +	default $(success,$(CONFIG_SHELL) $(srctree)/scripts/cc-can-link.sh $(CC) $(CLANG_FLAGS) $(m32-flag) -static)
>>  
>>  config CC_HAS_ASM_GOTO
>> -	def_bool $(success,$(srctree)/scripts/gcc-goto.sh $(CC))
>> +	def_bool $(success,$(CONFIG_SHELL) $(srctree)/scripts/gcc-goto.sh $(CC))
>>  
>>  config CC_HAS_ASM_GOTO_OUTPUT
>>  	depends on CC_HAS_ASM_GOTO
>> -- 
>> 2.26.2
>>
>>



More information about the Linux-kernel-mentees mailing list