]> git.proxmox.com Git - mirror_qemu.git/commitdiff
file-posix: Handle EINTR in preallocation=full write
authorFam Zheng <famz@redhat.com>
Fri, 27 Jul 2018 06:53:14 +0000 (14:53 +0800)
committerKevin Wolf <kwolf@redhat.com>
Mon, 30 Jul 2018 13:35:37 +0000 (15:35 +0200)
Cc: qemu-stable@nongnu.org
Signed-off-by: Fam Zheng <famz@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
block/file-posix.c

index ad299beb38b62d8194aa30cdf6fc443aa1efaaca..928b863cedd952e2381e51f309e01b1d8a194f7b 100644 (file)
@@ -1646,6 +1646,9 @@ static int handle_aiocb_truncate(RawPosixAIOData *aiocb)
             num = MIN(left, 65536);
             result = write(fd, buf, num);
             if (result < 0) {
+                if (errno == EINTR) {
+                    continue;
+                }
                 result = -errno;
                 error_setg_errno(errp, -result,
                                  "Could not write zeros for preallocation");