Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752439AbeAAXBJ (ORCPT + 1 other); Mon, 1 Jan 2018 18:01:09 -0500 Received: from mail-wr0-f196.google.com ([209.85.128.196]:39724 "EHLO mail-wr0-f196.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752346AbeAAXBH (ORCPT ); Mon, 1 Jan 2018 18:01:07 -0500 X-Google-Smtp-Source: ACJfBouiTgHtqRmWacSQofr1or64JKf0tJu7NoHK27Mvc44k/2fu1Vg/pDBX6ZCPOewGOfPt/T3RIw== Subject: Re: [PATCH 0/4] KVM: nVMX: prepare_vmcs02 optimizations From: Paolo Bonzini To: Wanpeng Li Cc: linux-kernel@vger.kernel.org, kvm References: <1513860222-40944-1-git-send-email-pbonzini@redhat.com> Message-ID: Date: Tue, 2 Jan 2018 00:01:03 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.5.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Return-Path: On 01/01/2018 10:36, Paolo Bonzini wrote: > On 28/12/2017 09:39, Wanpeng Li wrote: >> 2017-12-27 22:28 GMT+08:00 Paolo Bonzini : >>> On 25/12/2017 11:08, Wanpeng Li wrote: >>>>> I observe L1(latest kvm/queue) panic and L0(latest kvm/queue) >>>>> calltrace, I'm not sure whether it is caused by this patchset. >>>> It can be reproduced steadily by running kvm-unit-tests in L1. >>> >>> It works here, can you show the L0 call trace and/or bisect it? >> >> L0 call trace has already been posted here. >> https://lkml.org/lkml/2017/12/25/53 In addition, the splatting is >> still there after I revert the last 9 nVMX optimization patches in >> kvm/queue. So it is not caused by this patchset. :) > > Hmm, maybe you're using "-cpu host,+umip"? I'll check when I get back > to work tomorrow. Yeah, I think this could be it: diff --git a/arch/x86/kvm/vmx.c b/arch/x86/kvm/vmx.c index 30e6115d4f09..6404e96179b4 100644 --- a/arch/x86/kvm/vmx.c +++ b/arch/x86/kvm/vmx.c @@ -10780,6 +10780,7 @@ static int prepare_vmcs02(struct kvm_vcpu *vcpu, struct vmcs12 *vmcs12, exec_control &= ~(SECONDARY_EXEC_VIRTUALIZE_APIC_ACCESSES | SECONDARY_EXEC_ENABLE_INVPCID | SECONDARY_EXEC_RDTSCP | + SECONDARY_EXEC_DESC | SECONDARY_EXEC_XSAVES | SECONDARY_EXEC_VIRTUAL_INTR_DELIVERY | SECONDARY_EXEC_APIC_REGISTER_VIRT | Paolo