if ! perf check -q feature libbpf-strings ; then echo"Basic BPF metadata test [skipping - not supported]"
err=0
return fi
# This is a basic invocation of perf record # that invokes the perf_sample_filter BPF program. if ! perf record -e task-clock --filter 'ip > 0' \
-o "${perfdata}" sleep 1 2> /dev/null then echo"Basic BPF metadata test [Failed record]"
err=1
return fi
# The BPF programs that ship with "perf" all have the following # variable defined at compile time: # # const char bpf_metadata_perf_version[] SEC(".rodata") = <...>; # # This invocation looks for a PERF_RECORD_BPF_METADATA event, # and checks that its content contains the string given by # "perf version".
VERS=$(perf version | awk '{print $NF}') if ! perf script --show-bpf-events -i "${perfdata}" | awk '
/PERF_RECORD_BPF_METADATA.*perf_sample_filter/ {
header = 1;
}
/^ *entry/ { if (header) { header = 0; entry = 1; }
}
$0 !~ /^ *entry/ {
entry = 0;
}
/perf_version/ { if (entry) print $NF;
} ' | grep -qF "$VERS" then echo"Basic BPF metadata test [Failed invalid output]"
err=1
return fi echo"Basic BPF metadata test [Success]"
}
test_bpf_metadata
cleanup
exit $err
Messung V0.5
¤ Dauer der Verarbeitung: 0.13 Sekunden
(vorverarbeitet)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.