From patchwork Tue Aug 1 14:19:11 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Anton Nefedov X-Patchwork-Id: 796269 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=nongnu.org (client-ip=2001:4830:134:3::11; helo=lists.gnu.org; envelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org; receiver=) Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=virtuozzo.com header.i=@virtuozzo.com header.b="hIJ/DDgK"; dkim-atps=neutral Received: from lists.gnu.org (lists.gnu.org [IPv6:2001:4830:134:3::11]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 3xMJd067p8z9s81 for ; Wed, 2 Aug 2017 00:30:12 +1000 (AEST) Received: from localhost ([::1]:42907 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dcYBW-0001Ma-Lz for incoming@patchwork.ozlabs.org; Tue, 01 Aug 2017 10:30:10 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:43299) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dcY1O-0000Xq-PA for qemu-devel@nongnu.org; Tue, 01 Aug 2017 10:19:46 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dcY1L-0002Xt-VK for qemu-devel@nongnu.org; Tue, 01 Aug 2017 10:19:42 -0400 Received: from mail-he1eur01on0132.outbound.protection.outlook.com ([104.47.0.132]:46811 helo=EUR01-HE1-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 1dcY1L-0002Tv-N5; Tue, 01 Aug 2017 10:19:39 -0400 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=w+1E04Fe4P6le+urMKuVplD6AqVTiHgcVyGFzxOb7Ko=; b=hIJ/DDgKCkwJ8ddTK3FW/f9Od2Oi+A2FD9IT2JfygMoMLwI6bM/it9tGdgtN1ro4CLVmIGOjf4l7pFsLPzzYKgFR6CnnbzE8eUIVCHBvKGp7wN8TL5PErqcqQNECmOFkWHAN5IlxQYohYcJO9sVuQ0VN+rTzpZw0bLQYr1iSnEc= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=anton.nefedov@virtuozzo.com; Received: from xantnef-ws.sw.ru (195.214.232.6) by HE1PR0801MB1996.eurprd08.prod.outlook.com (2603:10a6:3:50::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.1.1304.22; Tue, 1 Aug 2017 14:19:36 +0000 From: Anton Nefedov To: qemu-devel@nongnu.org Date: Tue, 1 Aug 2017 17:19:11 +0300 Message-Id: <1501597152-25342-15-git-send-email-anton.nefedov@virtuozzo.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1501597152-25342-1-git-send-email-anton.nefedov@virtuozzo.com> References: <1501597152-25342-1-git-send-email-anton.nefedov@virtuozzo.com> MIME-Version: 1.0 X-Originating-IP: [195.214.232.6] X-ClientProxiedBy: HE1PR0202CA0002.eurprd02.prod.outlook.com (2603:10a6:3:8c::12) To HE1PR0801MB1996.eurprd08.prod.outlook.com (2603:10a6:3:50::9) X-MS-Office365-Filtering-Correlation-Id: 9f8a5ea6-3c9b-4c43-0db1-08d4d8e8570a X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(300000500095)(300135000095)(300000501095)(300135300095)(22001)(300000502095)(300135100095)(2017030254152)(300000503095)(300135400095)(201703131423075)(201703031133081)(201702281549075)(300000504095)(300135200095)(300000505095)(300135600095)(300000506095)(300135500095); SRVR:HE1PR0801MB1996; X-Microsoft-Exchange-Diagnostics: 1; HE1PR0801MB1996; 3:znrylQ8jNQOU65OZcjUzxWAcDF1fYg2TRqybuwbWNEQqAj69HYFEBdOJrgUtvaUk9Kyaxu6e0urvbdMwV+0RDLZlM39eiJ7BWw7CWpH/zxVUdMKhQhMBQct/JbKC0k3xqj7MfLRh8o/NWoTGdNKiS3grAuGoLO97n5d2UyQ8tLEbLlfle0EU1PT6leAdlmt7v2+STkJh5fyQzNVSGumtTCv++VmmUEEBPUUo/iOE4hqaW4wu0khA43BWlmfy5NZpJTqHwdl0PNC0UiA6GHlpGjegHo5MRmMLNZNwvheXW6grZNvScrA+gxepeuPBjA8TrejkICc428rnGXYglLxthZo2zDhyDKQuMAeNit9wJY/4egXNaFfrBKEFSfT9AeT919Nfdg+IBw5Vx3ePJ62RszP76w4Fac37+rEwR97luhBqT5vauIwbfHDMgE7HBJ1glByAMDYyYKY5xk0Erq+2yDzLxvejI7/zBPyjJpiKzirm8evIBL7sqE8mmG/SDRGECdRSVWLG8l8m1IzM8ZjDNC081dcJsx85Rzdq0Qd8S8pZq5Zm/sljpdru3CAo7/6vln8zQtaiIKfojbK1WADN5EIv86H/p0mAUzeQc0nwjJ5bM7SFEWpJu58WxM90RX0P8ypS9sj3lblhQ8vuhBolUsXEyKRy4J0UwJGPl4BwQGeuvXE9zbcXNbrb2PWsqWllokPWgMtSE9g9dE7Pub1oIfJ7bPqk15E0oSLOXPRWlV60Ph6rqLaxzkJShkyim43QK8CexyAWrXIdVHuzO0AvDnf+v3kO3XmveecEA/9YrUhVLm2ypZ1CjM3df2Srnqct X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: HE1PR0801MB1996: X-Microsoft-Exchange-Diagnostics: 1; HE1PR0801MB1996; 25:JxCR6Q07zQEB7jK4p/g0etHyY8ji+RaundYaTbeYwk/CECPHK+4Cz/nns3yUMFfAdRGblPrcxwMjOTaSj5jN8uaq4h2EP4NyHhGu+LJS/uprsbamo9nn57jYmda2s+Dg/h7ftVKP5k3eIQE0X1+mb24ABbwFD50dOgF4qQvZ+BVPAykOf3yDS/5SGM8eS/WN0g+D/o1/DV8GPLghzrDdlXtPwmdcN/QUMSZ0/TkKs10DPBfBnzSi/NBkmeerzIyZrzVUj4RjB5taq5JGE2Nw7y1Uk3M6fse4Ir0gCffoExTmeT9IKCwKNZolQqO1fyg8oxer5wyJRpFuXHQAPSdktGap72zo3MTOhSP/x7i9s2xSB2y4LIaJYnBEILFnVqsTTVgbkxenq/gxQxPau5CNDlz/ibqAKJhqTLxjDp/6xczXC4t2EiBZ9mGkvQ609+la6ZF0eFeb2M9bpHcuTQFxaEi/ygVjHWXagEjnjmGIvvdfXltjnz1nFvDm2YC7XSvfIfrr0r/1CpJNCNFwTUvB5GYFwicxlM8vel58oAquw3xs/Z06vEoHed812AL18UgpKRzi6L92IydyHX4Juty0srKyzzLHZGWWKDZ5B+vUSjum1N6DkjTTOKg2wZAGB1vtHouOCD48U0ms7EpCmdmL3jmUw9W92wWawFR6CJzLpW4hKh8j+qFzxdcAQt2a9uCE8/JwiOeFSujusr/YhOBpeeS5MGstlCNe7xqiM3zHrh/PYVcugk5YtlHiwwQaEkvKyXc0xL76Bt+JLrA86hfG0nNpuqxQ/enm1Xgqegrm9f5HSY/OvWp31bfvMxh53wc3sQayy7PAvAF3MGxgA5VrZUeetZyiu3IIoWxfDRU4P4wv31TXJObRe/8xivoAUxy1lxDXx7bT2hWttJ6IVuefLPMYqg9zSDp5jaxcEketeCY= X-Microsoft-Exchange-Diagnostics: 1; HE1PR0801MB1996; 31:Q2s8w7t3XN1feGUFvtmuBszibxbAFb69zNYZtT6PJfM2rEC3j6pMlaczcZfUBu70k+DK7SQnapYVsvVsrK+qiTMvWIb/7Y4oPFoD5Nf/jmUGQUc5/rugFt48H7IcsqG8oT+PRQaieu7ngdhSYKFPMJkKM869AlQCrbx0pdlRyjckKFzAQhIYsdnv2GXPxqCqb61sFLKs9/6x4u6jM5MLlQ365ebUUK5simFEGaZpCiwafeCfMBHDfkVe3EZoZk2X9si6uCkB6vuEY6huNRkbT1EYX52AJesBRpaRlOOSUFnzx5UvjC8uF+GHIgFXjrD7rfRf1OO3a7SsOSxg4KA0CTUg+jNQ5gbD35oP17xD0sVUdh1Lz579tBuzqBAs9pxjLV+nd1ySGkANnb7kngiosXPnuuof2NU8rA2ZPKuGDQcPlAG5ozLIUb8QZz5Y4ROzVLhYIrdtIN0ccOSoCEO5dNZ5iUEIfSOgQofcOC/vnZ9wzQIDpuJ1Qeny2/GHweoc+YxSmhinw60nb1ljDtaiFu8b9dO0Knp1zi7UVqsZFbH4JgO2VzRQmSBZPUnjliH0+/zJtYmtDkeFaCiWEkNEfs/DUf9ydUdndZfdCXkHSn60zZ85oOK48gmaFaug7L4pGNaCKYJa8FHxn6U9hjsVPjA8KTUTe6W0t68iH1nEaKk= X-Microsoft-Exchange-Diagnostics: 1; HE1PR0801MB1996; 20:GYI6589FD8DtTxGgO4RS5pL0O/eYVfQFbb94ObOzOAZdtuVRk25hcKDOvi77KimjClPEqw28OZmX7cWcZIyEBQiolV/eNeh2k6VYm3xfcSrvYwdhyrUEhZbzm9O57b6r/mF/TLPU7pwIv2DfK8Z1KkpmYB63cra86RXiV1vmtEl6YqlgqX4mOwrcie6lMgRqDExMnWqUeHK7JcLtjXyGYvDMg20QQriK0+m2oilvJNfINs5nlM3ZgtEw7JNWQblihQaJZSlvJHkHjX+9KXYVikJFTUpXF1tFGZWu8ZZzppNv1s8X+jIwmrPshbNmTRxleSZ1UTf2jtb3CQQLVLDSKcgXG/z7EoP1fSDy2TjYEZSsT16MjPlM2Qv/SOYcr22wwpF+x7FCKl0MagKqW7FTri46o6wzjFjxP16nBHqubtU= X-Exchange-Antispam-Report-Test: UriScan:(250305191791016)(22074186197030); X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(601004)(2401047)(5005006)(8121501046)(93006095)(93001095)(100000703101)(100105400095)(3002001)(10201501046)(6041248)(20161123555025)(20161123558100)(20161123562025)(20161123564025)(20161123560025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(6072148)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:HE1PR0801MB1996; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:HE1PR0801MB1996; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; HE1PR0801MB1996; 4:nqhYM0qSWFS+SEWFfbUBghJAuXhVLAMG+zm5d0dg?= =?us-ascii?Q?HzB1hHhT0aIThrP1iUwM8627XZklTOVmLb0AFDfC7+FR59NYWxvKhJb8EOwK?= =?us-ascii?Q?SodYUj3WWoGC9iqx54WC2iKTSka9S2RJILQwjOiUZLMLYj3tKf+s5PSqazAL?= =?us-ascii?Q?L6ZeWhMxtiC5/xVRUzX0NNNxrt+A70n+whlJAglc0bmTykALd9eSJrsRvsKF?= =?us-ascii?Q?/C2dR+0Z5u0NmY6Tx4Y6PDyRNOpfpCM3Ix5xnH1T+RmFy/oCWh1SOOgqId/Z?= =?us-ascii?Q?YX20IEgr8XRwPh7U7Yy1cJBvw/4ddfnrvRBjKCXvNeaC4jnUYkbrlpf+AcVn?= =?us-ascii?Q?Tq5jRWSYK4wR6pVZo1edjQ2cDnOmi2FxuqLFgCtZn4ZU9qCF9ReJ7Md0arjh?= =?us-ascii?Q?lqQ6rOkJHUFKuW+06t9nlxXA83QwCHG51RR+u0sHStQy1NScmLRlomGSdis1?= =?us-ascii?Q?4IF1ww8LjCfxvmlMc3kx4SvGgnsmjCEzFL2gNaDQy3roO2/bwHLJmS+LDUSL?= =?us-ascii?Q?vjGVLjJFwXmWt0EV3b4e52ScQnyhcrtLLxaEhDxafKWUmrDO+CplqjbWviBg?= =?us-ascii?Q?3/m0MrhRR/4VOuzvqztuhilIUHn/rZuQQmuVNTyrpqQ0kXIZqIZN1XZs2Goo?= =?us-ascii?Q?tuxvEyeM0vBsexlC6+t7dOHzieylyjs/p2lJRYN8jWsl7/jNH/dORjwfjK4z?= =?us-ascii?Q?Nu5rfOTIiK/AFyrWl15hErmKC8xbZGRutJ5fVqtM3IoV7Whg0TcozKv9H3ct?= =?us-ascii?Q?D/UBuSQ1TbB6dVEC/uLAqMRC4mNEBgFMgOGmwlMj5KKb6LmfWURKRpYJqlRy?= =?us-ascii?Q?GjnAwevgZWPX6q63cc5jmIYWXosj025jJr/NxezFhM4LJN14arS6o7XGmZ28?= =?us-ascii?Q?A5oISQTwKTSpYNCvlZHWT+6soL6aULcD766lZlbW6Ij8OMGsIkf6GZQetQax?= =?us-ascii?Q?fwVpJQY5ZTJV+duLS8KW98H/EX3uE/1CGjB5oW90mzIXGdEKM7gl6K2zvo+M?= =?us-ascii?Q?zN82KgShVux6UBHBG3Olu0M38wbKhlEYEwJSr4L23MtyaeZLzEhoTl+GinF0?= =?us-ascii?Q?6XP+TjFSHoZUiG99oNcF/2xN4a3UnoHXTI8PJMXJLpbQKmBYaKxf/nqzK1no?= =?us-ascii?Q?oW/kCq0g+diRuUtwaoSdeILNpWV328EhtKIXWtLy0qxE4B4ikYhI7YuVWYhB?= =?us-ascii?Q?pF+Zm6lA5G+Yuo0yTu3splLWngXLaYTW89Fz2UUzs2gif/OLJFA6WYUYIQ?= =?us-ascii?Q?=3D=3D?= X-Forefront-PRVS: 0386B406AA X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10019020)(4630300001)(7370300001)(6009001)(39840400002)(39450400003)(39400400002)(39410400002)(189002)(199003)(81166006)(53416004)(42186005)(7350300001)(2351001)(106356001)(2361001)(105586002)(33646002)(25786009)(50466002)(7736002)(38730400002)(189998001)(305945005)(97736004)(48376002)(6512007)(6306002)(107886003)(53936002)(86362001)(5003940100001)(110136004)(66066001)(6666003)(6486002)(2950100002)(6916009)(50986999)(76176999)(4326008)(68736007)(478600001)(101416001)(8676002)(6506006)(81156014)(2906002)(36756003)(5660300001)(3846002)(6116002)(50226002)(47776003)(69596002)(21314002)(2004002); DIR:OUT; SFP:1102; SCL:1; SRVR:HE1PR0801MB1996; H:xantnef-ws.sw.ru; FPR:; SPF:None; PTR:InfoNoRecords; MX:1; A:1; LANG:en; Received-SPF: None (protection.outlook.com: virtuozzo.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; HE1PR0801MB1996; 23:wzs+5aaBwxl3z4r16sffAK+bU+ZyFr+1AlLUFk5?= =?us-ascii?Q?tdkIfY4b1hcV2lk3SFWWzd790b0WxS6Ptydd53qDRbeVtsceBohMOEOZM6eC?= =?us-ascii?Q?80nSh6jN8ztQGWjf4Q7kn7a5E9o7tZE+TWI1jOSzFg2Gxyrhxwkt14zhz9ve?= =?us-ascii?Q?bfO8xaKvQRrwjp6GXTvJarfpbLU6XLgGGr/0Y1+1+1rguR1+Ggwg5ls/UJoB?= =?us-ascii?Q?su+VQxwjwg2ZD2W8FLEvX9tEKiQegOA00HHKa4NoY3bGLU5Ktvt58SkO/yJm?= =?us-ascii?Q?sGjebFdA3xdQ6EvWlFyRDpV0IFEQvSJCTbfQYgvKqZGAZHsYtM2vl2NVPGp1?= =?us-ascii?Q?81+44uUPggMaUnqmReYBqZ6rtoT8R7QKMTvKk6nkcOuf5lVz1fj/jfrAjQmg?= =?us-ascii?Q?x70PpgW9C9sgXp5di08bKq8kIso98KkuI27hWOnTtFZ9jGri4QfB8I19Z0/j?= =?us-ascii?Q?XXtPmHvF2E/VwAQV71VeKjWRQ7uc2kk/6Nrr+dMlC9q/H43lqYfcEIb2EUzM?= =?us-ascii?Q?LHPu93RR/1s7V9iBYqFcKsPm+653y3o1EQhiHx0MlPXV9MaZEqHCBUNznP7q?= =?us-ascii?Q?S0Sf0XAg1GrdMhogz3f+MfutuFLQn0Oh6gR6iV4W9y3IIQcuMMbxurrfqjlQ?= =?us-ascii?Q?5q47KlLoLzW+e7rI36fxE3tL8eZFRei22D9NurxVZDQMczCBYCFLCmeAC7WT?= =?us-ascii?Q?Dv5/jrSOlyJ3uXPQE4XVI8Iz8rwPD/MV5FoZNIE9UGpsKOh4XzthhaPtJd54?= =?us-ascii?Q?A25lDd80sB3LqmNoah2wsV4OdwhrnIu53dAEtFfFRludbNGiVt+JVcIPkLnu?= =?us-ascii?Q?vz64mfzXISAME+PawP+jIArFxWq9Vsa3F1vx3XoXWxPTJP2KFb9s/uUCPrYV?= =?us-ascii?Q?v/NwJZfIhD1gO++u4F+hKb6rPNjNus3xN1iS3mMHNMx3Gc+J0dvHu3iMfeth?= =?us-ascii?Q?Y8WpEzUqZogRXHUWq16gKCq+9aIXJffPRKcO1b4V3CY3rqg2R/fk5MowflUw?= =?us-ascii?Q?QpODvmAadFz7A9zGoP2yPO3WWoSlF/J2clKd7ZTjFNvZJa1Vp7o8tbhtWdjy?= =?us-ascii?Q?FR4SRsHCNOuaJXaaCpGSmR7wuaJTwrQ2KbuOvJNyKLkfciyyEx8/hiFjMvIE?= =?us-ascii?Q?s/J52i8x0R6xTjeZjiLvM524o0eBBSQQrCozZ94qbG0zQTmcSDd6QxTduYbl?= =?us-ascii?Q?/CtFtHNxVadKIVb0oETIHCJBJFDdt12I8Cee2rqsYJVlJLXjerVwTDPmsF9k?= =?us-ascii?Q?xJdFfN6ohj+CoJ50qUYhMguAd3NQQz8PpSxT7PSytN6c4zqldDf0wjdZhnQp?= =?us-ascii?Q?mV0jH1WcowJ3dU/Mh7a4WMEeiDjRC/lT4D7R0yjuJrasSOi0lqAU6jYIuspY?= =?us-ascii?Q?YCWDjw4fPypH/6gF9GKOdEmqCVUE=3D?= X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; HE1PR0801MB1996; 6:lvcLxmqJRlNC/Vujfpb3Cp+S9PQR7wh7U4G+gTpm?= =?us-ascii?Q?5cxMOz1MocnvfXma+vmnW0dzou/62Ql1RgmzM03cboeNZWtV1l+0PWCjr+E/?= =?us-ascii?Q?5oTg8TS1VIwdc/AEr1jnMzUGQtEXVdfTK1DIZ2xO4v8rCmWliHWbKgWCdPM/?= =?us-ascii?Q?j9Ysao35fynpYNscCeggO3dE2yAV3Q2Yg41DMtMpycm7ihf6uMSHwU14Yowv?= =?us-ascii?Q?YTpPXTf50D5CuhBltXUAd9eFmVZZziIjrpUjP4XVYRIk8rlT7BDqywvyB6kC?= =?us-ascii?Q?u2yV/WwprIPShyy0zXBPRO5jkv3infI3yxr6uzUF1EWXSY1tbJHtM5T4KgVT?= =?us-ascii?Q?qH3jMcCpKNl6hkuAYR2plSMRkYRQ4y4qowIm4KjoQE01UOuxVHqD64kC/CfK?= =?us-ascii?Q?8Cagu3nBYpB/iB0leZHIazFT4kzi6D02NtQdHA+nN6SVm//lbC+AmgPQS2f9?= =?us-ascii?Q?mg6huUyXZVvOuUzbEH2scl2lbqHwo/5VuRn8NqDJQ+718+qkHPb1XijWD+oZ?= =?us-ascii?Q?Gkgm51j5Wg5NVoTZAM5wW/cfvK07qCXRxTv9Y2Pxl5lHw8WQcqOe2lNK2Tnq?= =?us-ascii?Q?VPdbYMSmnoWVpl8GvdpPkHC7aW/tKxx2jyl8ppxQWyJWzKYNyaUtJ/thm6hs?= =?us-ascii?Q?wZIoNZdgAJTG1ajZKNYXfO9o3gXx0s9En0mnSc0ZBpkYa974IG5yiE6AboeY?= =?us-ascii?Q?c/K7a2l7FWm3O5JT4XadBkSYZhQv7QPjnMoexyYQD1LYgniJeJxE2+qAy3rm?= =?us-ascii?Q?jDneX3z0wTVNRULbN+kQQ3p2fCg4rp7bQkXAxaywisV4Xf6OcMvsNkursA1E?= =?us-ascii?Q?x+pYuFupH1Id4wTwwKcc4RpVaHkZbma21vfOIjADZXQP9DlCaiiLROwI4D48?= =?us-ascii?Q?e2iS9kmStBdgGbnT0Xuxbdcakz5fOGXMym5ZqXPAtSe9+pS+VSqE3hD8XQ1A?= =?us-ascii?Q?Xr/U/25Ad9yxpkYeaxZMMpBi4xdzzkmdZpJSc5DrVcYQlrhEOra4G6WKG8sP?= =?us-ascii?Q?94Y=3D?= X-Microsoft-Exchange-Diagnostics: 1; HE1PR0801MB1996; 5:YZi9C6kCaxWLw8qK/qXJb0gv+qWXhVB1QmIioi0qbm20JwZXlIVT+T2GMs8AyUuLPd5VPgCcE3rrURWHl33iLtvFGHNYvvYs8UQg+rWRzgYluOo5zPFAHe1v2OvwXp97nwB2LToioKM4BjGwp79xhAobEAHj/Etgn+dKV8kIXfZZsOX44ABo55diaQCk9ARvTAG//bW1GN9Y7PZXBxWQf4DOno+DpTtRygL19Rt5p5nK6FUCPfa7iCzazb076v4gKUmu+/1d1byUrxuvT0FYKt1kbiDB8Muhg89ZFVdg1po4dYlKbWvgNrOaLRo4tshvoZDD5v+uDlfphANNyAI+5eQDTKmglFwJi85Zh16snX2Fk1p/AIM6CNaKxpFBOp6rqYMVkbwh4rn5wcBLnmQk/LxcVyEX8HvlCD1RBTFGgffpdYjHG2/73OpFX8qfglDxFG4imSkjacdBuWHJppft8RQDpOayeWAcN1deIkgsLvXkyz9yC7lki+/DC5cvmDKH; 24:fJHKzAl0RQR+oFXemr52LjBPSO0KX771dzlLO8059ljmQP6UzbJXR7fXxQYsU8NslW/93JuPunC1HUXI11Wdiaaj74K9fmi5/jwJHjhPY/U= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; HE1PR0801MB1996; 7:lRHV8I5cve+r9Q0YCuU/cuU57guxVl2reNmgIQel32EE+6q+sZBlvWeivrbFyPEg5BXCuPEuEXrvBklyowsJkZMmKJk4N/Pb/mlST9EEe8AynE29eVPSc0mqWpzBKQoY9BKwOBYzX+f+WLewOsBGUTRRvUc5b704a8PCDNOsoxTOxH9YH+kJai0Ubx66BC1yadHSE+Z49wFVDGEXLzYXVuUVyl0rdR2v1TlvwSZehvWLMNvS9U14WkAjU1yjeBCFGkhW4wHjbVX9KVI63mK+7hnYRf9cMDTQpWySRr/ycpOjBLhKXZZJTokX1imVex53O++TGoGMsyrcQKfRHgOhoABHo0U3qju7w0U721AWF+tNwODZPDlJWqCtFN05I13nW3iwP4PBMSEdNSvJaPYMbIwA/qNo8R+gaP6aJppCk//46r7+5khnw9XTVYowrGQUR8F0sfYgRUyc9FBnKNk4YeGVd0FQ8gV2uGFBQ8KI5yP8qPmUy72V5D656esf57m4i1N7kRqJG/40L3/eU1xZ7O2ZykczH2R1BbAXiYXFjTstG0iEN2PnrvqC9DR6SMzu4/yXfr/VAVjvXkQzfdX1oe4Gab46DUbDLA0pTiEWH0tP0qTfdlzb8/JD+JAZDGZFaGKNhG9lkIK+i/kwNn9f0/ooQA+omNUC7DIpvj47qcevp+B358FwjCl+6Q4F0AW2OxXO15jLHC17JEqt48tic0TPxuJMG3cPtqA44gxeG+onzWOpNs99YZUa6R9QpB8D8tSYFYwSJ4l6lA41nKTXiWIW8BcshpeoBQ6cO3olugE= X-Microsoft-Exchange-Diagnostics: 1; HE1PR0801MB1996; 20:VnL2WkaTLd7XsyCdjNr/SPF3wUqKblV7c3zjKbQicTYRb+Uu7ZDXAvlVoGJ5F02d0jzBZ2kqwGQxWZPdz8Nwjituo6KEscEjTA9W39OiXVoVHZOvJwEdk9dJU1GSxUEUPZjcZ1JW3WODazXBB9UnIWEFRLQwERdFwJfU9EJm3xQ= X-OriginatorOrg: virtuozzo.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Aug 2017 14:19:36.5527 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR0801MB1996 X-detected-operating-system: by eggs.gnu.org: Windows 7 or 8 [fuzzy] X-Received-From: 104.47.0.132 Subject: [Qemu-devel] [PATCH v4 14/15] iotest 190: test BDRV_REQ_ALLOCATE 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, Anton Nefedov , den@virtuozzo.com, qemu-block@nongnu.org, mreitz@redhat.com Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: "Qemu-devel" Signed-off-by: Anton Nefedov --- tests/qemu-iotests/190 | 146 +++++++++++++++++++++++++++++++++++++++++++++ tests/qemu-iotests/190.out | 50 ++++++++++++++++ tests/qemu-iotests/group | 1 + 3 files changed, 197 insertions(+) create mode 100755 tests/qemu-iotests/190 create mode 100644 tests/qemu-iotests/190.out diff --git a/tests/qemu-iotests/190 b/tests/qemu-iotests/190 new file mode 100755 index 0000000..ad7162a --- /dev/null +++ b/tests/qemu-iotests/190 @@ -0,0 +1,146 @@ +#!/bin/env bash +# +# Test qcow2 BDRV_REQ_ALLOCATE requests +# +# Copyright (c) 2017 Parallels International GmbH +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . +## + +seq=`basename $0` +echo "QA output created by $seq" + +status=1 # failure is the default! + +_cleanup() +{ + _cleanup_test_img +} +trap "_cleanup; exit \$status" 0 1 2 3 15 + +# get standard environment, filters and checks +. ./common.rc +. ./common.filter + +_supported_fmt qcow2 +_supported_proto file +_supported_os Linux + +function do_io() +{ + $QEMU_IO "$@" | _filter_qemu_io |\ + sed -e 's/bytes at offset [0-9]*/bytes at offset XXX/g' +} + +CLUSTER_SIZE=64k +size=128M + +_make_test_img 1G + +echo +echo "== Test discarded cluster reuse ==" + +# allocate first two clusters +do_io -c "writev -P 1 0x8000 0x10000" "$TEST_IMG" +len=$(stat -c "%s" $TEST_IMG) + +# discard the 1st cluster on qcow2 level only +do_io -c "open -o pass-discard-request=off $TEST_IMG" -c "discard 0 0x10000" + +# new write will reuse the dirty host cluster and has to overwrite that +# with zeroes +do_io -c "writev -P 2 0x24000 0x8000" "$TEST_IMG" +if [ $len -ne $(stat -c "%s" $TEST_IMG) ] ; then + >&2 echo "Failed to reuse cluster" + exit 1 +fi + +echo +echo "== Test preallocation ==" + +function io_commands() +{ + echo "open -o prealloc-size=$((1024*1024)) blkdebug::$TEST_IMG" + + # Verify that intersections of a running preallocation and new requests + # is handled properly. + # + # 1. send a write #1 which triggers preallocation, suspend it in action + # 2. send a write #2 which intersects with the area being preallocated + # 3. using break/wait_break/resume, wait until write #2 is at least + # at WRITE_AIO tracepoint. + # Then it is supposed to enter pwrite(bs->child) and start waiting + # for #1 to finish + # 4. resume #1 + +cat <