summaryrefslogtreecommitdiff
path: root/linux-tests/mount_cycling.sh
blob: d92a225dd37fafc29ee18e071813556c695a787c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
#!/bin/sh

MNTPT=/mnt
N=5000
the_file=`pwd`\/data
rm $the_file

let i=0
for j in $(seq 1 5000)
do
	echo "##"
	echo "##"
	echo "## Mount $j of $N"
	echo "##"
	echo "##"

	df
	echo ###"
	mount -t yaffs2 /dev/mtdblock0 $MNTPT
	df
	echo ###"
	cd $MNTPT

	str=$(cat /proc/yaffs_stats)
	echo "$i, $str" 
	echo "$i, $str"  >> $the_file
	let i=$i+1

	sleep 1

	str=$(cat /proc/yaffs_stats)
	echo "$i, $str" 
	echo "$i, $str"  >> $the_file
	let i=$i+1
	
	sleep 1

	~charles/fs-tests/fsx/fsx -N 10000 aa  &

	rm zze

	str=$(cat /proc/yaffs_stats)
	echo "$i, $str" 
	echo "$i, $str"  >> $the_file
	let i=$i+1

	dd if=/dev/urandom of=zza count=4000 &
	dd if=/dev/urandom of=zzb count=4000 &
	dd if=/dev/urandom of=zzc count=100000 &
	dd if=/dev/urandom of=zzd count=4000 &
	dd if=/dev/urandom of=zze count=4000 &
	dd if=/dev/urandom of=zzf count=40000 &

	for k in $(seq 1 10)
	do
		sleep 1

		str=$(cat /proc/yaffs_stats)
		echo "$i, $str" 
		echo "$i, $str"  >> $the_file
		let i=$i+1
	done
	
	echo "waiting..."
	wait
	echo "wait completed"
	
	rm zza

	str=$(cat /proc/yaffs_stats)
	echo "$i, $str" 
	echo "$i, $str"  >> $the_file
	let i=$i+1

	rm zzb
	str=$(cat /proc/yaffs_stats)
	echo "$i, $str" 
	echo "$i, $str"  >> $the_file
	let i=$i+1
	rm zzc
	str=$(cat /proc/yaffs_stats)
	echo "$i, $str" 
	echo "$i, $str"  >> $the_file
	let i=$i+1

	cd -
	umount $MNTPT
	
done