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
| ||
|
Date: Wed, 18 May 2022 21:08:21 -0700 From: Ian Rogers <irogers@...gle.com> To: Namhyung Kim <namhyung@...nel.org> Cc: Arnaldo Carvalho de Melo <acme@...nel.org>, Jiri Olsa <jolsa@...nel.org>, Ingo Molnar <mingo@...nel.org>, Peter Zijlstra <peterz@...radead.org>, LKML <linux-kernel@...r.kernel.org>, Andi Kleen <ak@...ux.intel.com>, Song Liu <songliubraving@...com>, Hao Luo <haoluo@...gle.com>, Milian Wolff <milian.wolff@...b.com>, bpf@...r.kernel.org, linux-perf-users@...r.kernel.org, Blake Jones <blakejones@...gle.com> Subject: Re: [PATCH 6/6] perf test: Add a basic offcpu profiling test On Wed, May 18, 2022 at 3:47 PM Namhyung Kim <namhyung@...nel.org> wrote: > > $ sudo ./perf test -v offcpu > 88: perf record offcpu profiling tests : > --- start --- > test child forked, pid 685966 > Basic off-cpu test > Basic off-cpu test [Success] > test child finished with 0 > ---- end ---- > perf record offcpu profiling tests: Ok > > Signed-off-by: Namhyung Kim <namhyung@...nel.org> Acked-by: Ian Rogers <irogers@...gle.com> Thanks, Ian > --- > tools/perf/tests/shell/record_offcpu.sh | 60 +++++++++++++++++++++++++ > 1 file changed, 60 insertions(+) > create mode 100755 tools/perf/tests/shell/record_offcpu.sh > > diff --git a/tools/perf/tests/shell/record_offcpu.sh b/tools/perf/tests/shell/record_offcpu.sh > new file mode 100755 > index 000000000000..96e0739f7478 > --- /dev/null > +++ b/tools/perf/tests/shell/record_offcpu.sh > @@ -0,0 +1,60 @@ > +#!/bin/sh > +# perf record offcpu profiling tests > +# SPDX-License-Identifier: GPL-2.0 > + > +set -e > + > +err=0 > +perfdata=$(mktemp /tmp/__perf_test.perf.data.XXXXX) > + > +cleanup() { > + rm -f ${perfdata} > + rm -f ${perfdata}.old > + trap - exit term int > +} > + > +trap_cleanup() { > + cleanup > + exit 1 > +} > +trap trap_cleanup exit term int > + > +test_offcpu() { > + echo "Basic off-cpu test" > + if [ `id -u` != 0 ] > + then > + echo "Basic off-cpu test [Skipped permission]" > + err=2 > + return > + fi > + if perf record --off-cpu -o ${perfdata} --quiet true 2>&1 | grep BUILD_BPF_SKEL > + then > + echo "Basic off-cpu test [Skipped missing BPF support]" > + err=2 > + return > + fi > + if ! perf record --off-cpu -e dummy -o ${perfdata} sleep 1 2> /dev/null > + then > + echo "Basic off-cpu test [Failed record]" > + err=1 > + return > + fi > + if ! perf evlist -i ${perfdata} | grep -q "offcpu-time" > + then > + echo "Basic off-cpu test [Failed record]" > + err=1 > + return > + fi > + if ! perf report -i ${perfdata} -q --percent-limit=90 | egrep -q sleep > + then > + echo "Basic off-cpu test [Failed missing output]" > + err=1 > + return > + fi > + echo "Basic off-cpu test [Success]" > +} > + > +test_offcpu > + > +cleanup > +exit $err > -- > 2.36.1.124.g0e6072fb45-goog >
Powered by blists - more mailing lists