diff --git a/tests/zfs-tests/cmd/largest_file/largest_file.c b/tests/zfs-tests/cmd/largest_file/largest_file.c index 1cf7529f13ec..286232da5b19 100644 --- a/tests/zfs-tests/cmd/largest_file/largest_file.c +++ b/tests/zfs-tests/cmd/largest_file/largest_file.c @@ -64,7 +64,7 @@ main(int argc, char **argv) offset_t llseek_ret = 0; int write_ret = 0; int err = 0; - char mybuf[5]; + char mybuf[5] = "aaaa\0"; char *testfile; mode_t mode = S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH; @@ -78,30 +78,31 @@ main(int argc, char **argv) fd = open(testfile, O_CREAT | O_RDWR, mode); if (fd < 0) { - perror("Failed to create testfile"); err = errno; - goto out; + perror("Failed to create testfile"); + free(testfile); + return (err); } llseek_ret = lseek64(fd, offset, SEEK_SET); if (llseek_ret < 0) { - perror("Failed to seek to end of testfile"); err = errno; + perror("Failed to seek to end of testfile"); goto out; } write_ret = write(fd, mybuf, 1); if (write_ret < 0) { - perror("Failed to write to end of file"); err = errno; + perror("Failed to write to end of file"); goto out; } offset = 0; llseek_ret = lseek64(fd, offset, SEEK_CUR); if (llseek_ret < 0) { - perror("Failed to seek to end of file"); err = errno; + perror("Failed to seek to end of file"); goto out; } @@ -111,8 +112,8 @@ main(int argc, char **argv) (void) printf("write errno=EFBIG: success\n"); err = 0; } else { - perror("Did not receive EFBIG"); err = errno; + perror("Did not receive EFBIG"); } } else { (void) printf("write completed successfully, test failed\n"); @@ -122,6 +123,7 @@ main(int argc, char **argv) out: (void) unlink(testfile); free(testfile); + close(fd); return (err); } diff --git a/tests/zfs-tests/cmd/mmapwrite/mmapwrite.c b/tests/zfs-tests/cmd/mmapwrite/mmapwrite.c index 2eca124696e0..190d31af3aaa 100644 --- a/tests/zfs-tests/cmd/mmapwrite/mmapwrite.c +++ b/tests/zfs-tests/cmd/mmapwrite/mmapwrite.c @@ -28,6 +28,7 @@ #include #include #include +#include #include #include @@ -67,9 +68,11 @@ int main(int argc, char **argv) { int fd; - char buf[BUFSIZ]; + char buf[1024]; pthread_t tid; + memset(buf, 'a', sizeof (buf)); + if (argc != 2) { (void) printf("usage: %s \n", argv[0]); exit(1); @@ -83,15 +86,19 @@ main(int argc, char **argv) (void) pthread_setconcurrency(2); if (pthread_create(&tid, NULL, mapper, &fd) != 0) { perror("pthread_create"); + close(fd); exit(1); } for (;;) { if (write(fd, buf, sizeof (buf)) == -1) { perror("write"); + close(fd); exit(1); } } + close(fd); + /* NOTREACHED */ return (0); } diff --git a/tests/zfs-tests/cmd/randfree_file/randfree_file.c b/tests/zfs-tests/cmd/randfree_file/randfree_file.c index 05797448c90a..c708d647e8b9 100644 --- a/tests/zfs-tests/cmd/randfree_file/randfree_file.c +++ b/tests/zfs-tests/cmd/randfree_file/randfree_file.c @@ -32,6 +32,7 @@ #include #include #include +#include #include /* @@ -54,7 +55,7 @@ int main(int argc, char *argv[]) { char *filename = NULL; - char *buf; + char *buf = NULL; size_t filesize = 0; off_t start_off = 0; off_t off_len = 0; @@ -88,11 +89,18 @@ main(int argc, char *argv[]) return (1); } - buf = (char *)malloc(filesize); + buf = (char *)calloc(1, filesize); + if (buf == NULL) { + perror("write"); + close(fd); + return (1); + } + memset(buf, 'c', filesize); if (write(fd, buf, filesize) < filesize) { free(buf); perror("write"); + close(fd); return (1); } @@ -102,14 +110,16 @@ main(int argc, char *argv[]) if (fallocate(fd, FALLOC_FL_PUNCH_HOLE | FALLOC_FL_KEEP_SIZE, start_off, off_len) < 0) { perror("fallocate"); + close(fd); return (1); } #else /* !(defined(FALLOC_FL_PUNCH_HOLE) && defined(FALLOC_FL_KEEP_SIZE)) */ { perror("FALLOC_FL_PUNCH_HOLE unsupported"); + close(fd); return (1); } #endif /* defined(FALLOC_FL_PUNCH_HOLE) && defined(FALLOC_FL_KEEP_SIZE) */ - + close(fd); return (0); }