Commit c6ccc2c5 authored by Nir Soffer's avatar Nir Soffer Committed by Kevin Wolf
Browse files

qemu-img: Improve documentation for PREALLOC_MODE_FALLOC



Now that we are truncating the file in both PREALLOC_MODE_FULL and
PREALLOC_MODE_OFF, not truncating in PREALLOC_MODE_FALLOC looks odd.
Add a comment explaining why we do not truncate in this case.

Signed-off-by: default avatarNir Soffer <nirsof@gmail.com>
Signed-off-by: default avatarKevin Wolf <kwolf@redhat.com>
parent 5a1dad9d
Loading
Loading
Loading
Loading
+6 −1
Original line number Diff line number Diff line
@@ -1594,9 +1594,14 @@ static int raw_create(const char *filename, QemuOpts *opts, Error **errp)
    switch (prealloc) {
#ifdef CONFIG_POSIX_FALLOCATE
    case PREALLOC_MODE_FALLOC:
        /* posix_fallocate() doesn't set errno. */
        /*
         * Truncating before posix_fallocate() makes it about twice slower on
         * file systems that do not support fallocate(), trying to check if a
         * block is allocated before allocating it, so don't do that here.
         */
        result = -posix_fallocate(fd, 0, total_size);
        if (result != 0) {
            /* posix_fallocate() doesn't set errno. */
            error_setg_errno(errp, -result,
                             "Could not preallocate data for the new file");
        }