Received: by 2002:a25:e74b:0:0:0:0:0 with SMTP id e72csp1973748ybh; Tue, 14 Jul 2020 12:02:34 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzfuJjyJvCBJRlQKFpLzvnT9aDp8fMgv/Oy1MZJbKylNcNtqY2rcIBoQLH0VyCiGNGFvutk X-Received: by 2002:a50:8e53:: with SMTP id 19mr6129878edx.185.1594753354722; Tue, 14 Jul 2020 12:02:34 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1594753354; cv=none; d=google.com; s=arc-20160816; b=rJmRoqmEwhcp8bk1p46fDZfMqmr9KYA/Bt8dKdJkFjazFBym9HahPhT5gb84efIiMy dqI+Npq87jqK6M7OnEtHk4MN5cUCzPkxEVbCP9xgI7SSHf/s5F1p/7DzdUgnwgHkaxoS 6ux61A51l7Nm40CmG4V6YhzOTdp8i/P0rzK/CzoSk/10wXdL5wuytYVaspCeXt38ZJJx gZ0LV+eEaYtPgbjCPcMRp2wr814mggTjOg4vXsZzyinLuUFCS0SN/EuJl5pwaa/jhdCJ 2cHsYYE2hgtcFy7EcRvgipw0KYD//2XNSn48sx1n2WdQQ80I+5BFiFWQFcsxMnBOLmmS 4WwA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:user-agent:in-reply-to :content-disposition:mime-version:references:message-id:subject:cc :to:from:date:ironport-sdr:ironport-sdr; bh=ZxcyVVrqQEVn64qaLOwMAKEvRdeHoud8QElHAAuU+rU=; b=DAnY6a764cxVP9IV/wrbYhZlAoX8/G+wbCCLryIGhdMT01VqZhFHH5zqCPfQPNB+IU YUAMnDPuLoaJ2hRalnCZHvI083qjSq/TtIHiFZVXAWTtYM0R1JiguaXKheWrkVvP2n1V bNWS1fP2vgQxKz2zGZZ/OenuwBTovnl2YlskOdjzV6voVWXezZ5mQ+Sr2/MsekUtQMBh SfvdZ06bwpclmI2Y98s9He6P0DpTAlz7PazNmQ9/YCvYyhrnVREsO/tmlzlFydl5WYBW zyOjzp/nuRk4uB5ePNkjl6bw6TFM7L3sIjFWwBGOavl95hOpBtal90IJqEofYtC+tNZQ YNuQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id lu12si11248400ejb.269.2020.07.14.12.02.10; Tue, 14 Jul 2020 12:02:34 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1730685AbgGNTCF (ORCPT + 99 others); Tue, 14 Jul 2020 15:02:05 -0400 Received: from mga06.intel.com ([134.134.136.31]:19710 "EHLO mga06.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1731262AbgGNS6z (ORCPT ); Tue, 14 Jul 2020 14:58:55 -0400 IronPort-SDR: givwFSprjeL4Mr4h/slmcV8zftQTk35wDE2YZRBlvpeRAVZ8IfNbXB1l2zsVNPJvxj6lKF0yNw 8Lxp0ehWQNAw== X-IronPort-AV: E=McAfee;i="6000,8403,9682"; a="210549633" X-IronPort-AV: E=Sophos;i="5.75,352,1589266800"; d="scan'208";a="210549633" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by orsmga104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 14 Jul 2020 11:58:54 -0700 IronPort-SDR: T4uUEX03cyAvgT+sDDYLZfjnqNCrWzrggMmI031wo1yUThJxQ3uGcdrJkujY7qZw+MLsY6rKHu YW2uwZzwrDKA== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.75,352,1589266800"; d="scan'208";a="390565699" Received: from sjchrist-coffee.jf.intel.com (HELO linux.intel.com) ([10.54.74.152]) by fmsmga001.fm.intel.com with ESMTP; 14 Jul 2020 11:58:54 -0700 Date: Tue, 14 Jul 2020 11:58:54 -0700 From: Sean Christopherson To: Jim Mattson Cc: Paolo Bonzini , Vitaly Kuznetsov , Wanpeng Li , Joerg Roedel , kvm list , LKML , Oliver Upton , Peter Shier Subject: Re: [PATCH] KVM: x86: Don't attempt to load PDPTRs when 64-bit mode is enabled Message-ID: <20200714185853.GC14404@linux.intel.com> References: <20200714015732.32426-1-sean.j.christopherson@intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.24 (2015-08-30) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, Jul 14, 2020 at 11:55:45AM -0700, Jim Mattson wrote: > On Mon, Jul 13, 2020 at 6:57 PM Sean Christopherson > wrote: > > > > Don't attempt to load PDPTRs if EFER.LME=1, i.e. if 64-bit mode is > > enabled. A recent change to reload the PDTPRs when CR0.CD or CR0.NW is > > toggled botched the EFER.LME handling and sends KVM down the PDTPR path > > when is_paging() is true, i.e. when the guest toggles CD/NW in 64-bit > > mode. > > Oops! > > I don't think "is_paging()" is relevant here, so much as "EFER.LME=1." > As you note below, KVM *should* go down the PDPTR path when > is_paging() is true and EFER.LME=0. It's relevant for the EFER.LME=1 case as it's used to detect CR0.PG 0->1. Though maybe we're in violent agreement?