diff options
author | Fam Zheng <famz@redhat.com> | 2018-07-27 14:53:14 +0800 |
---|---|---|
committer | Kevin Wolf <kwolf@redhat.com> | 2018-07-30 15:35:37 +0200 |
commit | a1c81f4f16a74d0d544f5d3ac405bcaad83541fd (patch) | |
tree | 47c62f3dfd5e4d4be71144b131f6ff92d860a85f /block | |
parent | 308999e9d46c7db062d314df98295a38e5732d01 (diff) | |
download | qemu-a1c81f4f16a74d0d544f5d3ac405bcaad83541fd.zip qemu-a1c81f4f16a74d0d544f5d3ac405bcaad83541fd.tar.gz qemu-a1c81f4f16a74d0d544f5d3ac405bcaad83541fd.tar.bz2 |
file-posix: Handle EINTR in preallocation=full write
Cc: qemu-stable@nongnu.org
Signed-off-by: Fam Zheng <famz@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Diffstat (limited to 'block')
-rw-r--r-- | block/file-posix.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/block/file-posix.c b/block/file-posix.c index ad299be..928b863 100644 --- a/block/file-posix.c +++ b/block/file-posix.c @@ -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"); |