diff options
author | Maxim Levitsky <mlevitsk@redhat.com> | 2020-11-11 17:39:12 +0200 |
---|---|---|
committer | Kevin Wolf <kwolf@redhat.com> | 2020-11-17 12:26:48 +0100 |
commit | ece4fa9152ea37c7ebd158af330e3b20e33cf385 (patch) | |
tree | 50456f1bf98d6281a3f166f188d61fec84b97ca2 /block | |
parent | 5aaabf9161c501142558f1837f6f90c94ee15081 (diff) |
file-posix: allow -EBUSY errors during write zeros on raw block devices
On Linux, fallocate(fd, FALLOC_FL_PUNCH_HOLE) when it is used on a block device,
without O_DIRECT can return -EBUSY if it races with another write to the same page.
Since this is rare and discard is not a critical operation, ignore this error
Signed-off-by: Maxim Levitsky <mlevitsk@redhat.com>
Message-Id: <20201111153913.41840-2-mlevitsk@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Diffstat (limited to 'block')
-rw-r--r-- | block/file-posix.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/block/file-posix.c b/block/file-posix.c index c63926d592..d5fd1dbcd2 100644 --- a/block/file-posix.c +++ b/block/file-posix.c @@ -1698,6 +1698,7 @@ static int handle_aiocb_write_zeroes_unmap(void *opaque) switch (ret) { case -ENOTSUP: case -EINVAL: + case -EBUSY: break; default: return ret; |