Re: [PATCH v1 1/2] perf test: Add an 'import perf' test shell script
From: Ian Rogers
Date: Tue Sep 30 2025 - 16:03:08 EST
On Wed, Sep 3, 2025 at 11:42 AM Ian Rogers <irogers@xxxxxxxxxx> wrote:
>
> The 'import perf' test needs to set up a path to the python module as
> well as to know the python command to invoke. These are hard coded at
> build time to be build a directory and the python used in the build,
> which is less than desirable. Avoid the hard coded values by reusing
> the existing shell script python setup and determine a potential built
> python module via the path of the perf executable.
>
> Signed-off-by: Ian Rogers <irogers@xxxxxxxxxx>
Ping.
Thanks,
Ian
> ---
> tools/perf/tests/shell/python-use.sh | 36 ++++++++++++++++++++++++++++
> 1 file changed, 36 insertions(+)
> create mode 100755 tools/perf/tests/shell/python-use.sh
>
> diff --git a/tools/perf/tests/shell/python-use.sh b/tools/perf/tests/shell/python-use.sh
> new file mode 100755
> index 000000000000..fd2ee5390060
> --- /dev/null
> +++ b/tools/perf/tests/shell/python-use.sh
> @@ -0,0 +1,36 @@
> +#!/bin/bash
> +# 'import perf' in python
> +# SPDX-License-Identifier: GPL-2.0
> +# Just test if we can load the python binding.
> +set -e
> +
> +shelldir=$(dirname "$0")
> +# shellcheck source=lib/setup_python.sh
> +. "${shelldir}"/lib/setup_python.sh
> +
> +MODULE_DIR=$(dirname "$(which perf)")/python
> +
> +if [ -d "$MODULE_DIR" ]
> +then
> + CMD=$(cat <<EOF
> +import sys
> +sys.path.insert(0, '$MODULE_DIR')
> +import perf
> +print('success!')
> +EOF
> + )
> +else
> + CMD=$(cat <<EOF
> +import perf
> +print('success!')
> +EOF
> + )
> +fi
> +
> +echo -e "Testing 'import perf' with:\n$CMD"
> +
> +if ! echo "$CMD" | $PYTHON | grep -q "success!"
> +then
> + exit 1
> +fi
> +exit 0
> --
> 2.51.0.338.gd7d06c2dae-goog
>