From nobody Sat May 4 08:56:01 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1506073287566809.1815802866328; Fri, 22 Sep 2017 02:41:27 -0700 (PDT) Received: from localhost ([::1]:57572 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dvKSX-0000pa-MQ for importer@patchew.org; Fri, 22 Sep 2017 05:41:21 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:39527) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dvKRH-00004v-DM for qemu-devel@nongnu.org; Fri, 22 Sep 2017 05:40:07 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dvKRG-0004NZ-GM for qemu-devel@nongnu.org; Fri, 22 Sep 2017 05:40:03 -0400 Received: from mail-eopbgr00133.outbound.protection.outlook.com ([40.107.0.133]:5029 helo=EUR02-AM5-obe.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1dvKRA-00047J-G4; Fri, 22 Sep 2017 05:39:56 -0400 Received: from pavelb-Z68P-DS3.sw.ru (195.214.232.6) by VI1PR0802MB2559.eurprd08.prod.outlook.com (2603:10a6:800:ae::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.77.7; Fri, 22 Sep 2017 09:39:53 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=virtuozzo.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=Z7CiFeD+nt7m9Z/0xBrm2zSlhqEP6ubfl7fOGSrl9SM=; b=VxGH0whL6dx9IkviSr5QFG8WY1DV4eArpVZsLbblnryXEk42PJs1MU4EmY0sit3/jgRd7RpV+muQDwBz+vXMpXSpSZGUz/khrW8du+gG/o3P534e3zLgWZw9zPT23o2atMBnF84gcsD5GdH66aYeJ/nqlm4a3gUcBR6HvBTWy+M= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=pbutsykin@virtuozzo.com; From: Pavel Butsykin To: qemu-block@nongnu.org, qemu-devel@nongnu.org Date: Fri, 22 Sep 2017 12:39:25 +0300 Message-Id: <20170922093926.9723-2-pbutsykin@virtuozzo.com> X-Mailer: git-send-email 2.14.1 In-Reply-To: <20170922093926.9723-1-pbutsykin@virtuozzo.com> References: <20170922093926.9723-1-pbutsykin@virtuozzo.com> MIME-Version: 1.0 X-Originating-IP: [195.214.232.6] X-ClientProxiedBy: HE1PR0401CA0046.eurprd04.prod.outlook.com (2603:10a6:3:19::14) To VI1PR0802MB2559.eurprd08.prod.outlook.com (2603:10a6:800:ae::9) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 3667a7e4-e181-4224-ae07-08d5019de165 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(300000500095)(300135000095)(300000501095)(300135300095)(22001)(300000502095)(300135100095)(2017030254152)(300000503095)(300135400095)(2017052603199)(201703131423075)(201703031133081)(201702281549075)(300000504095)(300135200095)(300000505095)(300135600095)(300000506095)(300135500095); SRVR:VI1PR0802MB2559; X-Microsoft-Exchange-Diagnostics: 1; VI1PR0802MB2559; 3:bkBtr1GIekAlp6lN/0Ghd3AEV3X2huHaWhquEOu+PxVWD2ui8A0pq0/DeSPleZVtomQVQ5Rcl5s0WTomA1pJvPsXu2xBObMTu2om1qETXZb9hz4Vf1XAV/HEdZc4k9Yx67wRrmS2EQuYsPy1BjN6pxo1k8QxRGETGvD0ukj77O/kIqaDKYOGdR3M00ImvVG1bqOa2yJqtD/qDirz99xHwPKGaMiLxMRFq9u9mUJiXuO1p4g4UUrP7iJqDFygD5cj; 25:qDbTuRvO/b0o75+y7InpUi4LFNcDgHPYjNC/qi+QXqGI6ccU3tgIxrabEHTuAENY3idFNJPDCB2DYGaJhIlj2fhJBkNVJGQx59zzB2ct2fR+PWNpE0xkwg2obf7lruhLtJwtqXaHcQsAmEJ4C4cKSK7IlOYKKxIkM4q3jKCmhX6UTIGF8RRZja4z3J1AnWqn00zJPa4kjq1rU6Yx+B37b8wucF/ORb0Pgvk6hXywuhdiFkOAJUTshAfrU+E97rcxStOmZQk+KoPjT1NgNHy9h6D/gKYFlMXznWxXQ3bGqs/MfD2Bnb9hM3gluFsQUNkAumB48lruCgpm9o6ynyUDuQ==; 31:HkcULUPZydrmGU0axny9qGbdwDLTpxtbM3SrBkfKKWZrP+vfJUjuZoKAaUTfR+opY/jJTI3WpZoEZJgFYieNqDECdAYOOcNI7+JGyPNe/f49SFsYitg+gYI5d8xlGW71tqQtu9ZUbbK+QtzDP1W3RKXJ9MCuMk1UP1etJQaeCTVVl4l5Zj078CYCil7cdmStC0qRxvWyrsW34lEYZOWt5pM7GHGaVwjtkI9Q8xPARPM= X-MS-TrafficTypeDiagnostic: VI1PR0802MB2559: X-Microsoft-Exchange-Diagnostics: 1; VI1PR0802MB2559; 20:SWYXXVdlS+YFGxHjNcM8foIhwANqol7FpqZoIgGEGEgNUxgrj+o8RjER1j3ob7o3fbwTixIghmH8QSLTVddMI7GklrTkKFQj/4pylrELwQYm/DCGv7pUKnB/O+9mU42Av7QvIWbDUS033robNFJ8zf2Wn7kZtMcozBWbKJbUZJ3jqALAXaT9pGaRK/GpMRhsiJru2b+ALPSkRKdYHpX6r4y8S4+uUrVl1i8xtahu6iHlpORiV0IfhUgVm0AG9rTTchOEdxtmVVij3mzO7BP7ckKzFHFWIdrpnghpaXqzwtAM92FeKdthE0wQhk3AI3AY/0Uf+gIb+RgFQiqt5jnelM4jUhDcD8MHaQwP3dnMXM6BJqcdD7DhWucWeALCXwO0t00D46/hvPtQfVT8mm4TCgmv7dVrR0kSlvdOo7k8+gs=; 4:4Hb4pH61P9thl8SONq4H640aRfDQa3udwpGz6t00JqRgi8YxZzVfJDrP69Ia86DHgxg87uLAhEjY5D+10Sm4dSY6ZWTqKw7ErvEbO9zn9Bp/LtxB1OrOqEFJTvj9ubFuVX41EFHRMTkADp3L77UDGYA9CQUC/PT14TMLB0sdprAlKGIPUIT30cMHoDpoxZ2TLVuMApjTpmnHRIBaKpBu9qtN/nRcZ6h1zoKU+KxXp6z3SlA8+x6pyO+bTDfTaqcB X-Exchange-Antispam-Report-Test: UriScan:; X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(2401047)(5005006)(8121501046)(93006095)(93001095)(100000703101)(100105400095)(3002001)(10201501046)(6041248)(20161123562025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123555025)(20161123564025)(20161123558100)(20161123560025)(6072148)(201708071742011)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:VI1PR0802MB2559; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:VI1PR0802MB2559; X-Forefront-PRVS: 0438F90F17 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10019020)(6009001)(346002)(376002)(199003)(189002)(25786009)(106356001)(81156014)(3846002)(81166006)(66066001)(86362001)(8936002)(6116002)(105586002)(7736002)(2950100002)(5660300001)(8676002)(48376002)(69596002)(50466002)(107886003)(189998001)(4326008)(50986999)(76176999)(6512007)(36756003)(2906002)(47776003)(5003940100001)(97736004)(305945005)(50226002)(16586007)(53416004)(16526017)(6506006)(101416001)(478600001)(53936002)(6666003)(1076002)(6486002)(33646002)(68736007)(316002); DIR:OUT; SFP:1102; SCL:1; SRVR:VI1PR0802MB2559; H:pavelb-Z68P-DS3.sw.ru; FPR:; SPF:None; PTR:InfoNoRecords; A:1; MX:1; LANG:en; Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: None (protection.outlook.com: virtuozzo.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; VI1PR0802MB2559; 23:HIqAX5k+ssXMiDR5bMSORUty86eFJE7QCr6DzrZ?= =?us-ascii?Q?feijDQrVucN39wjJRmzeTzHl5RmjbKtkoZ20VXA8CJFqxR/Hr8sPzzDxRBcR?= =?us-ascii?Q?BUGZ5xUvte6U8WBv7ZYRjfviEXqnrh/MBjfWm3Qf7AIyNwSzdbW2RWwKtkE1?= =?us-ascii?Q?z+ofMmNlXYtoesPQrA5qSkpeEYDAHKVj4cEitIA8n5icRmvpf86DdWwhI4aY?= =?us-ascii?Q?R+MUtG1QAj63ubye6LHIDhVcRRR+CUprK6ElUTzS7uPRaHJ/2oVwcYq5iDlb?= =?us-ascii?Q?E3fYSzdrLEh9POuusIz//Fr0TIc93cz/sKBOiR7VJjnhOmb4ywdLRY1FbvK1?= =?us-ascii?Q?ctQOmdQKocBHEbeaXPO3D3HzhKZP/V2HLwotNiWeflzSTS1wYNTa4TMwU2Mu?= =?us-ascii?Q?/ehQTdUQ9OR/oTaabTXXbu1FLx5MoSYurSjD957ZNaYHQY4U7EMOLe0QF8Al?= =?us-ascii?Q?fATn2NKM7gXYw+mn+CAayWHCprrQ/RxsW9DDpm0pW2hoD4UsZ4APFXKxtoG7?= =?us-ascii?Q?UCAM6mRXO2STpxSBUqYmxN7garfY+cSR7UDmdTPOhQjatU51Mzefe4ztuXZS?= =?us-ascii?Q?WFu+f64SShTDAWBTQPLU3yOeTn5WUks3O32+TxOjlaQfUAR0CeleSC65B/Hl?= =?us-ascii?Q?Tgh0C+cqkvO4A3lCQhV/7yNVF0yAHmneNRHcWgzjy7r2OwkWbY0qEcQnhASF?= =?us-ascii?Q?vCcmiSiSN05FCJEuoH73sGijdsSAlRe5b9N62sjrqqmDfQXUWsTnTfmAduKU?= =?us-ascii?Q?X8i/j3vUKOSbQ5HlbP7djop9bzSyGQMRmCKla1P36EFFY1SjPzp44aVYEX1v?= =?us-ascii?Q?/9Dp88L5pUpU5veKKw9vGfigKhVFZ3qel5sCEqT7DS4qveOCgvMekK8Zoq0X?= =?us-ascii?Q?F8WmpgSv4EmgmwZpvRtmJsBYgK4lHjQST+Xr24/bJfwaeY74WZSuA1lemBP4?= =?us-ascii?Q?QEFHmsXAjv3phylx80v+wMQtyo+wswBxLTZzkOpjPtGGaScms1pYz1LXjVFC?= =?us-ascii?Q?Jv7KiAztfm2HiHRBAzWo66se8RVtSsxwZcOEtHM/GeO1F0EGUukSM9PF2MFg?= =?us-ascii?Q?85TbgtQ7C4DXUBJMJIC+DqFWDhqy5gA7Okey7R34/hKlmBWYiq4/K3D9aLxr?= =?us-ascii?Q?xgXWhqMbKk08=3D?= X-Microsoft-Exchange-Diagnostics: 1; VI1PR0802MB2559; 6:6U4KMe7MnoZnNKTPm5+vNL2bjxXY0MY2JtFuxzy/XceC24fU71Snh1WXzemkqMGAj2rVWSdFskOP+6d3EsaJOhxJo5hHKjMYXFRqYXMvlzEnVNFnB+6gYB7WWyW4g1XMzaMmfWHXJ1JPu8IUlj+rppEBf/14WPuyJOBSHurefg4hfixMu0lWEhTPj76u92DfG7pNQyUQ+hjTwxLYjiFvsFZfK4fMy6SiYxXRaND1nWW3ipTgpWCIyTv1ftg0JNrzuUVnWizDQArKvmYotDlEacJ6cXao1t1pmeeqRfdzR9vV9m294oOz3URVRJHgp3QYszWcpiNEZAM2VkEHzLd/IQ==; 5:rBVggjqJS2LxvWW4R8a7JOUUtrXY5PDO9QhEWf5OlGE7FndFHs8vSu9OwmlwKWTjpxygLz60XdJ6EV3fp/cZYaBOYFBwFqdUdyLDGJuKrPfJAFRce1v89FcejqFAMGUjsPgXAVsIfwIg3y26eqdYuA==; 24:KqS87osPzs0CVQ1/cUENh+07HQBzUMFdZJwqlWuZak+K+1U98sXgs/fs0e4DZ00kEiqoRm5zbM6ML0SRJolR1961N/du7F+ddeKyDp+XVTk=; 7:eHsc+7p75jHPHnR4D7T4GS71SUdMsnI7uEcLDSisozr+2Vbb32bl26ubLxcETWhQ1xswXCOozkuZPAC5nQIQ+opJleboKCi5wJnIliKNEykr30ScT4Zh4Oavr7V3zuLwX2fXiFPAGgkMlm6njjve7Fijo+Dr4zpOabPr3aBffz3HC8fwCATRz4+9uRRlQo6fX0il5xun9uSJaQc3/+ehUohJqWR7uveOjDUz92xFWtw= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; VI1PR0802MB2559; 20:Brsf1ULNlK+ejgrYSkNRqJ8bfNx2VqoWWS+GylMQzWg3S+ocJhcrB/e0Nq0C82DNbRKncP7qf4buFfqdkXxfppmmxk9imbq6sl4dDJTjy2gs/qVk/AtStvHG9pQ8sMORT7LkC30mUmAqZpmobU/m/ftIYM0rKZUcWbW7nLNJ1ss= X-OriginatorOrg: virtuozzo.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Sep 2017 09:39:53.7073 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 0bc7f26d-0264-416e-a6fc-8352af79c58f X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0802MB2559 X-detected-operating-system: by eggs.gnu.org: Windows 7 or 8 [fuzzy] X-Received-From: 40.107.0.133 Subject: [Qemu-devel] [PATCH v2 1/2] qcow2: fix return error code in qcow2_truncate() X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: kwolf@redhat.com, pbutsykin@virtuozzo.com, mreitz@redhat.com, den@openvz.org, jsnow@redhat.com Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZohoMail: RDKM_2 RSF_0 Z_629925259 SPT_0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Signed-off-by: Pavel Butsykin Reviewed-by: Eric Blake Reviewed-by: John Snow Reviewed-by: Max Reitz --- block/qcow2.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/block/qcow2.c b/block/qcow2.c index 2174a84d1f..8a4311d338 100644 --- a/block/qcow2.c +++ b/block/qcow2.c @@ -3166,7 +3166,7 @@ static int qcow2_truncate(BlockDriverState *bs, int64= _t offset, if (old_file_size < 0) { error_setg_errno(errp, -old_file_size, "Failed to inquire current file length"); - return ret; + return old_file_size; } =20 nb_new_data_clusters =3D DIV_ROUND_UP(offset - old_length, @@ -3195,7 +3195,7 @@ static int qcow2_truncate(BlockDriverState *bs, int64= _t offset, if (allocation_start < 0) { error_setg_errno(errp, -allocation_start, "Failed to resize refcount structures"); - return -allocation_start; + return allocation_start; } =20 clusters_allocated =3D qcow2_alloc_clusters_at(bs, allocation_star= t, --=20 2.14.1 From nobody Sat May 4 08:56:01 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1506073392885791.5799048496916; Fri, 22 Sep 2017 02:43:12 -0700 (PDT) Received: from localhost ([::1]:57579 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dvKUC-0002Ds-TU for importer@patchew.org; Fri, 22 Sep 2017 05:43:04 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:39562) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dvKRL-00007A-52 for qemu-devel@nongnu.org; Fri, 22 Sep 2017 05:40:12 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dvKRG-0004O4-LS for qemu-devel@nongnu.org; Fri, 22 Sep 2017 05:40:07 -0400 Received: from mail-eopbgr00133.outbound.protection.outlook.com ([40.107.0.133]:5029 helo=EUR02-AM5-obe.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1dvKRA-00047J-UV; Fri, 22 Sep 2017 05:39:57 -0400 Received: from pavelb-Z68P-DS3.sw.ru (195.214.232.6) by VI1PR0802MB2559.eurprd08.prod.outlook.com (2603:10a6:800:ae::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.77.7; Fri, 22 Sep 2017 09:39:54 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=virtuozzo.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=tidYJhJqqygs/9klXkhL+skaWuC7BEGhY0DjOlCTUi8=; b=Lwh4f70OrfujhG5xPosX8zT3AVicl+JsUvpjkWHtVNoyazj4mBaqa8aRVXw+q8e1IWwQRY5glDkin9PD+iILLvoqMlgd/4u3WVODjq5EjuQ25neR3erJn0sQuSBKdorC3evrnS5Xa+1axW5q3NIihVAGP+RKiRluM16GLIHsLSI= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=pbutsykin@virtuozzo.com; From: Pavel Butsykin To: qemu-block@nongnu.org, qemu-devel@nongnu.org Date: Fri, 22 Sep 2017 12:39:26 +0300 Message-Id: <20170922093926.9723-3-pbutsykin@virtuozzo.com> X-Mailer: git-send-email 2.14.1 In-Reply-To: <20170922093926.9723-1-pbutsykin@virtuozzo.com> References: <20170922093926.9723-1-pbutsykin@virtuozzo.com> MIME-Version: 1.0 X-Originating-IP: [195.214.232.6] X-ClientProxiedBy: HE1PR0401CA0046.eurprd04.prod.outlook.com (2603:10a6:3:19::14) To VI1PR0802MB2559.eurprd08.prod.outlook.com (2603:10a6:800:ae::9) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 5fb245d4-d1c9-44fa-a5d0-08d5019de21f X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(300000500095)(300135000095)(300000501095)(300135300095)(22001)(300000502095)(300135100095)(2017030254152)(300000503095)(300135400095)(2017052603199)(201703131423075)(201703031133081)(201702281549075)(300000504095)(300135200095)(300000505095)(300135600095)(300000506095)(300135500095); SRVR:VI1PR0802MB2559; X-Microsoft-Exchange-Diagnostics: 1; VI1PR0802MB2559; 3:xn7hJyvSpTEuh8X4gBSRkZvNx3TFtqHUKmH+EZTthxHmzXr3Npfl/dynqOax8KWWhJA1UU0wqoZzfiDB0M14oXf8Tb7aJEr6zCvauySaTIfoKbDV68J/6gsIKDXCFHFgqLdf6sgHnZNHQrNZlW1Ttj8lTqY9yjIaF+aqbi1XJfb18NrcRGl0HfM8cDGRHs6avNRg+WmJwK7fHUfF6qr3m5lo8WnN+SVX9LUmy8rRt5QfTzWCjAdB/8ot/icBUk3v; 25:6ZEAC8Pu5yZHEi4EexwTh/+079NGfQzTyCRgrJ1+Uc+WnTQUwa7uyRwf/SgRXnBkSUHgZfBLV72lsScAxESfyHhHdold6FoMpXLPQZXoJKX6ulasQnaZzinTNqmu5wXZL3xwg2w48oPT+e4JctgrfNyurtyK3r+moat5XwjGycEH/SBmlEALvuCojFMBxhrqqwSf/X5JH2twe1QWmzNWDzhHXLUjvUSmXJlyHLuv4FsCjsVVIiVICZ2VO1yxY5TKiJYA942Svo7ywoMiIYhUYFFDNQ5ScCojegZtssMfn8WK1sN6Hq3vMB6eUCzGB52PX3ju0QBQOvgSFmBIT/aCZw==; 31:Ho3YzhHVwoXBbAJPKwGf9xdbg9ChN+bTpLZAziDclCMIWZGxGqXIxQou7CQM+nWCqGfH/ZvUAkU7zVdjbJy1s0IFSzm/IOpDz6TdiMREr6E0i7drfdy0SlAUD+htanRD9hP+l/Wnrh+ildhq19jTgYW34cJFrmqEJ2WtYEgcPeL5m4hwjr1Z1L5Alqm+vtpB/7rwS24/dCZ76KGkH6DKKVcn+6bwCAryE0b95ZtGeb8= X-MS-TrafficTypeDiagnostic: VI1PR0802MB2559: X-Microsoft-Exchange-Diagnostics: 1; VI1PR0802MB2559; 20:JRUi9g9kjNhxnCHiq0AEMPeMT/ADGWp2KBYZQCDE9zax8g2t0MpUjNqKUzOsEobhEzSKjZgbXd8DidPuoCzTl43ehhLJOTRcs0A4FeXu6nz+Ro3Awe3ov4ohDM+lzyd02aYYfzKFpASTWkKxknkjT9N8Cp6wAdgD6OqfnQLeQBHF/Al5uT5I2sQebSRPHAuCHaLh4dowa//foUmoEEdJCZYSN5lFpCqXXPBw9+MoirkT9LIDB5yi/j5/UcZEMHrrnT4GzmbmJ2HVoAcM6pQPyc/vmYoQW6ULNhVW+QvOpMkNlF1IwC36CAtVPJU/EdOpbW0Y5yNoyK/6Z7Xrg4YN5m7fjkLmYwGgk9LCJvENFSJpztHU/RPAtVqgQAx2KgsqlvW2scD22xE91gh33MfeH0YVgMspu41RU2TRMpx6VUc=; 4:7akGjc7O7GLyFcIAYg7JjtGbanl1SIlbiZH8loeefqp037sg2VnECVegu/py8bncDNaKT/eQlB8S6sq5f+wuYMuNeRhRNGoPsC3jxXzDqEQzeffdchhJyCKk6Hic4ETy/RcNpIZPCLUEgXVMjxN240j+BiGqgUtJJX7gnN+K3I8OTG4qWUIZDFzP7boC19ORhNyKpDWyH/EVLhHjb+hO1ea1R9S2n4qEe6kBamtuM4zfeg4eBbbWujujn+OkqtUZ X-Exchange-Antispam-Report-Test: UriScan:; X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(2401047)(5005006)(8121501046)(93006095)(93001095)(100000703101)(100105400095)(3002001)(10201501046)(6041248)(20161123562025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123555025)(20161123564025)(20161123558100)(20161123560025)(6072148)(201708071742011)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:VI1PR0802MB2559; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:VI1PR0802MB2559; X-Forefront-PRVS: 0438F90F17 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10019020)(6009001)(346002)(376002)(199003)(189002)(25786009)(106356001)(81156014)(3846002)(81166006)(66066001)(86362001)(8936002)(6116002)(105586002)(7736002)(2950100002)(5660300001)(8676002)(48376002)(69596002)(50466002)(107886003)(189998001)(4326008)(50986999)(76176999)(6512007)(36756003)(2906002)(47776003)(5003940100001)(97736004)(305945005)(50226002)(16586007)(53416004)(16526017)(6506006)(101416001)(478600001)(53936002)(6666003)(1076002)(6486002)(33646002)(68736007)(316002); DIR:OUT; SFP:1102; SCL:1; SRVR:VI1PR0802MB2559; H:pavelb-Z68P-DS3.sw.ru; FPR:; SPF:None; PTR:InfoNoRecords; A:1; MX:1; LANG:en; Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: None (protection.outlook.com: virtuozzo.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; VI1PR0802MB2559; 23:CZR171aPA9xr4KKZsRO8JVRICObfsSRgrO5K+rq?= =?us-ascii?Q?m8mn6GmqkP/5CcGnuA2k4Af9x7uGPf2FBnJFrBPadQa0PMViKKRnABu33AAr?= =?us-ascii?Q?HjMmGPT8koBk8TDal/wZChB1FQJzHk6bNQA0ylvomQ4V86NNnKLrZ6ujOP5J?= =?us-ascii?Q?kd2CBN3NmH0z0z0uHrNi0V0hsL0mejGtMfktgIdpXroCNTQPK2iqi5HgaVfj?= =?us-ascii?Q?+RNZJzMUVQG96+f9Dgd4e5Y6Y0I3xRX/ZIKjOXI7Mv7iCz+hTApDLTl2Yyv+?= =?us-ascii?Q?HsfbTlgTfcOMYtPr5/aedxaKboWxrgsizxMNdxXrZWNflGksqgZT7Er79C6/?= =?us-ascii?Q?5sj7xYQaYqHoarKlxr9akgjRe91vz8eIHPbVNWlkLs4qCzVvuOkz73NQQ2uy?= =?us-ascii?Q?RgNiP3h/xR7kFobYxU0pLUnHDUQBKdm1dzHKXk2SJZJ+dXHVfkoMBKMeGmQX?= =?us-ascii?Q?lQjSJCnSlJRDQR5B9nyR0bhtEGSC5hK29iR1rCIzvLtW4nbkPgxcpEK34354?= =?us-ascii?Q?dWZRf5TizgFVPzEKQ6VsO7NT0/1Wsd7xlS9uY092n7o+7dLLMluBuAawu+6f?= =?us-ascii?Q?6yTihlR4J3jrGDhDVSKCNFIIuHodlb8zESpjOTL7cWEDexIO6mAUHqAyYZgL?= =?us-ascii?Q?+TnufOQERWpPkTrLpPrxjHNhhHWHbuqLTrUApHCyS4PCD1Md/11y6qSpUbQX?= =?us-ascii?Q?WWEGmMDS7XfMHCROVlmwrLD9hDxd6/lubZw7DP+SGCHdPIdasxSxajawL1d2?= =?us-ascii?Q?F4os3rAFKbPQG+06w/FH641TnCyZ78bh+q7i4kTCnFZW7eyby1lNlSe0S3ir?= =?us-ascii?Q?5o8cQFWgnaWt7izHCUshwhbUizx+NktV2eNAMGUyHPcT9+F7EHnb93PF8H1x?= =?us-ascii?Q?drOXl6KAnyu+LPuZQDltJZuFZV7gFdnTHsz36EJRVHxRvtZFyZ3ENGhazRbh?= =?us-ascii?Q?b37czmQfrRgW+J6TLJB671ImtRdpRpCIFEOUb8EEqGiwtjttYw4bJuRfyZ+I?= =?us-ascii?Q?tLjuTdhAWa2UKE9ZveQXAMYCxzuC9ffdIeLHyD64oNZzAO1dB08Y3GSxV/EL?= =?us-ascii?Q?O+GqsAZLf6hYry+5rQoIypNtj54bqx4gMKzY+LrVx42cSyoBJxus7+ojkL5y?= =?us-ascii?Q?f3xXnU5G8Hmo=3D?= X-Microsoft-Exchange-Diagnostics: 1; VI1PR0802MB2559; 6:DN/y3Y5bCsfgj73BNouQ1CqzkNzB79KE+tQ0qpAfXdVBlCPrExop1+NIoC503CVGfvZ5AYj01J/2eWnnuMr7HXvQkWbVdCfRn6lLwF/ckenokMidOG3IIC85cisMPNgg1Cd6XEdnsM+vZUZLOj7fankSfS9exhbdoe5fiSQxlJ6sDqsxUymFFxnAWwuobWISL2JGP+H1FZcm/5w6+f008XRQggGkS4PVukwiJ/Z0CHq83wFdCtVf88iI1ENmMnJwGg2wTmAyqXTDBgChfNl9vFzroWZ0AcEAMjdvIWhWEGb/JfLyNeuPO7xVjt9nQxnOSmm1CqVP3rceUjwJirXphg==; 5:Mc+6sgJa2zOsOlwb0YV+x9dlbndDFOtkDpzhEGy6CtIePla5LsnXWAi/y9oRDm0IXAAo4YpYJNDORCR8mtbe5N7pgVCxuqsLIQkHWGGvSe3Zyuo25ZfbO5116Y4sWUstIgEHYXc+sZElQeLLmXt+4Q==; 24:91kTQsttp11cI8aDrFf0OCU510XhTEiPQUNuQ7pYGfWTJcPKTt/hpqn2bI8G16skc/cRqCMvzgkER8Qmr7vyskaIKiloO3tFyWDOWWhBtyU=; 7:pHLrCJ82TRCYpvtpDoIWf2Fwve0gYGu5At47hZNmbr8X6aLk4KhGoawYEJ4zXwqlJ2zFXxi4qbfnXOQs9ox+XvFFMfLp2BWqTLKOUzriEDWu19zjje/RAq4xYtiLpL8RL8WF+QGLDaQMZbpQEmmwbG2jQ91P9cEtv5DVPwazgdR9khADsEhApiv98cBxdDNhAmXPpefXNUyoX6xdNzNX6/03oqbkrdtF2R+N+yJm9Ik= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; VI1PR0802MB2559; 20:E/ow1jWLmZqnvcz9VtNvSVqAMlwMVtYwxdq7D28eaDLQFoLOkprsudPK5xQ4HlpfWRY1JZjb/PKnCPq/XVzNUUM0Ky1NEh3qbyd3ptC6d3CW7jbLJJaMdxgTbKIlhr4w+bj8E3VFiwDKyjdov09z8fdB8D6Du76HzAslTNs7ocU= X-OriginatorOrg: virtuozzo.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Sep 2017 09:39:54.9261 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 0bc7f26d-0264-416e-a6fc-8352af79c58f X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0802MB2559 X-detected-operating-system: by eggs.gnu.org: Windows 7 or 8 [fuzzy] X-Received-From: 40.107.0.133 Subject: [Qemu-devel] [PATCH v2 2/2] qcow2: truncate the tail of the image file after shrinking the image X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: kwolf@redhat.com, pbutsykin@virtuozzo.com, mreitz@redhat.com, den@openvz.org, jsnow@redhat.com Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZohoMail: RDKM_2 RSF_0 Z_629925259 SPT_0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Now after shrinking the image, at the end of the image file, there might be= a tail that probably will never be used. So we can find the last used cluster= and cut the tail. Signed-off-by: Pavel Butsykin Reviewed-by: John Snow Reviewed-by: Max Reitz --- block/qcow2-refcount.c | 22 ++++++++++++++++++++++ block/qcow2.c | 23 +++++++++++++++++++++++ block/qcow2.h | 1 + 3 files changed, 46 insertions(+) diff --git a/block/qcow2-refcount.c b/block/qcow2-refcount.c index 88d5a3f1ad..aa3fd6cf17 100644 --- a/block/qcow2-refcount.c +++ b/block/qcow2-refcount.c @@ -3181,3 +3181,25 @@ out: g_free(reftable_tmp); return ret; } + +int64_t qcow2_get_last_cluster(BlockDriverState *bs, int64_t size) +{ + BDRVQcow2State *s =3D bs->opaque; + int64_t i; + + for (i =3D size_to_clusters(s, size) - 1; i >=3D 0; i--) { + uint64_t refcount; + int ret =3D qcow2_get_refcount(bs, i, &refcount); + if (ret < 0) { + fprintf(stderr, "Can't get refcount for cluster %" PRId64 ": %= s\n", + i, strerror(-ret)); + return ret; + } + if (refcount > 0) { + return i; + } + } + qcow2_signal_corruption(bs, true, -1, -1, + "There are no references in the refcount table= ."); + return -EIO; +} diff --git a/block/qcow2.c b/block/qcow2.c index 8a4311d338..8dfb5393a7 100644 --- a/block/qcow2.c +++ b/block/qcow2.c @@ -3106,6 +3106,7 @@ static int qcow2_truncate(BlockDriverState *bs, int64= _t offset, new_l1_size =3D size_to_l1(s, offset); =20 if (offset < old_length) { + int64_t last_cluster, old_file_size; if (prealloc !=3D PREALLOC_MODE_OFF) { error_setg(errp, "Preallocation can't be used for shrinking an image= "); @@ -3134,6 +3135,28 @@ static int qcow2_truncate(BlockDriverState *bs, int6= 4_t offset, "Failed to discard unused refblocks"); return ret; } + + old_file_size =3D bdrv_getlength(bs->file->bs); + if (old_file_size < 0) { + error_setg_errno(errp, -old_file_size, + "Failed to inquire current file length"); + return old_file_size; + } + last_cluster =3D qcow2_get_last_cluster(bs, old_file_size); + if (last_cluster < 0) { + error_setg_errno(errp, -last_cluster, + "Failed to find the last cluster"); + return last_cluster; + } + if ((last_cluster + 1) * s->cluster_size < old_file_size) { + ret =3D bdrv_truncate(bs->file, (last_cluster + 1) * s->cluste= r_size, + PREALLOC_MODE_OFF, NULL); + if (ret < 0) { + error_setg_errno(errp, -ret, + "Failed to truncate the tail of the image= "); + return ret; + } + } } else { ret =3D qcow2_grow_l1_table(bs, new_l1_size, true); if (ret < 0) { diff --git a/block/qcow2.h b/block/qcow2.h index 5a289a81e2..782a206ecb 100644 --- a/block/qcow2.h +++ b/block/qcow2.h @@ -597,6 +597,7 @@ int qcow2_change_refcount_order(BlockDriverState *bs, i= nt refcount_order, BlockDriverAmendStatusCB *status_cb, void *cb_opaque, Error **errp); int qcow2_shrink_reftable(BlockDriverState *bs); +int64_t qcow2_get_last_cluster(BlockDriverState *bs, int64_t size); =20 /* qcow2-cluster.c functions */ int qcow2_grow_l1_table(BlockDriverState *bs, uint64_t min_size, --=20 2.14.1