X-Git-Url: http://www.aleph1.co.uk/gitweb/?p=yaffs2.git;a=blobdiff_plain;f=direct%2Fdtest.c;h=fd4f9666dd4fb6adb44754da61dc9743dbd77568;hp=6f6da7451081f62fba0595077e91bc11862f5e22;hb=49942b13d7cfbdba72c18de0f37d16d81b4372a8;hpb=e8cfe05cf0d057f6978c37943e51b17bb14664e3 diff --git a/direct/dtest.c b/direct/dtest.c index 6f6da74..fd4f966 100644 --- a/direct/dtest.c +++ b/direct/dtest.c @@ -22,6 +22,8 @@ #include "yaffsfs.h" +#include "nor_stress.h" + void dumpDir(const char *dname); char xx[600]; @@ -513,7 +515,7 @@ void dumpDirFollow(const char *dname) yaffs_stat(str,&s); - printf("%s length %d mode %X ",de->d_name,(int)s.st_size,s.st_mode); + printf("%s ino %d length %d mode %X ",de->d_name,(int)s.st_ino,(int)s.st_size,s.st_mode); switch(s.st_mode & S_IFMT) { case S_IFREG: printf("data file"); break; @@ -941,16 +943,27 @@ void rename_over_test(const char *mountpt) int i; char a[100]; char b[100]; + char c[100]; sprintf(a,"%s/a",mountpt); sprintf(b,"%s/b",mountpt); + sprintf(c,"%s/c",mountpt); yaffs_StartUp(); yaffs_mount(mountpt); - i = yaffs_open(a,O_CREAT | O_TRUNC | O_RDWR, 0); + + printf("Existing files\n"); + dumpDirFollow(mountpt); + + + + i = yaffs_open(c,O_CREAT | O_TRUNC | O_RDWR, S_IREAD | S_IWRITE); + printf("File c handle is %d\n",i); yaffs_close(i); - i = yaffs_open(b,O_CREAT | O_TRUNC | O_RDWR, 0); + i = yaffs_open(a,O_CREAT | O_TRUNC | O_RDWR, S_IREAD | S_IWRITE); + yaffs_close(i); + i = yaffs_open(b,O_CREAT | O_TRUNC | O_RDWR, S_IREAD | S_IWRITE); yaffs_close(i); yaffs_rename(a,b); // rename over yaffs_rename(b,a); // rename back again (not renaimng over) @@ -961,6 +974,7 @@ void rename_over_test(const char *mountpt) } + int resize_stress_test(const char *path) { int a,b,i,j; @@ -1024,6 +1038,28 @@ int resize_stress_test(const char *path) } +int root_perm_remount(const char *path) +{ + struct yaffs_stat s; + + yaffs_StartUp(); + + yaffs_mount(path); + + yaffs_stat(path,&s); + printf("root perms after mount %x\n",s.st_mode); + + yaffs_chmod(path, 0777); + + yaffs_stat(path,&s); + printf("root perms after setting to 0777 is %x\n",s.st_mode); + + yaffs_unmount(path); + + return 0; + +} + int resize_stress_test_no_grow_complex(const char *path,int iters) { @@ -2250,18 +2286,21 @@ void random_small_file_test(const char *mountpt,int iterations) int main(int argc, char *argv[]) { + //return long_test(argc,argv); //return cache_read_test(); - resize_stress_test_no_grow("/flash/flash",20); + // resize_stress_test_no_grow("/flash/flash",20); + //root_perm_remount("/flash/flash"); //huge_directory_test_on_path("/ram2k"); //yaffs_backward_scan_test("/flash/flash"); // yaffs_device_flush_test("/flash/flash"); - + rename_over_test("//////////////////flash///////////////////yaffs1///////////"); + //scan_pattern_test("/flash",10000,10); //short_scan_test("/flash/flash",40000,200); //small_mount_test("/flash/flash",1000);