qemu/block
Max Reitz 82b45e0a0b block/file-posix: Fix fully preallocated truncate
Storing the lseek() result in an int results in it overflowing when the
file is at least 2 GB big.  Then, we have a 50 % chance of the result
being "negative" and thus thinking an error occurred when actually
everything went just fine.

So we should use the correct type for storing the result: off_t.

Reported-by: Daniel P. Berrange <berrange@redhat.com>
Buglink: https://bugzilla.redhat.com/show_bug.cgi?id=1549231
Cc: qemu-stable@nongnu.org
Signed-off-by: Max Reitz <mreitz@redhat.com>
Message-id: 20180228131315.30194-2-mreitz@redhat.com
Reviewed-by: Eric Blake <eblake@redhat.com>
Signed-off-by: Max Reitz <mreitz@redhat.com>
2018-04-03 17:39:37 +02:00
..
accounting.c block/accounting: introduce latency histogram 2018-03-19 14:58:37 -05:00
backup.c blockjobs: ensure abort is called for cancelled jobs 2018-03-19 12:01:24 +01:00
blkdebug.c block: Switch passthrough drivers to .bdrv_co_block_status() 2018-03-02 18:39:07 +01:00
blkreplay.c block/blkreplay: Remove protocol-related fields 2018-03-26 12:16:00 +02:00
blkverify.c Move include qemu/option.h from qemu-common.h to actual users 2018-02-09 13:52:16 +01:00
block-backend.c block: let blk_add/remove_aio_context_notifier() tolerate BDS changes 2018-03-13 15:38:55 -05:00
bochs.c block: Deprecate bdrv_set_read_only() and users 2017-11-17 13:35:59 +01:00
cloop.c block: Deprecate bdrv_set_read_only() and users 2017-11-17 13:35:59 +01:00
commit.c blockjobs: model single jobs as transactions 2018-03-19 12:01:24 +01:00
create.c block: x-blockdev-create QMP command 2018-03-09 15:17:47 +01:00
crypto.c luks: Turn another invalid assertion into check 2018-03-26 12:17:40 +02:00
crypto.h qcow: convert QCow to use QCryptoBlock for encryption 2017-07-11 17:44:56 +02:00
curl.c Move include qemu/option.h from qemu-common.h to actual users 2018-02-09 13:52:16 +01:00
dirty-bitmap.c dirty-bitmap: add locked state 2018-03-13 17:05:00 -04:00
dmg-bz2.c dmg: Move libbz2 code to dmg-bz2.so 2016-10-07 14:14:06 +02:00
dmg.c block: Deprecate bdrv_set_read_only() and users 2017-11-17 13:35:59 +01:00
dmg.h block: remove "qemu/osdep.h" from header file 2017-12-18 17:07:02 +03:00
file-posix.c block/file-posix: Fix fully preallocated truncate 2018-04-03 17:39:37 +02:00
file-win32.c file-win32: Support .bdrv_co_create 2018-03-09 15:17:47 +01:00
gluster.c gluster: Fix blockdev-add with server.N.type=unix 2018-04-03 15:20:36 +02:00
io.c coroutine: avoid co_queue_wakeup recursion 2018-03-27 13:05:28 +01:00
iscsi-opts.c Move include qemu/option.h from qemu-common.h to actual users 2018-02-09 13:52:16 +01:00
iscsi.c iscsi: fix iSER compilation 2018-03-19 12:01:39 +01:00
linux-aio.c block: explicitly acquire aiocontext in aio callbacks that need it 2017-02-21 11:39:39 +00:00
Makefile.objs block: x-blockdev-create QMP command 2018-03-09 15:17:47 +01:00
mirror.c block/mirror: change the semantic of 'force' of block-job-cancel 2018-03-19 12:01:39 +01:00
nbd-client.c nbd: BLOCK_STATUS for standard get_block_status function: client part 2018-03-13 15:43:48 -05:00
nbd-client.h nbd: BLOCK_STATUS for standard get_block_status function: client part 2018-03-13 15:43:48 -05:00
nbd.c nbd: BLOCK_STATUS for standard get_block_status function: client part 2018-03-13 15:43:48 -05:00
nfs.c nfs: Support .bdrv_co_create 2018-03-09 15:17:47 +01:00
null.c null: Switch to .bdrv_co_block_status() 2018-03-02 18:39:07 +01:00
nvme.c qdict: remove useless cast 2018-03-27 10:17:32 -05:00
parallels.c parallels: Check maximum cluster size on create 2018-03-26 12:17:43 +02:00
parallels.h Clean up includes 2018-02-09 05:05:11 +01:00
qapi.c qapi: add block latency histogram interface 2018-03-19 14:58:38 -05:00
qcow2-bitmap.c qcow2-bitmap: add qcow2_reopen_bitmaps_rw_hint() 2018-03-26 21:17:24 +02:00
qcow2-cache.c qcow2: Allow configuring the L2 slice size 2018-02-13 17:00:00 +01:00
qcow2-cluster.c qcow2: Check L1 table parameters in qcow2_expand_zero_clusters() 2018-03-09 15:17:47 +01:00
qcow2-refcount.c qcow2: Reset free_cluster_index when allocating a new refcount block 2018-03-26 12:16:00 +02:00
qcow2-snapshot.c qcow2: Check snapshot L1 table in qcow2_snapshot_delete() 2018-03-09 15:17:47 +01:00
qcow2.c qcow2: fix bitmaps loading when bitmaps already exist 2018-03-26 21:17:24 +02:00
qcow2.h qcow2-bitmap: add qcow2_reopen_bitmaps_rw_hint() 2018-03-26 21:17:24 +02:00
qcow.c qapi: Replace qobject_to_X(o) by qobject_to(X, o) 2018-03-19 14:58:36 -05:00
qed-check.c block: convert bdrv_check callback to coroutine_fn 2018-03-09 15:17:47 +01:00
qed-cluster.c qed: protect table cache with CoMutex 2017-07-17 11:34:11 +08:00
qed-l2-cache.c qed: protect table cache with CoMutex 2017-07-17 11:34:11 +08:00
qed-table.c block: convert bdrv_check callback to coroutine_fn 2018-03-09 15:17:47 +01:00
qed.c qapi: Replace qobject_to_X(o) by qobject_to(X, o) 2018-03-19 14:58:36 -05:00
qed.h qed: protect table cache with CoMutex 2017-07-17 11:34:11 +08:00
quorum.c block/quorum: Remove protocol-related fields 2018-03-26 12:16:00 +02:00
raw-format.c block: rename .bdrv_create() to .bdrv_co_create_opts() 2018-03-02 18:39:07 +01:00
rbd.c qapi: Replace qobject_to_X(o) by qobject_to(X, o) 2018-03-19 14:58:36 -05:00
replication.c block/replication: Remove protocol_name field 2018-03-26 12:16:00 +02:00
sheepdog.c qapi: Replace qobject_to_X(o) by qobject_to(X, o) 2018-03-19 14:58:36 -05:00
snapshot.c Move include qemu/option.h from qemu-common.h to actual users 2018-02-09 13:52:16 +01:00
ssh.c ssh: Support .bdrv_co_create 2018-03-09 15:17:48 +01:00
stream.c blockjobs: model single jobs as transactions 2018-03-19 12:01:24 +01:00
throttle-groups.c Include less of the generated modular QAPI headers 2018-03-02 13:45:50 -06:00
throttle.c block/throttle: Remove protocol-related fields 2018-03-26 12:16:00 +02:00
trace-events blockjobs: add block-job-finalize 2018-03-19 12:01:24 +01:00
vdi.c vdi: Fix build with CONFIG_VDI_DEBUG 2018-03-26 12:16:12 +02:00
vhdx-endian.c vhdx: Use QEMU UUID API 2016-09-23 11:42:52 +08:00
vhdx-log.c vhdx: use QEMU_ALIGN_DOWN 2017-08-31 12:29:07 +02:00
vhdx.c vhdx: Check for 4 GB maximum log size on creation 2018-03-26 12:17:43 +02:00
vhdx.h block: vhdx - update PAYLOAD_BLOCK_UNMAPPED value to match 1.00 spec 2014-12-12 15:42:22 +00:00
vmdk.c vmdk: return ERROR when cluster sector is larger than vmdk limitation 2018-03-26 21:17:24 +02:00
vpc.c qapi: Replace qobject_to_X(o) by qobject_to(X, o) 2018-03-19 14:58:36 -05:00
vvfat.c vvfat: Fix inherit_options flags 2018-03-19 12:01:39 +01:00
vxhs.c qobject: Use simpler QDict/QList scalar insertion macros 2017-05-09 09:13:51 +02:00
win32-aio.c block: explicitly acquire aiocontext in aio callbacks that need it 2017-02-21 11:39:39 +00:00
write-threshold.c Include less of the generated modular QAPI headers 2018-03-02 13:45:50 -06:00