diff options
Diffstat (limited to 'tests/fs-tests/integrity')
-rw-r--r-- | tests/fs-tests/integrity/integck.c | 29 |
1 files changed, 28 insertions, 1 deletions
diff --git a/tests/fs-tests/integrity/integck.c b/tests/fs-tests/integrity/integck.c index 62123d5..753a317 100644 --- a/tests/fs-tests/integrity/integck.c +++ b/tests/fs-tests/integrity/integck.c @@ -48,7 +48,9 @@ struct file_info /* Each file has one of these */ { char *name; struct dir_info *parent; /* Parent directory */ - struct write_info *writes; /* Record all writes to the file */ + struct write_info *writes; /* Record accumulated writes to the file */ + struct write_info *raw_writes; + /* Record in order all writes to the file */ struct fd_info *fds; /* All open file descriptors for this file */ off_t length; int deleted; /* File has been deleted but is still open */ @@ -434,6 +436,21 @@ static void file_info_display(struct file_info *file) } fprintf(stderr, " %u writes\n", wcnt); fprintf(stderr, " ============================================\n"); + fprintf(stderr, " Raw Write Info:\n"); + wcnt = 0; + w = file->raw_writes; + while (w) { + fprintf(stderr, " Offset: %u Size: %u Seed: %u" + " R.Off: %u\n", + (unsigned) w->offset, + (unsigned) w->size, + (unsigned) w->random_seed, + (unsigned) w->random_offset); + wcnt += 1; + w = w->next; + } + fprintf(stderr, " %u writes\n", wcnt); + fprintf(stderr, " ============================================\n"); } static struct fd_info *file_open(struct file_info *file) @@ -510,6 +527,15 @@ static void file_write_info(struct file_info *file, new_write->size = size; new_write->random_seed = seed; + w = (struct write_info *) malloc(sz); + CHECK(w != NULL); + memset(w, 0, sz); + w->next = file->raw_writes; + w->offset = offset; + w->size = size; + w->random_seed = seed; + file->raw_writes = w; + /* Insert it into file->writes */ inserted = 0; end = offset + size; @@ -1300,6 +1326,7 @@ void integck(void) /* Make our top directory */ pid = getpid(); + printf("pid is %u\n", (unsigned) pid); tests_cat_pid(dir_name, "integck_test_dir_", pid); if (chdir(dir_name) != -1) { /* Remove it if it is already there */ |