Re: [PATCH v6] strace-tst-thp.sh: Allow unsupported THP tests

"H.J. Lu" <[email protected]>
Newsgroups gmane.comp.lib.glibc.alpha
Message-ID <CAMe9rOqyeB+niiw+5LD0Gkd2eDni6ZHYEp-v_qXAAs=CYafpBg@mail.gmail.com>
On Tue, Aug 11, 2026 at 2:52 AM Adhemerval Zanella Netto
<[email protected]> wrote:
>
>
>
> On 21/07/26 05:34, H.J. Lu wrote:
> > Change strace-tst-thp.sh to check the command exit status so that
> > unsupported THP tests exit with status 77.
> >
> >
> > From 664b271b81da6d57eefac7cd7d6b529dfbf5755c Mon Sep 17 00:00:00 2001
> > From: "H.J. Lu" <[email protected]>
> > Date: Sat, 4 Jul 2026 11:06:21 +0800
> > Subject: [PATCH v6] strace-tst-thp.sh: Allow unsupported THP tests
> >
> > Change strace-tst-thp.sh to check the command exit status so that
> > unsupported THP tests exit with status 77.
> >
> > Signed-off-by: H.J. Lu <[email protected]>
>
> LGTM, thanks.  Some minor suggestions below, no need to send a new version.
>
> Reviewed-by: Adhemerval Zanella  <[email protected]>
>
> > ---
> >  sysdeps/unix/sysv/linux/strace-tst-thp.sh | 24 +++++++++++------------
> >  1 file changed, 11 insertions(+), 13 deletions(-)
> >
> > diff --git a/sysdeps/unix/sysv/linux/strace-tst-thp.sh b/sysdeps/unix/sysv/linux/strace-tst-thp.sh
> > index bff7d3e7a0..1c2b7255ac 100644
> > --- a/sysdeps/unix/sysv/linux/strace-tst-thp.sh
> > +++ b/sysdeps/unix/sysv/linux/strace-tst-thp.sh
> > @@ -1,4 +1,4 @@
> > -#!/bin/bash
> > +#!/bin/sh
> >  # Run THP test under strace to verify control of the THP segment load.
> >  # Copyright (C) 2026 Free Software Foundation, Inc.
> >  # This file is part of the GNU C Library.
> > @@ -17,8 +17,6 @@
> >  # License along with the GNU C Library; if not, see
> >  # <https://www.gnu.org/licenses/>.
> >
> > -set -e
> > -
> >  rtld="$1"
> >  test_wrapper_env="$2"
> >  run_program_env="$3"
> > @@ -39,24 +37,24 @@ esac
> >
> >  # Verify strace is not just present, but works in this environment.  If
> >  # not, skip the test.
> > -/bin/sh -c \
> > - "${test_wrapper_env} ${run_program_env} \
> > -  strace -X raw -e trace=none -- /bin/true" > /dev/null 2>&1 || exit 77
> > +${test_wrapper_env} ${run_program_env} \
> > +  strace -X raw -e trace=none -- /bin/true > /dev/null 2>&1 || exit 77
> >
> >  # Finally the actual test inside the test environment, using the just
> >  # build ld.so and new libraries to run the THP test under strace.
> > -if /bin/sh -c \
> > -  "timeout -k 4 $((3*$TIMEOUTFACTOR)) ${cmd} --direct 2>&1 \
> > -   | grep -E \"madvise\(0x[0-9a-f]+, [0-9]+, 0xe)\""; then
> > +output=$(timeout -k 4 $((3*$TIMEOUTFACTOR)) ${cmd} --direct 2>&1)
> > +test $? = 77 && exit 77
> > +if echo "${output}" | grep -E "madvise\(0x[0-9a-f]+, [0-9]+, 0xe)"; then
>
> I think maybe it would be better to use 'printf '%s\n' "${output}"' to avoid
> some shell like dash to avoid interprets backslash escapes (since this is a
> strace output and we might have some eventually).

I changed it to

if printf "%s\n" "${output}" | grep -E "madvise\(0x[0-9a-f]+, [0-9]+,
0xe)"; then

and checked it in.

Thanks.

> >    if test ${strace_expected} = yes; then
> > -    exit 0
> > +    status=0
> >    else
> > -    exit 1
> > +    status=1
> >    fi
> >  else
> >    if test ${strace_expected} = no; then
> > -    exit 0
> > +    status=0
> >    else
> > -    exit 1
> > +    status=1
> >    fi
> >  fi
> > +exit ${status}
> > --
> > 2.55.0
> >
>


-- 
H.J.
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.