aboutsummaryrefslogtreecommitdiff
path: root/tests/fs-tests/integrity/integck.c
diff options
context:
space:
mode:
Diffstat (limited to 'tests/fs-tests/integrity/integck.c')
-rw-r--r--tests/fs-tests/integrity/integck.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/tests/fs-tests/integrity/integck.c b/tests/fs-tests/integrity/integck.c
index ac72c5b..9b98ef0 100644
--- a/tests/fs-tests/integrity/integck.c
+++ b/tests/fs-tests/integrity/integck.c
@@ -156,6 +156,7 @@ struct file_info /* Each file has one of these */
int link_count;
unsigned int check_run_no; /* Run number used when checking */
unsigned int no_space_error:1; /* File has incurred a ENOSPC error */
+ unsigned int clean:1; /* Non-zero if the file is synchronized */
};
struct symlink_info /* Each symlink has one of these */
@@ -1192,6 +1193,8 @@ static int file_write(struct file_info *file, int fd)
{
int ret;
+ file->clean = 0;
+
if (!args.power_cut_mode && fsinfo.can_mmap && !full &&
file->link_count && random_no(100) == 1) {
/*
@@ -1260,6 +1263,7 @@ static int file_write(struct file_info *file, int fd)
pcv("fdatasync failed for %s",
file->links->name);
}
+ file->clean = 1;
}
return 0;
@@ -1295,7 +1299,7 @@ static int file_truncate(struct file_info *file, int fd)
int ret;
size_t new_length = random_no(file->length);
-
+ file->clean = 0;
ret = file_ftruncate(file, fd, new_length);
if (ret == -1)
return -1;