From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id D448CCDB465 for ; Mon, 16 Oct 2023 15:44:46 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233586AbjJPPop (ORCPT ); Mon, 16 Oct 2023 11:44:45 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:57488 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231782AbjJPPom (ORCPT ); Mon, 16 Oct 2023 11:44:42 -0400 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id CE692FC for ; Mon, 16 Oct 2023 08:43:57 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1697471037; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=V1DWs7G/YNvwjIkj//GgTeCe+CoKdcgoYTiVkIFc0d0=; b=QGRTRXdRk157/ZT7FxLpdFmKubfG9ErtnHp//O93mLDR/szsIe3BzUGPhUdxdS8gpnRoEV Qujpe/2pfEBHmTvkf1LbrXqy3gHblPqL6ajZm/0DMY0yOQ4gcPCx+1NPKwZQsOE6tIa4Di NwEuyNEz8W91SkzkF2Y/8EtrDS7cAKc= Received: from mail-qk1-f197.google.com (mail-qk1-f197.google.com [209.85.222.197]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-136-4NrUwaxhMA2yluUNmX1tRw-1; Mon, 16 Oct 2023 11:43:45 -0400 X-MC-Unique: 4NrUwaxhMA2yluUNmX1tRw-1 Received: by mail-qk1-f197.google.com with SMTP id af79cd13be357-7740517a478so579004885a.3 for ; Mon, 16 Oct 2023 08:43:45 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1697471025; x=1698075825; h=mime-version:message-id:date:references:in-reply-to:subject:cc:to :from:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=V1DWs7G/YNvwjIkj//GgTeCe+CoKdcgoYTiVkIFc0d0=; b=YQ9v56MqORPwAOwpALo6ov2z4GHFWkcj9svbwWe1nnI7rIHeJFfY5Q0w+3oblT7U6r g0npyb2Lj7qX2BoUfK1A/CC/JQ6YKOgq3FWALaN5A+nKWfOxLPMjs5Ux9vHRB3+lGswa q2lQ2S77g8+HMrggrNXyWxKBhZ35lnmJL9mK6Vqx+yNBiR2Y/fX+iFJlIT0wdpQIwKOj kCCK2hcU73BDkHXjQXHGgDnqMi1NsuDc2YSkxebDt//AOt+mXSaF5CMfmiIxC4ALQ1Cr 0sIT82AGyj0/kUS+I3i7i3jb3z6740EkzEkprYFBIZfVkI7JFA8+zvQZHdoo1HTOdiDA ASCg== X-Gm-Message-State: AOJu0YwD6fVizS4udH4RWMweBcRHfmMM4ktCLx4OLuvtcmCVDMoX3G01 jmSrG+QY8EdlfT+wyCYgRT/KB05GO6KtG2KK9A/04hE/ukYAdIehKgoQgq3Jk9dNq7rvwLmw0TV q2gddoQMfWyLmdKE+IiRSWSX5YNVIIq+XaC3GyNQsB1MEhID5t3BSQ1VHWeDUtMjwd1OsS1LDUW KD6HzN6HrE X-Received: by 2002:a05:620a:1c:b0:774:131c:854d with SMTP id j28-20020a05620a001c00b00774131c854dmr31678709qki.72.1697471025336; Mon, 16 Oct 2023 08:43:45 -0700 (PDT) X-Google-Smtp-Source: AGHT+IG0tKGPjNcVT72ABcCfpkfaoq/Ctigl+iVtmHFYtOkaGS1t2ELTeuV5IkevG9HZ1qpH0IOf5A== X-Received: by 2002:a05:620a:1c:b0:774:131c:854d with SMTP id j28-20020a05620a001c00b00774131c854dmr31678687qki.72.1697471025012; Mon, 16 Oct 2023 08:43:45 -0700 (PDT) Received: from fedora (g2.ign.cz. [91.219.240.8]) by smtp.gmail.com with ESMTPSA id a4-20020a05620a16c400b0076ef0fb5050sm3098399qkn.31.2023.10.16.08.43.43 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 16 Oct 2023 08:43:44 -0700 (PDT) From: Vitaly Kuznetsov To: Sean Christopherson Cc: Maxim Levitsky , kvm@vger.kernel.org, Paolo Bonzini , linux-kernel@vger.kernel.org Subject: Re: [PATCH RFC 07/11] KVM: x86: Make Hyper-V emulation optional In-Reply-To: References: <20231010160300.1136799-1-vkuznets@redhat.com> <20231010160300.1136799-8-vkuznets@redhat.com> <708a5bb2dfb0cb085bd9215c2e8e4d0b3db69665.camel@redhat.com> <87h6mq91al.fsf@redhat.com> Date: Mon, 16 Oct 2023 17:43:42 +0200 Message-ID: <877cnm8te9.fsf@redhat.com> MIME-Version: 1.0 Content-Type: text/plain Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Sean Christopherson writes: > On Mon, Oct 16, 2023, Vitaly Kuznetsov wrote: >> Maxim Levitsky writes: >> ... >> > >> > "Provides KVM support for emulating Microsoft Hypervisor (Hyper-V). > > I don't think we should put Hyper-V in parentheses, I haven't seen any documentation > that calls it "Microsoft Hypervisor", i.e. Hyper-V is the full and > proper name. Ha :-) From https://lore.kernel.org/linux-hyperv/1696010501-24584-1-git-send-email-nunodasneves@linux.microsoft.com/ """ This series introduces support for creating and running guest machines while running on the Microsoft Hypervisor. [0] ... [0] "Hyper-V" is more well-known, but it really refers to the whole stack including the hypervisor and other components that run in Windows kernel and userspace. """ I'm fine with keeping the staus quo though :-) > >> > This makes KVM expose a set of paravirtualized interfaces, > > s/makes/allows, since KVM still requires userspace to opt-in to exposing Hyper-V. > >> > documented in the HyperV TLFS, > > s/TLFS/spec? Readers that aren't already familiar with Hyper-V will have no idea > what TLFS is until they click the link. > >> > https://docs.microsoft.com/en-us/virtualization/hyper-v-on-windows/reference/tlfs, >> > which consists of a subset of paravirtualized interfaces that HyperV exposes > > We can trim this paragraph by stating that KVM only supports a subset of the > PV interfaces straightaway. > >> > to its guests. > > E.g. > > Provides KVM support for for emulating Microsoft Hyper-V. This allows KVM to > expose a subset of the paravirtualized interfaces defined in Hyper-V's spec: > https://docs.microsoft.com/en-us/virtualization/hyper-v-on-windows/reference/tlfs. LGTM, thanks! > >> > >> > This improves performance of modern Windows guests. > > Isn't Hyper-V emulation effectively mandatory these days? IIRC, modern versions > of Windows will fail to boot if they detect a hypervisor but the core Hyper-V > interfaces aren't supported. > It's rather a rule of thumb: normally, modern Windows and Hyper-V versions (Win10/11, WS2019/22) boot and pretend to work but without Hyper-V enlightenment it's not uncommon to see a blue screen of death because of a watchdog firing. It's hard to say for sure as things keep changing under the hood so even different builds can behave differently; pretending we're a genuine Hyper-V was proven to be the most robust approach. -- Vitaly