X-Git-Url: http://www.aleph1.co.uk/gitweb/?a=blobdiff_plain;f=direct%2Ftest-framework%2Fstress_tests%2Fthreading%2Ftest_b.c;fp=direct%2Ftest-framework%2Fstress_tests%2Fthreading%2Ftest_b.c;h=120d83c1bb344afb3802d7f47519afffe1292a44;hb=a51c8b53c1d11f7c4690243c9685a9b337f51127;hp=0000000000000000000000000000000000000000;hpb=566822213e306533d20b3ca38fcadd0d3d8a633f;p=yaffs2.git diff --git a/direct/test-framework/stress_tests/threading/test_b.c b/direct/test-framework/stress_tests/threading/test_b.c new file mode 100644 index 0000000..120d83c --- /dev/null +++ b/direct/test-framework/stress_tests/threading/test_b.c @@ -0,0 +1,38 @@ +/* + * YAFFS: Yet another FFS. A NAND-flash specific file system. + * + * Copyright (C) 2002-2018 Aleph One Ltd. + * + * Created by Timothy Manning + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + */ + +#include "test_b.h" + +void test_b(void *x) +{ + struct bovver_context *bc = (struct bovver_context *)x; + int n = rand() % 20; + + bc->cycle++; + + if(!bc->dirH) + bc->dirH = yaffs_opendir(bc->baseDir); + + if(!bc->dirH) + return; + + if(n == 0){ + yaffs_closedir(bc->dirH); + bc->dirH = NULL; + } else { + while(n > 1){ + n--; + yaffs_readdir(bc->dirH); + } + } +} +