yaffs Changes to direct tests
authorCharles Manning <cdhmanning@gmail.com>
Sat, 7 Aug 2010 04:30:20 +0000 (16:30 +1200)
committerCharles Manning <cdhmanning@gmail.com>
Sat, 7 Aug 2010 04:30:20 +0000 (16:30 +1200)
Add test for lost+found being empty.
Make fuzzer less verbose
Allow changing of iteration count for simulated power fail testing.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
direct/tests/fuzzer.c
direct/tests/launch_tests.sh
direct/tests/manage_nand_test.sh
direct/tests/manage_nor_test.sh
direct/tests/nor_stress.c
direct/tests/run_fuzz_test_nand.sh
direct/tests/run_fw_update_test_nor.sh

index deadf951b12a7c60d018bbe55dde02eee37cdccb..64d307f97ff8cc93eb62c63bdc653aa4d2e92477 100644 (file)
@@ -71,7 +71,7 @@ int main(int argc, char *argv[])
        srand(time(0));
 
        for(b = 0; b < nbuffers; b++){
        srand(time(0));
 
        for(b = 0; b < nbuffers; b++){
-               printf("buffer %d\n",b);
+               /* printf("buffer %d\n",b); */
                lseek(h,b * sizeof(buffer),SEEK_SET);
                bufsize = read(h,buffer,sizeof(buffer));
                for(i = 0; i < changesPerBuffer; i++){
                lseek(h,b * sizeof(buffer),SEEK_SET);
                bufsize = read(h,buffer,sizeof(buffer));
                for(i = 0; i < changesPerBuffer; i++){
index 31e9e95eec66a6569b9acbe056231b32ee3b9b78..1005ff28b69b4e3883ae4bfbdbc18a3ce8325386 100755 (executable)
@@ -1,5 +1,12 @@
 #! /bin/sh
 set -x
 #! /bin/sh
 set -x
+
+
+iterations=100000
+
+[ -z $1 ]  || iterations=$1
+
+
 LAUNCHDIR=`pwd`
 RUNDIR=`pwd`/tmp
 mkdir $RUNDIR
 LAUNCHDIR=`pwd`
 RUNDIR=`pwd`/tmp
 mkdir $RUNDIR
@@ -8,9 +15,9 @@ sudo chmod a+wr $RUNDIR
 
 
 
 
 
 
-xterm  -e "$LAUNCHDIR/manage_nor_test.sh  0"&
-xterm  -e "$LAUNCHDIR/manage_nand_test.sh 0"&
-xterm  -e "$LAUNCHDIR/manage_nor_test.sh  1"&
-xterm  -e "$LAUNCHDIR/manage_nand_test.sh 1"&
-xterm  -e "$LAUNCHDIR/manage_nor_test.sh  2"&
-xterm  -e "$LAUNCHDIR/manage_nand_test.sh 2"&
+xterm  -e "$LAUNCHDIR/manage_nor_test.sh  0 $iterations"&
+xterm  -e "$LAUNCHDIR/manage_nand_test.sh  0 $iterations"&
+xterm  -e "$LAUNCHDIR/manage_nor_test.sh  1 $iterations"&
+xterm  -e "$LAUNCHDIR/manage_nand_test.sh  1 $iterations"&
+xterm  -e "$LAUNCHDIR/manage_nor_test.sh  2 $iterations"&
+xterm  -e "$LAUNCHDIR/manage_nand_test.sh  2 $iterations"&
index 3d985d39b2f52ed152c75d1e8355da5287f3f3a5..7944873245f2d039ea093e1505fa3047ca2ec0a9 100755 (executable)
@@ -3,6 +3,10 @@
 dir_id=-none
 [ -z $1 ] || dir_id=$1
 
 dir_id=-none
 [ -z $1 ] || dir_id=$1
 
+iterations=100000
+
+[ -z $2 ]  || iterations=$2
+
 STARTDIR=`pwd`
 RUNDIR=`pwd`/tmp/nand-$dir_id
 mkdir $RUNDIR
 STARTDIR=`pwd`
 RUNDIR=`pwd`/tmp/nand-$dir_id
 mkdir $RUNDIR
@@ -11,7 +15,7 @@ cp $STARTDIR/*sh .
 ln -s $STARTDIR/yaffs_test yaffs_test
 
 ./init_fw_update_test_nand.sh
 ln -s $STARTDIR/yaffs_test yaffs_test
 
 ./init_fw_update_test_nand.sh
-./run_fw_update_test_nand.sh
+./run_fw_update_test_nand.sh $iterations
 
 
 echo "!!!!!!!!!!!"
 
 
 echo "!!!!!!!!!!!"
index d7a08d3c75508811326537638f3f8d64495c5448..60b78daa44426f7bd92fbf55f783a2b1b8bb5182 100755 (executable)
@@ -3,6 +3,11 @@
 dir_id=-none
 [ -z $1 ] || dir_id=$1
 
 dir_id=-none
 [ -z $1 ] || dir_id=$1
 
+
+iterations=100000
+
+[ -z $2 ]  || iterations=$2
+
 STARTDIR=`pwd`
 RUNDIR=`pwd`/tmp/nor-$dir_id
 mkdir $RUNDIR
 STARTDIR=`pwd`
 RUNDIR=`pwd`/tmp/nor-$dir_id
 mkdir $RUNDIR
@@ -11,7 +16,7 @@ cp $STARTDIR/*sh .
 ln -s $STARTDIR/yaffs_test yaffs_test
 
 ./init_fw_update_test_nor.sh
 ln -s $STARTDIR/yaffs_test yaffs_test
 
 ./init_fw_update_test_nor.sh
-./run_fw_update_test_nor.sh
+./run_fw_update_test_nor.sh $iterations
 
 echo "!!!!!!!!!!!"
 echo "Tests done"
 
 echo "!!!!!!!!!!!"
 echo "Tests done"
index 3802837130d997e1f34840ddcdc2b3c470fb9094..6f6b4ce583c74fee117a81d5fe041b3a98510797 100644 (file)
@@ -182,6 +182,7 @@ static void dump_directory_tree_worker(const char *dname,int recursive)
        struct yaffs_stat s;
        char str[1000];
        int error_line = 0;
        struct yaffs_stat s;
        char str[1000];
        int error_line = 0;
+       int nentries;
                        
        d = yaffs_opendir(dname);
        
                        
        d = yaffs_opendir(dname);
        
@@ -191,11 +192,13 @@ static void dump_directory_tree_worker(const char *dname,int recursive)
        }
        else
        {
        }
        else
        {
+               nentries = 0;
                while((de = yaffs_readdir(d)) != NULL)
                {
                        strcpy(str,dname);
                        strcat(str,"/");
                        strcat(str,de->d_name);
                while((de = yaffs_readdir(d)) != NULL)
                {
                        strcpy(str,dname);
                        strcat(str,"/");
                        strcat(str,de->d_name);
+                       nentries++;
                        
                        yaffs_lstat(str,&s);
                        
                        
                        yaffs_lstat(str,&s);
                        
@@ -224,10 +227,15 @@ static void dump_directory_tree_worker(const char *dname,int recursive)
                                dump_directory_tree_worker(str,1);
                                
                         if(s.st_ino > 10000)
                                dump_directory_tree_worker(str,1);
                                
                         if(s.st_ino > 10000)
-                          error_line = __LINE__;
+                               error_line = __LINE__;
                                                        
                }
                
                                                        
                }
                
+               if(strstr(dname,"lost+found") && nentries >0){
+                       printf("\n\n!!! HEY lost+found not empty, had %d entries\n\n\n",nentries);
+                       error_line = __LINE__;
+               }
+
                if(error_line && !no_verification)
                        FatalError(error_line);
                
                if(error_line && !no_verification)
                        FatalError(error_line);
                
index b9473fc9972d4fed1582f93921d788b3e944b34d..1faeff51b94705256623701cd83dc937bb64b874 100755 (executable)
@@ -17,6 +17,9 @@ do
    seed=$RANDOM   
    j=$(( $i % 10 ))
 
    seed=$RANDOM   
    j=$(( $i % 10 ))
 
+   cycles=$RANDOM
+   cycles=$(( $cycles % 10000 ))
+
    rm -f log-nand-*$j
    rm -f seed-nand-*$j
    echo $seed>seed-nand-for-run-$i
    rm -f log-nand-*$j
    rm -f seed-nand-*$j
    echo $seed>seed-nand-for-run-$i
@@ -45,6 +48,5 @@ do
    echo "#########"
    echo "#########"
    echo "#########"
    echo "#########"
    echo "#########"
    echo "#########"
-   ./yaffs_test -u  -p -s$seed -t 8 -z yaffs2 
-   # >log-nand-$i
+   ./yaffs_test -u  -p -s$seed -t 8 -n $cycles -z yaffs2 
 done
 done
index 9c9d6160319eec06a437fd77d63aeba8c7e3e2ee..9265336111f592b3fac6b92aa40e496e1b7d7e06 100755 (executable)
@@ -33,6 +33,7 @@ do
    echo "#########"
    echo "#########"
    echo "#########"
    echo "#########"
    echo "#########"
    echo "#########"
-   ./yaffs_test -u -f -p -s$seed -t0 M18-1 >log-nor-$i
+   ./yaffs_test -u -f -p -s$seed -t0 M18-1 
+   #>log-nor-$i
 done
 
 done