This patch series modifies fssum to be able to verify POSIX fsync/fdatasync guarantees. In particular, it allows single files/symlinks to be passed as input, which allows us to verify an fsync on a single file without checking the entire directory. It also adds an option for non-recursive directory traversal, which is useful because POSIX fsync doesn't guarantee that all subdirectories are synced. Finally, it adds a flag that allows file size to be ignored (currently enabled by default). This is useful because POSIX fsync of a directory doesn't guarantee that the data in the children is persisted. These changes will be followed up with several Crashmonkey [1] tests which make use of these changes. [1] https://github.com/utsaslab/crashmonkey Arvind Raghavan (6): src/fssum: Make sum_file_data global src/fssum: Refactor recursive traversal src/fssum: Add flag -R for non-recursive mode src/fssum: Add a flag for including file size in checksum src/fssum: Allow single file input src/fssum: Fix whitespace in usage src/fssum.c | 364 ++++++++++++++++++++++++++++++---------------------- 1 file changed, 213 insertions(+), 151 deletions(-) -- 2.20.1