From nobody Wed Nov 5 22:37:45 2025 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; dmarc=fail(p=none dis=none) header.from=virtuozzo.com Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1537520459729953.0009901218518; Fri, 21 Sep 2018 02:00:59 -0700 (PDT) Received: from localhost ([::1]:54617 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1g3HJ1-0002D1-50 for importer@patchew.org; Fri, 21 Sep 2018 05:00:55 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:49018) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1g3Ghu-0006gu-T5 for qemu-devel@nongnu.org; Fri, 21 Sep 2018 04:22:35 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1g3Ght-0001ox-Tb for qemu-devel@nongnu.org; Fri, 21 Sep 2018 04:22:34 -0400 Received: from mail-eopbgr70117.outbound.protection.outlook.com ([40.107.7.117]:46849 helo=EUR04-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 1g3Ght-0001gn-Er for qemu-devel@nongnu.org; Fri, 21 Sep 2018 04:22:33 -0400 Received: from rkaganb.sw.ru (185.231.240.5) by AM0PR08MB3588.eurprd08.prod.outlook.com (2603:10a6:208:e1::30) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1143.18; Fri, 21 Sep 2018 08:22:29 +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:X-MS-Exchange-SenderADCheck; bh=Umm7zqALZepBA3r39fFbRfOAgcpGqt8dAEBvVAI/jo4=; b=JJ4OGoysERCB97Y8iDGJTQLSUKNh3oiuzL+2y2+nmR3X3nx74fSQO6UcnuJUUCTvzrZAycxwpvjaTTQ1RWXcmnhqRxmGN8JiPnGH+2bQxI1dj7/8XLeyRbCBTZqWi8myrcfnQDVzt2w9rTgr+SNkCp1tJIr6g07yLbUzPTmSGAo= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=rkagan@virtuozzo.com; From: Roman Kagan To: qemu-devel@nongnu.org Date: Fri, 21 Sep 2018 11:22:08 +0300 Message-Id: <20180921082217.29481-2-rkagan@virtuozzo.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180921082217.29481-1-rkagan@virtuozzo.com> References: <20180921082217.29481-1-rkagan@virtuozzo.com> MIME-Version: 1.0 X-Originating-IP: [185.231.240.5] X-ClientProxiedBy: VI1P193CA0003.EURP193.PROD.OUTLOOK.COM (2603:10a6:800:bd::13) To AM0PR08MB3588.eurprd08.prod.outlook.com (2603:10a6:208:e1::30) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 968f7b65-c6e3-4372-9416-08d61f9b5f9b X-Microsoft-Antispam: BCL:0; PCL:0; RULEID:(7020095)(4652040)(8989299)(4534165)(4627221)(201703031133081)(201702281549075)(8990200)(5600074)(711020)(2017052603328)(7153060)(7193020); SRVR:AM0PR08MB3588; X-Microsoft-Exchange-Diagnostics: 1; AM0PR08MB3588; 3:HcIkK/9II73fi1YeK0YggBfT9/7S2Sp/x5Ues0+ogvrwRg+4HChxiXUOUkAkni/hHozyIjCGzFiiVxhnj1LHDsYm35Z9HAYIzTuDSSTPuDBJRxyjFpx+m3xh3HKw0/MtN6TNsXs0zF+VTFcKbraFuYBGE+eW28Z0E5sEye8MiGcXkNVe7SACL0zs28uYbEyUX/IYu+FFbQhJTwq57g+3A+U+kFyc+nfo00ZTBIkUMqlxGEZdAJlaiHVLCjPVUeIb; 25:9Xgf3RSg3TYSZrm9ryL1mjiBZxG1z92bFOK45HHuIn0TvSfPBF2XxzMmKJF71jQ1WWS1N0wU3Rg9v3BS7gpyRi1ZhzpFXSIEDWmqF3/C1Cv6QMJQwdW1jo0bxQeio5gqXiKmZrbQCC4aL57elYkd2jhU6JV9IKH1QMNLl+VUONlM2TP6I0zdVZkG41YvKE7xbTbSx3IROtbjJb/yxFERR2bkmJk7RjAZjqsmTdl9nlXeanegumhzt/IYIs9kcm9kKivjqagIziI/uzj8ZO3whsaksUfTpZfzZ6+L486sViEKiYtDEL4KXlgonLc9wSO0coQohr3RoH31u9hB18C8iA==; 31:1yN2ooiH3wSXEdTYxuxsQnY92NdBztDP6VQySU3pLro4qwWT81g8oVPV+twWeeAtGa+CdjNgYiegMkMdsADVl8gVu7pC8DHH7bGFkCcUuxw+qAoYb34fSaf3ztLMISA9oaThcBfqNuGU8dqU6sa2PHoBs2IhmCMzX29gC4Gr0MBV8HEiuB7RHaj08edzRHMT4Dw5QfzqK/vfb3CycP45yNy+7lcGhk3IVyTdiaFRSJE= X-MS-TrafficTypeDiagnostic: AM0PR08MB3588: X-Microsoft-Exchange-Diagnostics: 1; AM0PR08MB3588; 20:EZXOrtDGzw703F5v+1fEgi4b6u9m51wLx9DZHbmvRufj0SC4hrY/pzACW9G83R+i525zsl2Qrr0CN5Yd+AX050GmIAZeKT/eSfThh5LGmCEg/Bh1OjuaDdMpw4o3RFccMwsYBaaEeExldtleSfhSYiYzqg5CCicjKUXWSHpAAxI0xJceU1whOJEWSLZ6d8TseN1IR//SDpxQqrJ6yFiXjLs/WLjW8TEypnlNGv73X12qnqO7vRgR3dsHRyAYuxcvydfn2gFqlIn+vzwibqSAcK0ohqptuLJFwATV5nuOsK4R3B8SX5hyZ6yfzqrsFf+mdFfoi3w9KqlvhH2wKgxElnpC2sJdNCjA3N5gIgaIAMIGXXVRltnUIaUyr7xhaTqTfSMIH9pC0f4n68kuDu1ZGY84TBRfrTN+jz0ouQzb0kyzx3IOB2beT0Ss6UJbr9daDDba9aeYe5oAavc+hVsmjyBOw0UEKpcMfJfddE1WQ+r0ZPAuvCIwcy8M7AZhq0Fk; 4:fTGSmzlO9KH7y1wXGVWYerVeMNeF2OOEZufyh8hzfiClE6Sb1xKyeWeffNloOkQEv4lDBP8CyYfzu7vMCX6K7Z5iv1mbMELfyMJIeTlYv8fJGxKb6ruD+ZDGhFt92mtVyQjhhkH1cw7CkWV911Blw3Z8RnVVfL53qYbaMdFAmQmE7DtHlO88QfDwa2dfKC2+5+5lhSCn0KYESLcFFQ8Awx4kbxLCozvCSUZVAQqtMglMvLDhJmGynWqfIvaKHQ0azJIB5u8xTzZ6vEkBnaNnHQ== X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-MS-Exchange-SenderADCheck: 1 X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040522)(2401047)(8121501046)(5005006)(93006095)(93001095)(3231355)(944501410)(52105095)(10201501046)(3002001)(149027)(150027)(6041310)(20161123558120)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123562045)(20161123560045)(20161123564045)(201708071742011)(7699051); SRVR:AM0PR08MB3588; BCL:0; PCL:0; RULEID:; SRVR:AM0PR08MB3588; X-Forefront-PRVS: 0802ADD973 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10019020)(346002)(136003)(396003)(39850400004)(366004)(376002)(189003)(199004)(6916009)(16526019)(5660300001)(36756003)(3846002)(54906003)(48376002)(6506007)(476003)(486006)(52116002)(446003)(1076002)(76176011)(386003)(51416003)(186003)(6116002)(16586007)(2906002)(66066001)(6512007)(7416002)(50226002)(53936002)(25786009)(106356001)(53416004)(81166006)(47776003)(316002)(956004)(11346002)(2616005)(7736002)(8936002)(305945005)(8676002)(2351001)(105586002)(97736004)(4326008)(86362001)(6666003)(68736007)(478600001)(6486002)(2361001)(50466002)(26005)(69596002)(81156014); DIR:OUT; SFP:1102; SCL:1; SRVR:AM0PR08MB3588; H:rkaganb.sw.ru; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1; 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; AM0PR08MB3588; 23:epmtZm8tGbvP9QTKgcpOXHv1sic53EHsBXNqIEqpm?= =?us-ascii?Q?/R4jNji1oFKtHA2oINZMFTppgv2YhSraTBGHwNB3AmLwZSYl21INZTMDDoWz?= =?us-ascii?Q?S8AjkInlhPXexUXtvB0EsD1LmO+ROooohymUHkz5Jc8aNNT50DHdF0ghboCQ?= =?us-ascii?Q?hjcYVQzREruqI45+cbxM+LmECrzDIfOg/pnB7xo/taha1HKXwQZSZcnoAidH?= =?us-ascii?Q?KtiH4xeNoBTo5g4cL5vE/3TG/pC7ab+FAu/yv5zr3LWFKr5PcWjaYyDxCroT?= =?us-ascii?Q?fEJ0VsMPpcOBQUX75dW4IZ+9MpiSzaJkweCXMuczpn34zPeMK8wy4lnTD2Md?= =?us-ascii?Q?uUhdW8EcWKdZH6nZ4Gtyi+waUzeL5HN/RG2dIZ7Kdqi4k3ptLGjEJd+AZY2T?= =?us-ascii?Q?hB6aaFJft+qa7FG/+byxwwE0X5VjqxUS3ck9EEizjNjkxMJpLpmASP6kLOj7?= =?us-ascii?Q?0H3lQMX1QfC78PygpptnX5grYxU4MynkCScEIy4kKgeIOPcEHcZVyU1IRrrB?= =?us-ascii?Q?8/thc1xZMDgsMzk+sGS7OrbB1JBmkIFm/S0JaXscXADlH4XgGBoCz/PgKMGk?= =?us-ascii?Q?GNOyhH9iahxPA7VZ1iR96hxOzqGuGfbhyIYOQz8iH+zWxVgFYp6IMP6EPF2I?= =?us-ascii?Q?qLBJzj4LkJ1At/I1ivpQ8ItBuNu7AyeL6mckWaWOBQOdHZPVcQEAR1hCpByh?= =?us-ascii?Q?ktfyiSb4H8tbIl6xMVYkxDNl7anZojr6/CMshiOR7uZfd9p6rZePXEApMBGU?= =?us-ascii?Q?+qW9QYKrhzQ6fmuJ6RTl38tYjKl/41ql5mBSUOEd3Y0C9pQZM6lI2cwUSVbH?= =?us-ascii?Q?GFZ6jyHG1AUYsaE+hEr54p8pcqbd1wAIrPW37ectHtPinmyy/G4zGuhbA7Cx?= =?us-ascii?Q?XfJpq0rUeVHACvgp1xviwZttTwRpNOFdS+uotFoQPwEmPB09VIMcZOtQSAqp?= =?us-ascii?Q?8CA5FrO2OcqwbmoG2flPib6xtrlro5W2KTardFvbCbGxD5djVQJT0LsV9nog?= =?us-ascii?Q?27rK/2Zy2vHY7y+gx3S5aEXZvzhh/5saAXx1t8FvBH5Kg5HUNUWTrDTIqNvM?= =?us-ascii?Q?NWugE+Hjy5sI2OWxrJevofpqZhiwzs2picrnHlnEftQ/AHvVSni1hGKvqMAU?= =?us-ascii?Q?cRYGRsrawbMI8zEfSofVlQ7rSmdgPJJA6fh43t7JrFxc8AAoQNva1lzoqPXT?= =?us-ascii?Q?c4RIEp4iKo9Mn1IV/DaVuDktp7hYdyqbbvLNYvIAwQ5ZrtZar8cH4IX+CSmj?= =?us-ascii?Q?Euklei+YX5DKKevBStJ64pNor0kMDZI+Vh/4GPUN4CIxYshfqNQIAVsVUOuc?= =?us-ascii?Q?Hx1/lfjWZrWD12+HNnH3HU=3D?= X-Microsoft-Antispam-Message-Info: Buys/n0Wz2GjGn0C0y86ujzBraM6ZKnCOGAsmdYoYAVd9H2R3qqW/HTTKmgYHlIF68D94Ato6vXmXtv/xkydzJdhWOQHdzdJ5ZyYr8zj3Xe0K5vuUS1cRK0LdyReINh8pbqA7OdGc5vuhbU7F6vWUXRy7++Z5p7FxMRnmN/8/W6bFQMJ43sv9ntXjEtoRZgLC64zwRex58iNDJu3Np2bksipH9DFlcK8L3wtiRKNTbYIjS+ibRKFafb4KsvPcZEMs0igrzSgL9UVSRH2yo4hOq3zIDCBriXO2P8dBPYAfHRuoXmdXxT9muADY66eaw5fDfEjCwe2wSCybhAEKMgY03IrN0PG9g7Pz2QIhlYf8P4= X-Microsoft-Exchange-Diagnostics: 1; AM0PR08MB3588; 6:geC8oMkS+CEDc2TczWP5ycJs9iij9Uh+YwftXYT6LP83izNM8JoMDk/SnwuWcTv4msXU5cCndQkbc8AB3Wqva+M9tuhDjfxhViHip1jmtuvKSRUBJ7H+d4RST6ZnjNCiTw8wweGyoSRMO0OqIHZoS4pArHsOk5tpfp/13ZQBeUPAI8suU/2kbERclrUUXo8xrK+VsRDgLUoC2wSrZY6ceY4Mx1fubCr4BqVcQDnb8QBu7y9cIsj0RI+CHXferhLPQr5n1XwJp4GJn8dspo6Q4/YXjUFGP8Qf+S8tBcQ1DN0pkXngvUOZwuRPlk1/BOqTO3S2ETDJCJ4ESPtQ24A9Q/pLt7jA4c+NDJJnQtajcn1DBCPRygKllUEIDEoALNxFKlRiIziQWW/te6W4KhxHmnhMTrsHAnK7lwBr2wgJVhi90+/fwWdLSlpUGHS3OCv26mndY3XFjaJqJuMdnAPLAw==; 5:yV8GXmiWU5KvNAp5+eXDVbkyNT7CvxKhku6XBumDSTKKcJ/1cLc2VTuYPKWOdsBkdqY3BIpFWeqG+Ehu5cp8FiXOhC1/jHiCNVIug06iuVH06kPsvWAfCTOIgFQtMz1k9WxtM+3aobQiyHmgFkndT5Zxc4dtRQvb9yYKxa9HEAQ=; 7:E5djL1NDK8MH4Dan4FuD4io1HoJ8KILpZseG6XTS8lKqKYRAWJ6MGXDH9ZUihOuO/+ZlYdH8yowXrJLhNYZVsPr7iSSttLwvIKI97t8INyIU44eLCq05o0ltUWbwghjxMpyUwu7042/AMMEUBfzlu6VWSgd3nwTuQEXJ6sxJlUWrPErQjmLkqPt4D7ygthJb/Uot9sppVmP0lulAMlYSOZ6PmQEoqpbONboBb9dJHosHxmEMUiX8eDy7HVkZNAQX SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; AM0PR08MB3588; 20:FxkV2i6IvUEVsVDgCdBFbwYJsoYJGf6+XK8mTh6QlJVeHe0iBeLLWNER8KEGzDAxxE5GNS7j4h6TLyaaTv54SavMEav8iHKni2XjegvCPdXLPe5KC6a9SgWD7/974vb+/X+3jhj2IoKCertQye4yQXPPK8YuuWtV83ZDDB6fh/c= X-OriginatorOrg: virtuozzo.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Sep 2018 08:22:29.2837 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 968f7b65-c6e3-4372-9416-08d61f9b5f9b X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 0bc7f26d-0264-416e-a6fc-8352af79c58f X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR08MB3588 X-detected-operating-system: by eggs.gnu.org: Windows 7 or 8 [fuzzy] X-Received-From: 40.107.7.117 Subject: [Qemu-devel] [PATCH 01/10] hyperv:synic: split capability testing and setting 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: Vijayabhaskar Balakrishna , Eduardo Habkost , Konrad Rzeszutek Wilk , "Michael S. Tsirkin" , Venu Busireddy , Liran Alon , Paolo Bonzini , Si-Wei Liu , Igor Mammedov , Boris Ostrovsky , Karl Heubaum Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZohoMail: RDMRC_1 RDKM_2 RSF_0 Z_629925259 SPT_0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Put a bit more consistency into handling KVM_CAP_HYPERV_SYNIC capability, by checking its availability and determining the feasibility of hv-synic property first, and enabling it later. Signed-off-by: Roman Kagan --- target/i386/kvm.c | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/target/i386/kvm.c b/target/i386/kvm.c index 892d4f46c1..8d956da5d1 100644 --- a/target/i386/kvm.c +++ b/target/i386/kvm.c @@ -734,8 +734,9 @@ static int hyperv_handle_properties(CPUState *cs) } if (cpu->hyperv_synic) { if (!has_msr_hv_synic || - kvm_vcpu_enable_cap(cs, KVM_CAP_HYPERV_SYNIC, 0)) { - fprintf(stderr, "Hyper-V SynIC is not supported by kernel\n"); + !kvm_check_extension(cs->kvm_state, KVM_CAP_HYPERV_SYNIC)) { + fprintf(stderr, "Hyper-V SynIC (requested by 'hv-synic' cpu fl= ag) " + "is not supported by kernel\n"); return -ENOSYS; } =20 @@ -753,12 +754,14 @@ static int hyperv_handle_properties(CPUState *cs) =20 static int hyperv_init_vcpu(X86CPU *cpu) { + CPUState *cs =3D CPU(cpu); + int ret; + if (cpu->hyperv_vpindex && !hv_vpindex_settable) { /* * the kernel doesn't support setting vp_index; assert that its va= lue * is in sync */ - int ret; struct { struct kvm_msrs info; struct kvm_msr_entry entries[1]; @@ -767,7 +770,7 @@ static int hyperv_init_vcpu(X86CPU *cpu) .entries[0].index =3D HV_X64_MSR_VP_INDEX, }; =20 - ret =3D kvm_vcpu_ioctl(CPU(cpu), KVM_GET_MSRS, &msr_data); + ret =3D kvm_vcpu_ioctl(cs, KVM_GET_MSRS, &msr_data); if (ret < 0) { return ret; } @@ -779,6 +782,15 @@ static int hyperv_init_vcpu(X86CPU *cpu) } } =20 + if (cpu->hyperv_synic) { + ret =3D kvm_vcpu_enable_cap(cs, KVM_CAP_HYPERV_SYNIC, 0); + if (ret < 0) { + error_report("failed to turn on HyperV SynIC in KVM: %s", + strerror(-ret)); + return ret; + } + } + return 0; } =20 --=20 2.17.1