xref: /openbmc/linux/tools/testing/selftests/powerpc/nx-gzip/nx-gzip-test.sh (revision 4b4193256c8d3bc3a5397b5cd9494c2ad386317d)
1647c734fSRaphael Moreira Zinsly#!/bin/bash
2647c734fSRaphael Moreira Zinsly# SPDX-License-Identifier: GPL-2.0-or-later
3647c734fSRaphael Moreira Zinsly
4647c734fSRaphael Moreira Zinslyif [[ ! -w /dev/crypto/nx-gzip ]]; then
5647c734fSRaphael Moreira Zinsly	echo "Can't access /dev/crypto/nx-gzip, skipping"
6647c734fSRaphael Moreira Zinsly	echo "skip: $0"
7647c734fSRaphael Moreira Zinsly	exit 4
8647c734fSRaphael Moreira Zinslyfi
9647c734fSRaphael Moreira Zinsly
10647c734fSRaphael Moreira Zinslyset -e
11647c734fSRaphael Moreira Zinsly
12647c734fSRaphael Moreira Zinslyfunction cleanup
13647c734fSRaphael Moreira Zinsly{
14647c734fSRaphael Moreira Zinsly	rm -f nx-tempfile*
15647c734fSRaphael Moreira Zinsly}
16647c734fSRaphael Moreira Zinsly
17647c734fSRaphael Moreira Zinslytrap cleanup EXIT
18647c734fSRaphael Moreira Zinsly
19647c734fSRaphael Moreira Zinslyfunction test_sizes
20647c734fSRaphael Moreira Zinsly{
21647c734fSRaphael Moreira Zinsly	local n=$1
22647c734fSRaphael Moreira Zinsly	local fname="nx-tempfile.$n"
23647c734fSRaphael Moreira Zinsly
24647c734fSRaphael Moreira Zinsly	for size in 4K 64K 1M 64M
25647c734fSRaphael Moreira Zinsly	do
26647c734fSRaphael Moreira Zinsly		echo "Testing $size ($n) ..."
27647c734fSRaphael Moreira Zinsly		dd if=/dev/urandom of=$fname bs=$size count=1
28647c734fSRaphael Moreira Zinsly		./gzfht_test $fname
29*841fb73aSRaphael Moreira Zinsly		./gunz_test ${fname}.nx.gz
30647c734fSRaphael Moreira Zinsly	done
31647c734fSRaphael Moreira Zinsly}
32647c734fSRaphael Moreira Zinsly
33647c734fSRaphael Moreira Zinslyecho "Doing basic test of different sizes ..."
34647c734fSRaphael Moreira Zinslytest_sizes 0
35647c734fSRaphael Moreira Zinsly
36647c734fSRaphael Moreira Zinslyecho "Running tests in parallel ..."
37647c734fSRaphael Moreira Zinslyfor i in {1..16}
38647c734fSRaphael Moreira Zinslydo
39647c734fSRaphael Moreira Zinsly	test_sizes $i &
40647c734fSRaphael Moreira Zinslydone
41647c734fSRaphael Moreira Zinsly
42647c734fSRaphael Moreira Zinslywait
43647c734fSRaphael Moreira Zinsly
44647c734fSRaphael Moreira Zinslyecho "OK"
45647c734fSRaphael Moreira Zinsly
46647c734fSRaphael Moreira Zinslyexit 0
47