aboutsummaryrefslogtreecommitdiff
path: root/tests/fs-tests/integrity/integck.c
AgeCommit message (Collapse)Author
2011-04-18fs-tests: integck: do not use tests_random_noArtem Bityutskiy
Do not use the shared 'tests_random_no()' function but use our own simple implementation instead. We do not need those rather complex and difficult to understand computations. Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
2011-04-18fs-tests: integck: do not use global common variablesArtem Bityutskiy
Do not use the 'tests_file_system_mount_dir' and 'tests_file_system_type' variables because we do not depend on them any longer. Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
2011-04-18fs-tests: integck: do not use tests_get_total_spaceArtem Bityutskiy
Do not use the common tests_get_total_space but extend our own get_free_space function and make it return both free and total amount of space. Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
2011-04-18fs-tests: integck: do not use tests_remountArtem Bityutskiy
Implement our own version of 'tests_remount()' instead of depending on the common implementation. Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
2011-04-18fs-tests: integck: do not use tests_fs_is_rootfsArtem Bityutskiy
Do not use the shared 'tests_fs_is_rootfs()' function - introduce 'fsinfo.is_rootfs' flag and utilize it instead. This is another step forward the goal to make integck independent of the common code. Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
2011-04-18fs-tests: integck: prefer to check for successArtem Bityutskiy
Many of standard C libraries return 0 on success and -1 on failure. Currently integck mostly checks for failure by comparing with -1, like: CHECK(fsync(fd) != -1) /* Don't die if not failure */ but in some places the check is like CHECK(fsync(fd) == 0) /* Don't die if success */ This patch harmonizes this an makes integck to use the second style which seems to be more logical. Besides, the binary is smaller in this case: [dedekind@eru fs-tests (master)]$ size integrity/integck-old text data bss dec hex filename 44677 1200 37408 83285 14555 integrity/integck [dedekind@eru fs-tests (master)]$ size integrity/integck-new text data bss dec hex filename 44661 1200 37408 83269 14545 integrity/integck Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
2011-04-18fs-tests: integck: do not use space after castArtem Bityutskiy
Since we are kernel people lets use the style we are accustomed to - no space between the cast and the variable: (type)a, not (type) a. Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
2011-04-18fs-tests: integck: do not use tests_clear_dirArtem Bityutskiy
Do not use shared 'tests_clear_dir()' function which removes a directory tree recursively, but instead use own implementation. This is because I'm trying to make integck independend on the shared code because I need this to do further improvements. Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
2011-04-18fs-tests: integck: clean up test directory creationArtem Bityutskiy
Move the test directory name to the fsinfo structure and do few other cleanups while on it. Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
2011-04-18fs-tests: integck: do not use tests_cat_pidArtem Bityutskiy
Do not use the shared 'tests_cat_pid' function but use a simple sprintf instead. This is another step to make integck independent of the common code. Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
2011-04-18fs-tests: integck: remove trailing backslashes from mount pointArtem Bityutskiy
The test is not working if the user specified mount point with a trailing back-slash at the end. Note, this had not worked before my changes as well. Fix this. Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
2011-04-18fs-tests: integck: move log10_initial_free to fsinfoArtem Bityutskiy
Similarly to the previous patches, move the log10_initial_free variable to the fsinfo data structure. Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
2011-04-18fs-tests: integck: add own get_free_space functionArtem Bityutskiy
Do not use the shared 'tests_get_free_space' function but use own implementation instead. This is another step to make integck independent on the common infrastructure. Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
2011-04-18fs-tests: integck: move more variables to fsinfoArtem Bityutskiy
Aggregate all the information about the tested file-system in the fsinf object for better readability and cleanness. Move 'can_mmap' and 'check_nospc_files' there as well. Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
2011-04-18fs-tests: integck: move mem_page_size to fsinfoArtem Bityutskiy
The fsinfo structure will aggregate all the information about the tested file-system. Move 'mem_page_size' which we use for 'mmap()' there as well. Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
2011-04-18fs-tests: integck: make integck function return errorArtem Bityutskiy
Turn the 'void integck(void)' function into 'static int integck(void)'. We need to teach the test to gracefully handle some error cases like 'EROFS' instead of failing and exiting straight away. And the ground work for this is making all functions return errors. This is the first tiny step in this direction. Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
2011-04-18fs-tests: integck: get rid of tests_check_test_file_systemArtem Bityutskiy
Stop using the shared 'tests_check_test_file_system()' function but instead, use own independed version of this function. This is another step forward the goal to make integck independent of the common shared code. Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
2011-04-18fs-tests: integck: clean-up copy_stringArtem Bityutskiy
This is a clean-up patch which: 1. Simplifies copy_string by useng strdup instead of malloc 2. Adds an assertion which checks the input parameter agains NULL, instead of checking it. 3. Re-names it to dup_string which looks more readable to me. Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
2011-04-18fs-tests: integck: implement own parameters parsingArtem Bityutskiy
Instead of using shared command line arguments parsing routine implement own. The reason is that I want to add more parameters, which are integck-specific. Also, longer-term plan is to make integck independent of the common tests.c file. Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
2011-04-18fs-tests: integck: change tests defaultsArtem Bityutskiy
Currently integck assumes that by default the file-system cannot do shared writable mmap-ing and does not preserve accurate file size after ENOSPC errors. And then it overrides these default settings if this is UBIFS. But it seems that only JFFS2 has those limitations. So make the defaults to be the opposite and override them for JFFS2 only. Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
2011-04-18fs-tests: integck: shrink write_info even moreArtem Bityutskiy
The 'struct write_info' data strucutre records information about truncation, and has a separate integer field to specify if this is a truncation or not. But it is too wasteful because we have huge amount of these objects. But it is easy to notice that the 'random_seed' field is not used for truncation records, so we can use that as the truncation flag. This patch introduces MAX_RANDOM_SEED macro and when the 'random_seed' field is greater than that, we treat it as the truncation flag. Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
2011-04-18fs-tests: integck: abuse random_offset field nicerArtem Bityutskiy
Currently integck uses the 'random_offset' filed to store the new file length sometimes, thus abusing this field. But we can do this nicer - introduce an anonymous union and add 'new_length' filed which will be used instead of 'random_offset' to make the code look nicer. Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
2011-04-18fs-tests: integck: srink file_info structure even moreArtem Bityutskiy
The 'check_run_no' field does not have to be 64-bit, it can be 32-bit instead and we can save 4 bytes per object. Actually, it could also be 16-bit, and we could make link_count 16-bit as well, but that would need a bit more work. Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
2011-04-18fs-tests: integck: shrink file_info structure sizeArtem Bityutskiy
We do not have to store boolean flags in 'int' variables which consume 4 bytes each, we can store those in bit-fields instead. Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
2011-04-18fs-tests: integck: shrink dir_entry_info structure sizeArtem Bityutskiy
Turn "int checked" flag into 'char' flag to lessen memory consumption a bit. Indeed, the test allocates a lot of these data objects, so the size decrease from 36 to 32 bytes on 32-bit platforms is good to have. Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
2011-04-11fs-tests: integck: use common printing macrosArtem Bityutskiy
Instead of using printf() directly, use the shared mtd-utils printing macros. Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
2011-04-11fs-tests: integck: include the common mtd-utils headerArtem Bityutskiy
Include the commong mtd-utils "common.h" header in integck test to make it possible to use shared macros. Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
2011-04-11fs-tests: integck: remove unnecessary checkArtem Bityutskiy
The 'link_new()' function has only one user, and the user checks that the third 'file' argument is non NULL, so remove this check from 'link_new()'. Let's be consistent and assume the 3rd argument is never NULL, just like the first and the second ones. This is just a minor improvement. Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
2011-04-11fs-tests: integck: simplify dir_entry_info fieldsArtem Bityutskiy
Instead of using named union 'entry' in 'struct dir_entry_info' and having to type long 'entry->entry.file', 'entry->entry.symlink', etc, use anonymous union which makes the syntax simpler: 'entry->file', 'entry->symlink', etc. Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
2011-04-11fs-tests: integck: do not cast void pointersArtem Bityutskiy
The malloc function returns 'void *', so it is not necessary to cast it when assigning. This is just a small clean-up patch. Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
2011-04-11fs-tests: integck: introduce zallocArtem Bityutskiy
The integck test often allocates memory and fills it with zeroes. Introduce a helper function for this frequent operation. This is just a clean-up patch which makes the code 23 lines shorter. Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
2008-08-13fs-tests: allow for symlink name too long in integrity testAdrian Hunter
Signed-off-by: Adrian Hunter <ext-adrian.hunter@nokia.com> Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
2008-08-13fs-tests: fix max file name length in integrity testAdrian Hunter
Signed-off-by: Adrian Hunter <ext-adrian.hunter@nokia.com> Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
2008-08-13fs-tests: fix symlink bug in integrity testAdrian Hunter
Signed-off-by: Adrian Hunter <ext-adrian.hunter@nokia.com> Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
2008-06-17fs-tests: fix rename bug in integrity testAdrian Hunter
Signed-off-by: Adrian Hunter <ext-adrian.hunter@nokia.com>
2008-06-16fs-tests: add symlinks to integrity testAdrian Hunter
Signed-off-by: Adrian Hunter <ext-adrian.hunter@nokia.com>
2008-06-16fs-tests: check link count in integrity testAdrian Hunter
Signed-off-by: Adrian Hunter <ext-adrian.hunter@nokia.com>
2008-06-16fs-tests: add rename to integrity testAdrian Hunter
Signed-off-by: Adrian Hunter <ext-adrian.hunter@nokia.com>
2008-06-16fs-tests: add linking/unlinking to integrity testAdrian Hunter
Signed-off-by: Adrian Hunter <ext-adrian.hunter@nokia.com>
2008-06-16fs-tests: make integrity test shrink fasterAdrian Hunter
Signed-off-by: Adrian Hunter <ext-adrian.hunter@nokia.com>
2008-06-16fs-tests: add mmapping to integrity test for ubifsAdrian Hunter
Signed-off-by: Adrian Hunter <ext-adrian.hunter@nokia.com>
2008-06-16fs-tests: stop integrity test looping foreverAdrian Hunter
Signed-off-by: Adrian Hunter <ext-adrian.hunter@nokia.com>
2008-06-16fs-tests: fix bug in integrity testAdrian Hunter
Signed-off-by: Adrian Hunter <ext-adrian.hunter@nokia.com>
2008-06-16fs-tests: make integrity test record truncationsAdrian Hunter
Signed-off-by: Adrian Hunter <ext-adrian.hunter@nokia.com>
2008-06-16fs-tests: make integrity test shrink betterAdrian Hunter
Signed-off-by: Adrian Hunter <ext-adrian.hunter@nokia.com>
2007-07-18Add more information to integrity test error messageAdrian Hunter
When the integrity test encounters a file that does not contain the expected data, it lists the data that it expected to find in terms of writes to the file. Now the test also displays a list of "raw" writes that includes writes that have been truncated away, or completely overwritten by other writes. The test also now displays the pid because it is used as the initial random seed. Signed-off-by: Adrian Hunter <ext-adrian.hunter@nokia.com>
2007-07-18Correct integrity test calculations of free spaceAdrian Hunter
Signed-off-by: Adrian Hunter <ext-adrian.hunter@nokia.com>
2007-03-15Add fs-tests from Adrian HunterAdrian Hunter
Signed-off-by: Adrian Hunter <ext-adrian.hunter@nokia.com> Signed-off-by: Josh Boyer <jwboyer@gmail.com>