lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <2265e166-da9c-f540-a108-0d0b133f7da9@arm.com>
Date:   Fri, 28 Oct 2022 13:22:24 +0100
From:   James Clark <james.clark@....com>
To:     atrajeev@...ux.vnet.ibm.com
Cc:     linux-kernel@...r.kernel.org, Anshuman.Khandual@....com,
        Peter Zijlstra <peterz@...radead.org>,
        Ingo Molnar <mingo@...hat.com>,
        Mark Rutland <mark.rutland@....com>,
        Alexander Shishkin <alexander.shishkin@...ux.intel.com>,
        Jiri Olsa <jolsa@...nel.org>,
        Namhyung Kim <namhyung@...nel.org>,
        Kajol Jain <kjain@...ux.ibm.com>,
        linux-perf-users@...r.kernel.org, acme@...nel.org
Subject: Re: [PATCH] perf test: Fix skipping branch stack sampling test



On 28/10/2022 13:19, James Clark wrote:
> Commit f4a2aade6809 ("perf tests powerpc: Fix branch stack sampling test
> to include sanity check for branch filter") added a skip if certain
> branch options aren't available. But the change added both -b
> (--branch-any) and --branch-filter options at the same time, which will
> always result in a failure on any platform because the arguments can't
> be used together.
> 
> Fix this by removing -b (--branch-any) and leaving --branch-filter which
> already specifies 'any'. Also add warning messages to the test and perf
> tool.
> 

Hi Athira,

Are you able to check if this still skips for you on PowerPC with this
new change?

Thanks
James

> Output on x86 before this fix:
> 
>    $ sudo ./perf test branch
>    108: Check branch stack sampling         : Skip
> 
> After:
> 
>    $ sudo ./perf test branch
>    108: Check branch stack sampling         : Ok
> 
> Fixes: f4a2aade6809 ("perf tests powerpc: Fix branch stack sampling test to include sanity check for branch filter")
> Signed-off-by: James Clark <james.clark@....com>
> ---
>  tools/perf/tests/shell/test_brstack.sh | 5 ++++-
>  tools/perf/util/parse-branch-options.c | 4 +++-
>  2 files changed, 7 insertions(+), 2 deletions(-)
> 
> diff --git a/tools/perf/tests/shell/test_brstack.sh b/tools/perf/tests/shell/test_brstack.sh
> index ec801cffae6b..d7ff5c4b4da4 100755
> --- a/tools/perf/tests/shell/test_brstack.sh
> +++ b/tools/perf/tests/shell/test_brstack.sh
> @@ -13,7 +13,10 @@ fi
>  
>  # skip the test if the hardware doesn't support branch stack sampling
>  # and if the architecture doesn't support filter types: any,save_type,u
> -perf record -b -o- -B --branch-filter any,save_type,u true > /dev/null 2>&1 || exit 2
> +if ! perf record -o- --no-buildid --branch-filter any,save_type,u -- true > /dev/null 2>&1 ; then
> +	echo "skip: system doesn't support filter types: any,save_type,u"
> +	exit 2
> +fi
>  
>  TMPDIR=$(mktemp -d /tmp/__perf_test.program.XXXXX)
>  
> diff --git a/tools/perf/util/parse-branch-options.c b/tools/perf/util/parse-branch-options.c
> index 00588b9db474..31faf2bb49ff 100644
> --- a/tools/perf/util/parse-branch-options.c
> +++ b/tools/perf/util/parse-branch-options.c
> @@ -102,8 +102,10 @@ parse_branch_stack(const struct option *opt, const char *str, int unset)
>  	/*
>  	 * cannot set it twice, -b + --branch-filter for instance
>  	 */
> -	if (*mode)
> +	if (*mode) {
> +		pr_err("Error: Can't use --branch-any (-b) with --branch-filter (-j).\n");
>  		return -1;
> +	}
>  
>  	return parse_branch_str(str, mode);
>  }

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ