Re: [PATCH v2] scripts/check-local-export: avoid 'wait $!' for process substitution

From: Nick Desaulniers
Date: Tue Jun 07 2022 - 13:36:49 EST


On Tue, Jun 7, 2022 at 9:41 AM Masahiro Yamada <masahiroy@xxxxxxxxxx> wrote:
>
> Bash>=4.4 supports 'wait $!' to check the exit status of a process
> substitution, but some people using older bash versions reported an
> error like this:
>
> Reported-by: Tetsuo Handa <penguin-kernel@xxxxxxxxxxxxxxxxxxx>
> Reported-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>
> Reported-by: Wang Yugui <wangyugui@xxxxxxxxxxxx>
> Tested-by: Tetsuo Handa <penguin-kernel@xxxxxxxxxxxxxxxxxxx>
> Tested-by: Jon Hunter <jonathanh@xxxxxxxxxx>
> Signed-off-by: Masahiro Yamada <masahiroy@xxxxxxxxxx>

Acked-by: Nick Desaulniers <ndesaulniers@xxxxxxxxxx>

Some comments below.

> diff --git a/Documentation/process/changes.rst b/Documentation/process/changes.rst
> index 34415ae1af1b..19c286c23786 100644
> --- a/Documentation/process/changes.rst
> +++ b/Documentation/process/changes.rst
> @@ -32,6 +32,7 @@ you probably needn't concern yourself with pcmciautils.
> GNU C 5.1 gcc --version
> Clang/LLVM (optional) 11.0.0 clang --version
> GNU make 3.81 make --version
> +bash 4.2 bash --version

/usr/bin/env bash
and definitely /bin/bash
both show up a lot in kernel sources. At this point, I think bash is a
requirement at this point, so it's good to document it finally.

> +# If there is no symbol in the object, ${NM} (both GNU nm and llvm-nm) shows
> +# 'no symbols' diagnostic (but exits with 0). It is harmless and hidden by
> +# '2>/dev/null'. However, it suppresses real error messages as well. Add a
> +# hand-crafted error message here.
> +#
> +# Use --quiet instead of 2>/dev/null when we upgrade the minimum version of
> +# binutils to 2.37, llvm to 13.0.0.

Might be nice to include `TODO:` in the comment block. Vim will
highlight these in comments.

--
Thanks,
~Nick Desaulniers