qemu-e2k/block
Hu Tao c2eb918e32 block: round up file size to nearest sector
Currently the file size requested by user is rounded down to nearest
sector, causing the actual file size could be a bit less than the size
user requested. Since some formats (like qcow2) record virtual disk
size in bytes, this can make the last few bytes cannot be accessed.

This patch fixes it by rounding up file size to nearest sector so that
the actual file size is no less than the requested file size.

Signed-off-by: Hu Tao <hutao@cn.fujitsu.com>
Reviewed-by: Kevin Wolf <kwolf@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
Reviewed-by: Max Reitz <mreitz@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
2014-09-12 15:43:06 +02:00
..
Makefile.objs block: Extract the block accounting code 2014-09-10 10:41:29 +02:00
accounting.c block: Make the block accounting functions operate on BlockAcctStats 2014-09-10 10:41:29 +02:00
archipelago.c block: round up file size to nearest sector 2014-09-12 15:43:06 +02:00
backup.c block/backup: Fix hang for unaligned image size 2014-07-09 15:50:11 +02:00
blkdebug.c blkdebug: Delete BH in bdrv_aio_cancel 2014-08-22 11:07:00 +02:00
blkverify.c blkverify: Fix leak of opts in blkverify_open 2014-08-29 17:10:18 +01:00
bochs.c block: Use g_new() & friends to avoid multiplying sizes 2014-08-20 11:51:28 +02:00
cloop.c cloop: Handle failure for potentially large allocations 2014-08-15 15:07:15 +02:00
commit.c block: extend block-commit to accept a string for the backing file 2014-07-01 10:47:01 +02:00
cow.c block: round up file size to nearest sector 2014-09-12 15:43:06 +02:00
curl.c curl: The macro that you have to uncomment to get debugging is DEBUG_CURL. 2014-09-02 22:38:16 +04:00
dmg.c dmg: Handle failure for potentially large allocations 2014-08-15 15:07:15 +02:00
gluster.c block: round up file size to nearest sector 2014-09-12 15:43:06 +02:00
iscsi.c block: round up file size to nearest sector 2014-09-12 15:43:06 +02:00
linux-aio.c linux-aio: avoid deadlock in nested aio_poll() calls 2014-08-29 15:59:17 +01:00
mirror.c mirror: fix uninitialized variable delay_ns warnings 2014-08-28 13:42:25 +01:00
nbd-client.c nbd: implement .bdrv_detach/attach_aio_context() 2014-06-04 09:56:11 +02:00
nbd-client.h nbd: implement .bdrv_detach/attach_aio_context() 2014-06-04 09:56:11 +02:00
nbd.c nbd: Implement bdrv_refresh_filename() 2014-08-20 14:31:56 +02:00
nfs.c block: round up file size to nearest sector 2014-09-12 15:43:06 +02:00
parallels.c block: Use g_new() & friends to avoid multiplying sizes 2014-08-20 11:51:28 +02:00
qapi.c block: rename BlockAcctType members to start with BLOCK_ instead of BDRV_ 2014-09-10 10:41:29 +02:00
qcow.c block: round up file size to nearest sector 2014-09-12 15:43:06 +02:00
qcow2-cache.c qcow2: Use g_try_new0() for cache array 2014-08-20 11:51:28 +02:00
qcow2-cluster.c block: Use g_new() & friends where that makes obvious sense 2014-08-20 11:51:28 +02:00
qcow2-refcount.c block: Use g_new() & friends where that makes obvious sense 2014-08-20 11:51:28 +02:00
qcow2-snapshot.c block: Use g_new() & friends where that makes obvious sense 2014-08-20 11:51:28 +02:00
qcow2.c block: round up file size to nearest sector 2014-09-12 15:43:06 +02:00
qcow2.h qcow2: Add runtime options for cache sizes 2014-08-20 11:51:28 +02:00
qed-check.c block: Use g_new() & friends to avoid multiplying sizes 2014-08-20 11:51:28 +02:00
qed-cluster.c Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
qed-gencb.c Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
qed-l2-cache.c qed: do not evict in-use L2 table cache entries 2012-03-12 15:14:06 +01:00
qed-table.c qed: use BlockDriverState's AioContext 2014-06-04 09:56:11 +02:00
qed.c block: round up file size to nearest sector 2014-09-12 15:43:06 +02:00
qed.h qed: Make qiov match request size until backing file EOF 2014-07-14 12:03:20 +02:00
quorum.c quorum: Fix leak of opts in quorum_open 2014-08-29 17:10:18 +01:00
raw-aio.h linux-aio: implement io plug, unplug and flush io queue 2014-07-07 11:05:17 +02:00
raw-posix.c block: round up file size to nearest sector 2014-09-12 15:43:06 +02:00
raw-win32.c block: round up file size to nearest sector 2014-09-12 15:43:06 +02:00
raw_bsd.c block: Add Error argument to bdrv_refresh_limits() 2014-07-18 13:18:43 +01:00
rbd.c block: round up file size to nearest sector 2014-09-12 15:43:06 +02:00
sheepdog.c block: round up file size to nearest sector 2014-09-12 15:43:06 +02:00
snapshot.c Use error_is_set() only when necessary 2014-02-17 11:57:23 -05:00
ssh.c block: round up file size to nearest sector 2014-09-12 15:43:06 +02:00
stream.c block: Add Error argument to bdrv_refresh_limits() 2014-07-18 13:18:43 +01:00
vdi.c block: round up file size to nearest sector 2014-09-12 15:43:06 +02:00
vhdx-endian.c block: VHDX endian fixes 2014-08-15 15:07:14 +02:00
vhdx-log.c block: Drop some superfluous casts from void * 2014-08-20 11:51:28 +02:00
vhdx.c block: round up file size to nearest sector 2014-09-12 15:43:06 +02:00
vhdx.h block: VHDX endian fixes 2014-08-15 15:07:14 +02:00
vmdk.c block: round up file size to nearest sector 2014-09-12 15:43:06 +02:00
vpc.c block: round up file size to nearest sector 2014-09-12 15:43:06 +02:00
vvfat.c block/vvfat.c: remove debugging code to reinit stderr if NULL 2014-08-21 10:36:29 +02:00
win32-aio.c raw-win32: Handle failure for potentially large allocations 2014-08-15 15:07:16 +02:00