From: Jeff Cody Date: Wed, 23 Mar 2016 03:33:40 +0000 (-0400) Subject: block/vpc: use current_size field for XenConverter VHD images X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=bab246db1dbb37fe55fb84c95ad086f550f443a5;p=qemu.git block/vpc: use current_size field for XenConverter VHD images XenConverter VHD images are another VHD image where current_size is different from the CHS values in the the format header. Use current_size as the default, by looking at the creator_app signature field. Signed-off-by: Jeff Cody Reviewed-by: Stefan Hajnoczi Signed-off-by: Kevin Wolf --- diff --git a/block/vpc.c b/block/vpc.c index 228f2c96e1..c9ebc4af30 100644 --- a/block/vpc.c +++ b/block/vpc.c @@ -300,6 +300,7 @@ static int vpc_open(BlockDriverState *bs, QDict *options, int flags, * 'win ' : current_size Hyper-V * 'd2v ' : current_size Disk2vhd * 'tap\0' : current_size XenServer + * 'CTXS' : current_size XenConverter * * The user can override the table values via drive options, however * even with an override we will still use current_size for images @@ -308,6 +309,7 @@ static int vpc_open(BlockDriverState *bs, QDict *options, int flags, use_chs = (!!strncmp(footer->creator_app, "win ", 4) && !!strncmp(footer->creator_app, "qem2", 4) && !!strncmp(footer->creator_app, "d2v ", 4) && + !!strncmp(footer->creator_app, "CTXS", 4) && !!memcmp(footer->creator_app, "tap", 4)) || s->force_use_chs; if (!use_chs || bs->total_sectors == VHD_MAX_GEOMETRY || s->force_use_sz) {