Received: by 10.223.176.5 with SMTP id f5csp878813wra; Wed, 7 Feb 2018 08:59:17 -0800 (PST) X-Google-Smtp-Source: AH8x227HluM2y5UtpZ96PvvLOvU/rFUwsy3eG45jSMfnKn3UGR04sb9Lv6kl0JWTm1/u/s0Seu7k X-Received: by 10.99.177.67 with SMTP id g3mr1632488pgp.410.1518022757030; Wed, 07 Feb 2018 08:59:17 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1518022757; cv=none; d=google.com; s=arc-20160816; b=PlZZY5tu5HSIWsMtkMKeBO0tlre5vroHXCqw6ToraoUgEOTTrHqB/+uSfgfcBj04kJ rK1LGOBzh2HxteIvOkl0Q9kDVkXQhNsEPHk6ayPYPEvnNegS/eJsPXQEG8LdEr77LphN Scih0Opx3EjBM20uVQrU7qzHmTQmIxZ9aJlb/nUtiDLoR+8F/aNQSPz5RLBocMJG3+WH qAEfCwqH2akJipygIHVIZdnHcw7fZwpYQ1yF/UX9+JwG4Lvy4qhDPG3/adEgPmAlfykb 2m8k3rwj2SFUY48oVuYDk0Yq3CJbn76AhDH/i/ADg9rjcmaROo/QqZMn2M24dwIJHpJl TLbg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:cc:to:subject:message-id:date:from :references:in-reply-to:mime-version:dkim-signature :arc-authentication-results; bh=Rjoci9SRLQNyvS8w02rBg4PtDvW6dnseQsHAJ1liLvA=; b=EBHS2M8KS2VMxf7DtYk4plmgglh8VzTsk1b+Jpv9MqS9JkKRo38tQ1BrCnK/wP4IEY 3vsOV2Hk8ciLD6aou9lDuTabihVZcG+xRJxxPAtw9g2wldRwkvPcbc9CtrRoP+LHwF7p K84t9aitx9JnIMCXEB/JUGvaeU8nvjIyjRd2c7t+30pojFD0Gct1EcNCjCYciuUQ8QlH 1Vx9Gov9Guxd2oAloKcQJkjdsmCZanV4gbNEmm2iYIe7+xOqDThIZ6a1WlbRJVr4vl/t rCzexOhMgGCMVvHL7ENs5kREjWsstayhl+ynCrp74AJ2eLRVhukNyUHQ51F1Ll7Dqkwu iUwA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@google.com header.s=20161025 header.b=PZe2qIy1; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id m12si1142052pgd.292.2018.02.07.08.59.02; Wed, 07 Feb 2018 08:59:17 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@google.com header.s=20161025 header.b=PZe2qIy1; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754766AbeBGQ5M (ORCPT + 99 others); Wed, 7 Feb 2018 11:57:12 -0500 Received: from mail-it0-f42.google.com ([209.85.214.42]:35327 "EHLO mail-it0-f42.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754538AbeBGQ5K (ORCPT ); Wed, 7 Feb 2018 11:57:10 -0500 Received: by mail-it0-f42.google.com with SMTP id e1so3025404ita.0 for ; Wed, 07 Feb 2018 08:57:10 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=Rjoci9SRLQNyvS8w02rBg4PtDvW6dnseQsHAJ1liLvA=; b=PZe2qIy1mVFbG3jrCObAgnXwV5eysyRS5zTT2MuaTPUQ6xu5MI+mDFcNIPURDMf+xI 1GSU9xVwycRN6u9RfwpK32DKYjEk3r63pLMsK8kbrLlZV3/IaQfoo/8+cHO1KXjJK/85 BZknbQg5/36EQBpo8WVDlZrX+I62IdXZA6Gd49zCkB84BH9BPpX2XNalXiBu7deRQdA8 gAB0PBIIgLtqHNw7PaaiFlZ656SIAdpecM1jvY1oogcpcRMhLENgbUxMuD0gxcHQl+u8 efZO2ku39CcUYPMobOfCChHiJ53lLeUVJxkkEVEufizkLZUGjv1LM9+I3Iz/egDRBiOm y5Og== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=Rjoci9SRLQNyvS8w02rBg4PtDvW6dnseQsHAJ1liLvA=; b=N3cOt5EULwPKk2zWe/tHHFHp9Z6DP+caS5Bhg1dRvWo9RWpGyU6b+Vn4d3yaxr1309 /AI4XUO9AxtWYrhDruhxglVXDcZBGFlpyeZAu9WpS0TIEOpFGWGjJTaCwGMDF8ZFxJX8 aC0L9ZmyFrShk/8f1hIcTTM5/U5QHAaSqHQJEJ/95/nQfcjHQNPMkL7fFYYlCY3z1tZO l9DCaXPcvu0SsWUGYicGtjyHSuqjajLiu5wk4jclfsvgsAxtvzBE/thF+yvXbol2P4UP LlJvZIAsyBSuEESNYoKh+PoCdBDF2EiXHcqMZMUXxfgmPr/4Yfxk3u4RCF5Q3rc2fKE7 0Lkg== X-Gm-Message-State: APf1xPD2cP9gxM7I3RMMtyEuWalaRaofXi1+CJ4CIvv7ZNdcdBM7ZS4V bZQdHD3o0td3mgPBHtYIALQcc9pUAquGDUIoAFoXBMxs X-Received: by 10.36.28.68 with SMTP id c65mr9049078itc.142.1518022629592; Wed, 07 Feb 2018 08:57:09 -0800 (PST) MIME-Version: 1.0 Received: by 10.107.128.7 with HTTP; Wed, 7 Feb 2018 08:57:09 -0800 (PST) In-Reply-To: References: <1517828686-29070-1-git-send-email-wanpengli@tencent.com> From: Jim Mattson Date: Wed, 7 Feb 2018 08:57:09 -0800 Message-ID: Subject: Re: [PATCH] KVM: nVMX: Fix CR4 after VMLAUNCH/VMRESUME failure To: Wanpeng Li Cc: kvm list , LKML , Radim Krcmar , Paolo Bonzini Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org vmcs12->host_cr[34] does not contain the up-to-date values when L1 is running. L1 can vmwrite any values there. We know at this point that they are legal (because we checked them), but that's about it. If the VMLAUNCH/VMRESUME of vmcs12 fails for "invalid control field," there is no VM-exit from L2 to L1, and these fields are not loaded. Instead, execution just falls through to the next instruction with VMFailValid semantics. On Wed, Feb 7, 2018 at 12:31 AM, Wanpeng Li wrote: > 2018-02-07 0:58 GMT+08:00 Jim Mattson : >> On Mon, Feb 5, 2018 at 4:57 PM, Wanpeng Li wrote: >> >>> This is effective one, what I restore in this patch is >>> achitectural/guest visible. >> >> This patch doesn't "restore" the guest visible CR4 to its value at the >> time of VMLAUNCH/VMRESUME. It loads a new CR4 value from the vmcs12. >> That behavior is incorrect. > > You have another pointing out about this. > https://lkml.org/lkml/2018/2/5/518 vmcs12->host_cr3/host_cr4 has the > up-to-date value when L1 is running, it is still up-to-date after > vmexit due to L1 executes VMLAUNCH/VMRESUME, I think the value stays > the same before L0 emulates the VMLAUNCH/VMRESUME, according to below > comments, why vmcs12->host_cr3/cr4 is not the value which we should > restore? > > * After an early L2 VM-entry failure, we're now back > * in L1 which thinks it just finished a VMLAUNCH or > * VMRESUME instruction > > Regards, > Wanpeng Li