2022-06-07 18:48:58

by Nick Desaulniers

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

On Tue, Jun 7, 2022 at 9:41 AM Masahiro Yamada <[email protected]> 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 <[email protected]>
> Reported-by: Michael Ellerman <[email protected]>
> Reported-by: Wang Yugui <[email protected]>
> Tested-by: Tetsuo Handa <[email protected]>
> Tested-by: Jon Hunter <[email protected]>
> Signed-off-by: Masahiro Yamada <[email protected]>

Acked-by: Nick Desaulniers <[email protected]>

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


2022-06-08 06:44:40

by Masahiro Yamada

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

On Wed, Jun 8, 2022 at 2:24 AM Nick Desaulniers <[email protected]> wrote:
>
> On Tue, Jun 7, 2022 at 9:41 AM Masahiro Yamada <[email protected]> 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 <[email protected]>
> > Reported-by: Michael Ellerman <[email protected]>
> > Reported-by: Wang Yugui <[email protected]>
> > Tested-by: Tetsuo Handa <[email protected]>
> > Tested-by: Jon Hunter <[email protected]>
> > Signed-off-by: Masahiro Yamada <[email protected]>
>
> Acked-by: Nick Desaulniers <[email protected]>
>
> 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.


OK. will do.

Thanks.


--
Best Regards
Masahiro Yamada

2022-06-08 19:48:16

by Sedat Dilek

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

On Tue, Jun 7, 2022 at 8:42 PM Nick Desaulniers <[email protected]> wrote:
>
> On Tue, Jun 7, 2022 at 9:41 AM Masahiro Yamada <[email protected]> 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 <[email protected]>
> > Reported-by: Michael Ellerman <[email protected]>
> > Reported-by: Wang Yugui <[email protected]>
> > Tested-by: Tetsuo Handa <[email protected]>
> > Tested-by: Jon Hunter <[email protected]>
> > Signed-off-by: Masahiro Yamada <[email protected]>
>
> Acked-by: Nick Desaulniers <[email protected]>
>

Tested-by: Sedat Dilek <[email protected]> # LLVM-14 (x86-64)

-Sedat-

> 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