From patchwork Tue Mar 13 14:53:43 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Alexey Perevalov X-Patchwork-Id: 885157 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; dmarc=fail (p=none dis=none) header.from=samsung.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=samsung.com header.i=@samsung.com header.b="d8REsZDs"; 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 400yct5tTGz9s70 for ; Wed, 14 Mar 2018 01:57:18 +1100 (AEDT) Received: from localhost ([::1]:40330 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1evlMa-0005wn-LN for incoming@patchwork.ozlabs.org; Tue, 13 Mar 2018 10:57:16 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:59136) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1evlJV-0003N0-AS for qemu-devel@nongnu.org; Tue, 13 Mar 2018 10:54:06 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1evlJU-0001N9-F8 for qemu-devel@nongnu.org; Tue, 13 Mar 2018 10:54:05 -0400 Received: from mailout1.w1.samsung.com ([210.118.77.11]:45233) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1evlJU-0001Md-7n for qemu-devel@nongnu.org; Tue, 13 Mar 2018 10:54:04 -0400 Received: from eucas1p2.samsung.com (unknown [182.198.249.207]) by mailout1.w1.samsung.com (KnoxPortal) with ESMTP id 20180313145402euoutp01f86affd88762ee18f87879801baf8e25~bgo1QjJ1U1999619996euoutp01V; Tue, 13 Mar 2018 14:54:02 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 mailout1.w1.samsung.com 20180313145402euoutp01f86affd88762ee18f87879801baf8e25~bgo1QjJ1U1999619996euoutp01V DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=samsung.com; s=mail20170921; t=1520952842; bh=RZ3YQO8vI4GFk321mKJ37loxdLdF22WUk735qQZgOds=; h=From:To:Cc:Subject:Date:In-reply-to:References:From; b=d8REsZDsmJpF+nqMeovw5xxDrv2WW6L1Mc7X4YmDilzpa3StGKrzoEdWUsdMX9O69 VpyJekJoBR3KtnzJej7tfq3Ik0qi8SqFumC6Vxq0LcpAaMhyIPcPjGEtvy8AkHslTh 9iHUZtKaxl5hsYjvMKhU8L+IW7V15rxdkkffJFQE= Received: from eusmges3new.samsung.com (unknown [203.254.199.245]) by eucas1p2.samsung.com (KnoxPortal) with ESMTP id 20180313145401eucas1p2d0905997a67d533307a1e2d6ec8c9a8e~bgo0bV5v52045620456eucas1p2H; Tue, 13 Mar 2018 14:54:01 +0000 (GMT) Received: from eucas1p1.samsung.com ( [182.198.249.206]) by eusmges3new.samsung.com (EUCPMTA) with SMTP id DF.8D.10409.906E7AA5; Tue, 13 Mar 2018 14:54:01 +0000 (GMT) Received: from eusmgms1.samsung.com (unknown [182.198.249.179]) by eucas1p2.samsung.com (KnoxPortal) with ESMTP id 20180313145401eucas1p2c8318df482b41e0c9d075b9b65d19b68~bgozv-8nw2044820448eucas1p2I; Tue, 13 Mar 2018 14:54:00 +0000 (GMT) X-AuditID: cbfec7f5-b45ff700000028a9-89-5aa7e6097174 Received: from eusync3.samsung.com ( [203.254.199.213]) by eusmgms1.samsung.com (EUCPMTA) with SMTP id 42.18.04178.806E7AA5; Tue, 13 Mar 2018 14:54:00 +0000 (GMT) Received: from aperevalov-ubuntu.rnd.samsung.ru ([106.109.129.199]) by eusync3.samsung.com (Oracle Communications Messaging Server 7.0.5.31.0 64bit (built May 5 2014)) with ESMTPA id <0P5J00AR2APOJ400@eusync3.samsung.com>; Tue, 13 Mar 2018 14:54:00 +0000 (GMT) From: Alexey Perevalov To: qemu-devel@nongnu.org, dgilbert@redhat.com Date: Tue, 13 Mar 2018 17:53:43 +0300 Message-id: <1520952824-3172-6-git-send-email-a.perevalov@samsung.com> X-Mailer: git-send-email 2.7.4 In-reply-to: <1520952824-3172-1-git-send-email-a.perevalov@samsung.com> X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFtrFIsWRmVeSWpSXmKPExsWy7djPc7qcz5ZHGew/I2Ux9+55FouVk5cw WfRuu8ducWLTQWaLTw1SFlv2f2O3ON67g8XizpY+JovTNzezO3B6HHixkN3jybXNTB7v911l 8+jbsooxgCWKyyYlNSezLLVI3y6BK+Pc327GgveCFW0v77A0MC7h62Lk5JAQMJG4u3Y3Sxcj F4eQwApGiZYT06Gcz4wS275NYYWpWnvsMytEYhmjRNe2N0wQTjeTxNUXi9m7GDk42AQMJPbd swUxRQT0JCZcjQQpYRbYyCix8857FpBBwgJBEve7VjCD2CwCqhKnFi9gB7F5Bdwkju6dywKx TE7i5rlOZpA5nALuEiu6SkDmSAhMYJPo2n0T6iAXibY5J6FsYYlXx7ewQ9gyEp0dB5kgGtoZ Je5uvMoK1c0osW7yMWaIKnuJUzevMoHYzAJ8EpO2TQfbJiHAK9HRJgRR4iHRuOwV1AJHia3N fdBgmcUosf7Ha9YJjFILGBlWMYqnlhbnpqcWG+ellusVJ+YWl+al6yXn525iBMbo6X/Hv+5g 3Pcn6RCjAAejEg8vw4XlUUKsiWXFlbmHGCU4mJVEeHMeAIV4UxIrq1KL8uOLSnNSiw8xSnOw KInzxmnURQkJpCeWpGanphakFsFkmTg4pRoYbxUsTykUK+t8W7t0eq1jt1aBEGtO7UGLynMS H8ye/7gl1rWNJ2fyaVsWe6FiERu+ZXzTJscVXLw77dyDSAHxWWbla1yWnmE8HlNheHKO4nz2 xcuWT8k2ZJF41rzsO2f9lKM3YidmuBzxvHCvoVGn0TxPpdT4z528snCuu8IX5aLDbi1fWP9O iaU4I9FQi7moOBEAqfh5780CAAA= X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFupiluLIzCtJLcpLzFFi42I5/e/4VV2OZ8ujDHobbSzm3j3PYrFy8hIm i95t99gtTmw6yGzxqUHKYsv+b+wWx3t3sFjc2dLHZHH65mZ2B06PAy8Wsns8ubaZyeP9vqts Hn1bVjEGsERx2aSk5mSWpRbp2yVwZZz7281Y8F6wou3lHZYGxiV8XYycHBICJhJrj31m7WLk 4hASWMIo0X38AJTTyyRx4v5Z9i5GDg42AQOJffdsQUwRAT2JCVcjQUqYBTYySvyacZcVZJCw QIDE7323GUFsFgFViVOLF7CD2LwCbhJH985lgVgmJ3HzXCczyBxOAXeJFV0lIGEhoJKds/6y T2DkWcDIsIpRJLW0ODc9t9hQrzgxt7g0L10vOT93EyMwhLYd+7l5B+OljcGHGAU4GJV4eFec XR4lxJpYVlyZe4hRgoNZSYQ35wFQiDclsbIqtSg/vqg0J7X4EKM0B4uSOO95g8ooIYH0xJLU 7NTUgtQimCwTB6dUA2OGp1VvzrbKylfckrv99iodfs/MdcO0WOTX7r8P1osc09soetY8xzvS fvde6Xt5WQ8+6KpvSOA4GHT7f0x7YvqHj/yR2oYWarlTuILvSjyerDBDWj4q/NWH5fKLN91a pWAtze6hYnRjkpVI6uoD7F+DlglduXPLc/H8NwaLD2pGnkq8fNlk5TYlluKMREMt5qLiRADF 1MWlHQIAAA== X-CMS-MailID: 20180313145401eucas1p2c8318df482b41e0c9d075b9b65d19b68 X-Msg-Generator: CA CMS-TYPE: 201P X-CMS-RootMailID: 20180313145401eucas1p2c8318df482b41e0c9d075b9b65d19b68 X-RootMTR: 20180313145401eucas1p2c8318df482b41e0c9d075b9b65d19b68 References: <1520952824-3172-1-git-send-email-a.perevalov@samsung.com> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x [fuzzy] X-Received-From: 210.118.77.11 Subject: [Qemu-devel] [PATCH v1 5/6] migration: add blocktime calculation into migration-test 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: lvivier@redhat.com, v.kuramshin@samsung.com, quintela@redhat.com, ash.billore@samsung.com, Alexey Perevalov , peterx@redhat.com, f4bug@amsat.org Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: "Qemu-devel" This patch just requests blocktime calculation, and check it in case when UFFD_FEATURE_THREAD_ID feature is set on the host. Reviewed-by: Dr. David Alan Gilbert Signed-off-by: Alexey Perevalov Reviewed-by: Juan Quintela Signed-off-by: Juan Quintela --- tests/migration-test.c | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/tests/migration-test.c b/tests/migration-test.c index 74f9361..259acfb 100644 --- a/tests/migration-test.c +++ b/tests/migration-test.c @@ -26,6 +26,7 @@ const unsigned start_address = 1024 * 1024; const unsigned end_address = 100 * 1024 * 1024; bool got_stop; +static bool uffd_feature_thread_id; #if defined(__linux__) #include @@ -55,6 +56,7 @@ static bool ufd_version_check(void) g_test_message("Skipping test: UFFDIO_API failed"); return false; } + uffd_feature_thread_id = api_struct.features & UFFD_FEATURE_THREAD_ID; ioctl_mask = (__u64)1 << _UFFDIO_REGISTER | (__u64)1 << _UFFDIO_UNREGISTER; @@ -223,6 +225,16 @@ static uint64_t get_migration_pass(QTestState *who) return result; } +static void read_blocktime(QTestState *who) +{ + QDict *rsp, *rsp_return; + + rsp = wait_command(who, "{ 'execute': 'query-migrate' }"); + rsp_return = qdict_get_qdict(rsp, "return"); + g_assert(qdict_haskey(rsp_return, "postcopy-blocktime")); + QDECREF(rsp); +} + static void wait_for_migration_complete(QTestState *who) { while (true) { @@ -522,6 +534,7 @@ static void test_migrate(void) migrate_set_capability(from, "postcopy-ram", "true"); migrate_set_capability(to, "postcopy-ram", "true"); + migrate_set_capability(to, "postcopy-blocktime", "true"); /* We want to pick a speed slow enough that the test completes * quickly, but that it doesn't complete precopy even on a slow @@ -548,6 +561,9 @@ static void test_migrate(void) wait_for_serial("dest_serial"); wait_for_migration_complete(from); + if (uffd_feature_thread_id) { + read_blocktime(to); + } g_free(uri); test_migrate_end(from, to, true);