diff options
Diffstat (limited to 'tests')
| -rwxr-xr-x | tests/ubi-tests/stress-test.sh | 107 | 
1 files changed, 61 insertions, 46 deletions
| diff --git a/tests/ubi-tests/stress-test.sh b/tests/ubi-tests/stress-test.sh index 2d780b1..4e63dbe 100755 --- a/tests/ubi-tests/stress-test.sh +++ b/tests/ubi-tests/stress-test.sh @@ -53,6 +53,7 @@ print_params()  	local size="$1";      shift  	local peb_size="$1";  shift  	local page_size="$1"; shift +	local vid_offs="$1";  shift  	local fastmap="$1";   shift  	local fm_str @@ -62,8 +63,10 @@ print_params()  		fm_str="enabled"  	fi -	printf "%s"   "${size}MiB $module with ${peb_size}KiB PEB, " -	[ "$module" != "nandsim" ] || printf "%s" "${page_size}KiB NAND pages, " +	printf "%s" "$module: ${size}MiB, PEB size ${peb_size}KiB, " +	if [ "$module" = "nandsim" ]; then +		printf "%s" "page size ${page_size}KiB, VID offset $vid_offs, " +	fi  	printf "%s\n" "fastmap $fm_str"   } @@ -73,24 +76,28 @@ print_separator()  }  # Run a test on nandsim or mtdram with certain geometry. -# Usage: run_test <nandsim|mtdram> <flash size> <PEB size> <Page size> <FM> +# Usage: run_test <nandsim|mtdram> <flash size> <PEB size> \ +#                 <Page size> <VID hdr offs> <enable fastmap>  # -# Flash size is specified in MiB -# PEB size is specified in KiB -# Page size is specified in bytes -# If fast-map should be enabled, pass 0 or 1 +# 1. Simulator type (nandsim or mtdram) +# 2. Flash size is specified in MiB  +# 3. PEB size is specified in KiB +# 4. Page size is specified in bytes (mtdram ingores this) +# 5. VID header offset (mtdram ingores this) +# 6. Whether fast-map should be enabled (pass 0 or 1)  run_test()  {  	local module="$1";  	local size="$2";  	local peb_size="$3";  	local page_size="$4"; -	local fastmap="$5";   +	local vid_offs="$5" +	local fastmap="$6";    	local fm_supported fm_str fm_param mtdnum  	print_separator -	# Check if fastmap is supported +	# Check if fastmap is supported by UBI  	if modinfo ubi | grep -q fm_auto; then  		fm_supported="yes"  	else @@ -104,9 +111,8 @@ run_test()  		fm_str="enabled"  		fm_param="fm_auto"  	else -		echo "Fastmap is not supported, will test without fastmap" -		fm_str="disabled" -		fm_param= +		echo "Fastmap is not supported, skip" +		return 0  	fi  	if [ "$module" = "nandsim" ]; then @@ -120,7 +126,7 @@ run_test()  		fatal "$module is not supported"  	fi -	modprobe ubi mtd="$mtdnum" $fm_param +	modprobe ubi mtd="$mtdnum,$vid_offs" $fm_param  	runtests.sh /dev/ubi0 ||:  	sudo rmmod ubi @@ -142,37 +148,46 @@ mtdram_patt="mtdram test device"  rmmod ubi >/dev/null 2>&1 ||: -print_separator -print_separator - -for fm in 1 2; do -	run_test "nandsim" "16"  "16" "512" "$fm" -	run_test "nandsim" "32"  "16" "512" "$fm" -	run_test "nandsim" "64"  "16" "512" "$fm" -	run_test "nandsim" "128" "16" "512" "$fm" -	run_test "nandsim" "256" "16" "512" "$fm" - -	run_test "nandsim" "64"   "64" "2048" "$fm" -	run_test "nandsim" "128"  "64" "2048" "$fm" -	run_test "nandsim" "256"  "64" "2048" "$fm" -	run_test "nandsim" "512"  "64" "2048" "$fm" -	run_test "nandsim" "1024" "64" "2048" "$fm" - -	run_test "nandsim" "64"   "128" "2048" "$fm" -	run_test "nandsim" "128"  "128" "2048" "$fm" -	run_test "nandsim" "256"  "128" "2048" "$fm" -	run_test "nandsim" "512"  "128" "2048" "$fm" -	run_test "nandsim" "1024" "128" "2048" "$fm" - -	run_test "nandsim" "64"   "256" "2048" "$fm" -	run_test "nandsim" "128"  "256" "2048" "$fm" -	run_test "nandsim" "256"  "256" "2048" "$fm" -	run_test "nandsim" "512"  "256" "2048" "$fm" -	run_test "nandsim" "1024" "256" "2048" "$fm" - -	run_test "nandsim" "64"   "512" "2048" "$fm" -	run_test "nandsim" "128"  "512" "2048" "$fm" -	run_test "nandsim" "256"  "512" "2048" "$fm" -	run_test "nandsim" "512"  "512" "2048" "$fm" -	run_test "nandsim" "1024" "512" "2048" "$fm" +for fm in 1 0; do +	for vid_factor in 1 0; do +		print_separator +		print_separator +		print_separator + +		pg_size="512" +		vid_offs="$(($pg_size * $vid_factor))" + +		run_test "nandsim" "16"  "16" "$pg_size" "$vid_offs" "$fm" +		run_test "nandsim" "32"  "16" "$pg_size" "$vid_offs" "$fm" +		run_test "nandsim" "64"  "16" "$pg_size" "$vid_offs" "$fm" +		run_test "nandsim" "128" "16" "$pg_size" "$vid_offs" "$fm" +		run_test "nandsim" "256" "16" "$pg_size" "$vid_offs" "$fm" + +		pg_size="2048" +		vid_offs="$(($pg_size * $vid_factor))" + +		run_test "nandsim" "64"   "64" "$pg_size" "$vid_offs" "$fm" +		run_test "nandsim" "128"  "64" "$pg_size" "$vid_offs" "$fm" +		run_test "nandsim" "256"  "64" "$pg_size" "$vid_offs" "$fm" +		run_test "nandsim" "512"  "64" "$pg_size" "$vid_offs" "$fm" +		run_test "nandsim" "1024" "64" "$pg_size" "$vid_offs" "$fm" + +		run_test "nandsim" "64"   "128" "$pg_size" "$vid_offs" "$fm" +		run_test "nandsim" "128"  "128" "$pg_size" "$vid_offs" "$fm" +		run_test "nandsim" "256"  "128" "$pg_size" "$vid_offs" "$fm" +		run_test "nandsim" "512"  "128" "$pg_size" "$vid_offs" "$fm" +		run_test "nandsim" "1024" "128" "$pg_size" "$vid_offs" "$fm" + +		run_test "nandsim" "64"   "256" "$pg_size" "$vid_offs" "$fm" +		run_test "nandsim" "128"  "256" "$pg_size" "$vid_offs" "$fm" +		run_test "nandsim" "256"  "256" "$pg_size" "$vid_offs" "$fm" +		run_test "nandsim" "512"  "256" "$pg_size" "$vid_offs" "$fm" +		run_test "nandsim" "1024" "256" "$pg_size" "$vid_offs" "$fm" + +		run_test "nandsim" "64"   "512" "$pg_size" "$vid_offs" "$fm" +		run_test "nandsim" "128"  "512" "$pg_size" "$vid_offs" "$fm" +		run_test "nandsim" "256"  "512" "$pg_size" "$vid_offs" "$fm" +		run_test "nandsim" "512"  "512" "$pg_size" "$vid_offs" "$fm" +		run_test "nandsim" "1024" "512" "$pg_size" "$vid_offs" "$fm" +	done  done | 
