yaffs Clean up exit from plot script
authorCharles Manning <cdhmanning@gmail.com>
Sun, 2 May 2010 21:56:20 +0000 (09:56 +1200)
committerCharles Manning <cdhmanning@gmail.com>
Sun, 2 May 2010 21:56:20 +0000 (09:56 +1200)
The plot script now cleans up properly after a control-C.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
linux-tests/plot_data.sh

index a7df698a5249298f10785e5c3ac38a1cdb899a2c..cd5a1cd6f8992af4b5865b3cb50e22ba7a46b4d5 100755 (executable)
@@ -7,6 +7,8 @@
 log_file=data
 gather_delay=1
 
+done_file=plot_done
+
 # Plot settings
 trunc_file=trunc_data
 plot_samples=1000
@@ -14,13 +16,15 @@ plot_delay=2
 
 
 
+
+
 # Gathering task
 
 gather_data() {
 i=0;
 rm -f $log_file
 
-while true; do
+while [ ! -e $done_file ] ; do
 str=$(cat /proc/yaffs_stats)
 echo "$i, $str" 
 echo "$i, $str"  >> $log_file
@@ -44,7 +48,7 @@ echo "set title 'yaffs free space and erased space'"
 
 echo $plot_str
  
-while true; do
+while [ ! -e $done_file ]; do
 sleep $plot_delay
 tail -$plot_samples $log_file > $trunc_file
 echo replot
@@ -52,9 +56,15 @@ done
 }
 
 
+rm -f $done_file
+trap "touch $done_file" INT
 
 echo "Start gathering task in background"
 gather_data &
 echo "Run plotting task"
 drive_gnuplot | gnuplot
 
+wait
+
+echo "All done"
+