#!/bin/sh
# Zstd perf.data compression/decompression

# SPDX-License-Identifier: GPL-2.0

trace_file=$(mktemp /tmp/perf.data.XXX)
perf_tool=perf

skip_if_no_z_record() {
	$perf_tool record -h 2>&1 | grep -q '\-z, \-\-compression\-level'
}

collect_z_record() {
	echo "Collecting compressed record file:"
	[ "$(uname -m)" != s390x ] && gflag='-g'
	$perf_tool record -o $trace_file $gflag -z -F 5000 -- \
		dd count=500 if=/dev/urandom of=/dev/null
}

check_compressed_stats() {
	echo "Checking compressed events stats:"
	$perf_tool report -i $trace_file --header --stats | \
		grep -E "(# compressed : Zstd,)|(COMPRESSED events:)"
}

check_compressed_output() {
	$perf_tool inject -i $trace_file -o $trace_file.decomp &&
	$perf_tool report -i $trace_file --stdio -F comm,dso,sym | head -n -3 > $trace_file.comp.output &&
	$perf_tool report -i $trace_file.decomp --stdio -F comm,dso,sym | head -n -3 > $trace_file.decomp.output &&
	diff $trace_file.comp.output $trace_file.decomp.output
}

skip_if_no_z_record || exit 2
collect_z_record && check_compressed_stats && check_compressed_output
err=$?
rm -f $trace_file*
exit $err
