diff options
author | Timothy Manning <tfhmanning@gmail.com> | 2011-01-07 12:58:38 +1300 |
---|---|---|
committer | Timothy Manning <tfhmanning@gmail.com> | 2011-01-07 12:58:38 +1300 |
commit | 2899f1fb283094d96a13bc50fff5c03f2d85cdba (patch) | |
tree | 97f2b2c18e705a275ecbac435ca2c27cf3d88a36 /direct | |
parent | caf4f0d199647715e398aa87ad4b35dd26413c92 (diff) |
yaffs Expanding the the test direct/timothy_tests/threading
Signed-off-by: Timothy Manning <tfhmanning@gmail.com>
Diffstat (limited to 'direct')
-rw-r--r-- | direct/timothy_tests/threading/lib.c | 4 | ||||
-rw-r--r-- | direct/timothy_tests/threading/test_a.c | 130 |
2 files changed, 129 insertions, 5 deletions
diff --git a/direct/timothy_tests/threading/lib.c b/direct/timothy_tests/threading/lib.c index 6456958..55084a2 100644 --- a/direct/timothy_tests/threading/lib.c +++ b/direct/timothy_tests/threading/lib.c @@ -12,7 +12,7 @@ */ #include "lib.h" -static unsigned int *p_counter; +static volatile unsigned int *p_counter; static unsigned int numberOfThreads=5; unsigned int get_num_of_threads(void) @@ -37,6 +37,6 @@ void set_counter(int x, unsigned int value) void init_counter(unsigned int size_of_counter) { - p_counter=malloc(size_of_counter*sizeof(int)); + p_counter=malloc(size_of_counter*sizeof(unsigned int)); } diff --git a/direct/timothy_tests/threading/test_a.c b/direct/timothy_tests/threading/test_a.c index 391530c..5e1af54 100644 --- a/direct/timothy_tests/threading/test_a.c +++ b/direct/timothy_tests/threading/test_a.c @@ -26,7 +26,7 @@ void test_a(void *x) int pos; int n; int n1; - + struct yaffs_stat stat_buffer; char name[200]; char name1[200]; @@ -90,9 +90,133 @@ void test_a(void *x) yaffs_rmdir(name); return; } + op-=1; + if(op < 0){ + yaffs_rmdir(name); + return; + } + op -=1; + if(op < 0){ + if(bc->h[i]>= 0){ + yaffs_fsync(bc->h[i]); + return; + } + } + op -=1; + if(op < 0){ + if(bc->h[i]>= 0){ + yaffs_fdatasync(bc->h[i]); + return; + } + } + op -=1; + if(op < 0){ + if(bc->h[i]>= 0){ + yaffs_flush(bc->h[i]); + return; + } + } - bc->opMax = (start_op - op -1); - + op -=1; + if(op < 0){ + if((bc->h[i]>= 0) && (bc->h[i+1] < 0)){ + bc->h[i+1]=yaffs_dup(bc->h[i]); + return; + } + } + op -=1; + if(op < 0){ + if(bc->h[i]>= 0){ + yaffs_ftruncate(bc->h[i],n); + return; + } + } + + op -=1; + if(op < 0){ + if(bc->h[i]>= 0){ + yaffs_fstat(bc->h[i],&stat_buffer); + yaffs_fchmod(bc->h[i], n); + yaffs_fchmod(bc->h[i], ((S_IREAD|S_IWRITE)&(stat_buffer.st_mode))); + } + } + op -=1; + if(op < 0){ + if(bc->h[i]>= 0){ + yaffs_stat(name,&stat_buffer); + yaffs_chmod(name, n); + yaffs_chmod(name, ((S_IREAD|S_IWRITE)&(stat_buffer.st_mode))); + } + } + op -=1; + if(op < 0){ + if(bc->h[i]>= 0){ + yaffs_lstat(name,&stat_buffer); + } + } + op -=1; + if(op < 0){ + if(bc->h[i]>= 0){ + yaffs_read(bc->h[i],name,n); + return; + } + } + op -=1; + if(op < 0){ + if(bc->h[i]>= 0){ + yaffs_pread(bc->h[i],name,n,n1); + return; + } + } + op -=1; + if(op < 0){ + if(bc->h[i]>= 0){ + yaffs_write(bc->h[i],name,n); + return; + } + } + op -=1; + if(op < 0){ + if(bc->h[i]>= 0){ + yaffs_pwrite(bc->h[i],name,n,n1); + return; + } + } + op -=1; + if(op < 0){ + if(bc->h[i]>= 0){ + yaffs_truncate(name,n); + return; + } + } + op -=1; + if(op < 0){ + if(bc->h[i]>= 0){ + yaffs_access(name,n); + return; + } + } + op -=1; + if(op < 0){ + if(bc->h[i]>= 0){ + yaffs_symlink(name,name1); + return; + } + } + op -=1; + if(op < 0){ + if(bc->h[i]>= 0){ + yaffs_link(name,name1); + return; + } + } + op -=1; + if(op < 0){ + if(bc->h[i]>= 0){ + yaffs_unlink(name); + return; + } + } return; } |