From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Google-Smtp-Source: AH8x225lc+XcGIJ1sevmfbc9ur9rgmqhyvvm/ej/SjB+AeH4qObZViXqye6MLPifF2/buWAkJt80 ARC-Seal: i=1; a=rsa-sha256; t=1517418944; cv=none; d=google.com; s=arc-20160816; b=ne8EPN8tVP+kpXjK1709yPOynVh8V/x8CIfIEEeoPLjg2IAiWptKdH4DomwifnJcNi 3vWGLXFPpyVYljWwYIdajNLMlrn0AWwjk4jvqZKauJj13sJrsVBiu7BBmDMtgA7+Krj+ 3t8U53UCZJ9j8zb67bMiGOpDpILODCYaNv62yyfTgP3SlFRo+b8lsZPdlKZA6kYJYmSX u++IUPnPB7M96stPtK7QOWOi40lXQyh0Q8DuQQZFVmc2ItXXb1Eve8z1v14EeQpUTEdy JUzdnKxe2MoLsgHhAZaeHuFzBhQ/XqdzcSlv+rtEbgdpwaZWmx/0pYlJDYnR0cr9nHgj IcZg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:content-language:in-reply-to:mime-version :user-agent:date:message-id:from:references:cc:to:subject :arc-authentication-results; bh=Q3UOqeZ+APFSjlQC7I5BmgWaDDw5lOa+Oz+FEMd21og=; b=qTS2STaoTf/M8sfsbU400+rLapysVv3MByiQklgNRmChfDyCUsXQO+A4qePQeJNrQq RHokRFxILqQtzADNyqt+8ssYkhmPTS0BcDDolol72zotGtnYfCn83/1lrl6zl9MZ3R5D fz2WZP6zCmaAObbTnKhTnw6EnHQPs0sf90P1F/A50gUiONMH/loho3Jt5trtVVNuBEm3 XL9g3fvcKyNAkuUwJV1Ug91FEjzA35uoHxQ209bmHg/4tevH698qGPifW8vKYWCK6iUY 7ThevBDulxi0GvVMO1/BvBT/jrEDhbv+WRYcwOJpXtG/400hcjziwbG+hc7eN5fbP6fF a5Iw== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of pbonzini@redhat.com designates 209.132.183.28 as permitted sender) smtp.mailfrom=pbonzini@redhat.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=redhat.com Authentication-Results: mx.google.com; spf=pass (google.com: domain of pbonzini@redhat.com designates 209.132.183.28 as permitted sender) smtp.mailfrom=pbonzini@redhat.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=redhat.com Subject: Re: [PATCH v4 2/5] KVM: x86: Add IBPB support To: KarimAllah Ahmed , Jim Mattson , KarimAllah Ahmed Cc: the arch/x86 maintainers , LKML , kvm list , Ashok Raj , Asit Mallick , Dave Hansen , Arjan Van De Ven , Tim Chen , Linus Torvalds , Andrea Arcangeli , Andi Kleen , Thomas Gleixner , Dan Williams , Jun Nakajima , Andy Lutomirski , Greg KH , Peter Zijlstra , David Woodhouse References: <1517404231-22406-1-git-send-email-karahmed@amazon.de> <1517404231-22406-3-git-send-email-karahmed@amazon.de> <5f37b853-e7bb-0259-653c-6f526b106594@amazon.com> From: Paolo Bonzini Message-ID: <200c5e32-e238-ee87-45ed-4701285ff489@redhat.com> Date: Wed, 31 Jan 2018 12:15:35 -0500 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.5.2 MIME-Version: 1.0 In-Reply-To: <5f37b853-e7bb-0259-653c-6f526b106594@amazon.com> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 8bit X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: =?utf-8?q?1591113771329535327?= X-GMAIL-MSGID: =?utf-8?q?1591129086770719728?= X-Mailing-List: linux-kernel@vger.kernel.org List-ID: On 31/01/2018 12:11, KarimAllah Ahmed wrote: > On 01/31/2018 05:50 PM, Jim Mattson wrote: >> On Wed, Jan 31, 2018 at 5:10 AM, KarimAllah Ahmed >> wrote: >> >>> +               vmx_disable_intercept_for_msr(vmx->vmcs01.msr_bitmap, >>> MSR_IA32_PRED_CMD, >>> +                                             MSR_TYPE_W); >> >> Why not disable this intercept eagerly, rather than lazily? Unlike >> MSR_IA32_SPEC_CTRL, there is no guest value to save/restore, so there >> is no cost to disabling the intercept if the guest cpuid info declares >> support for it. >> >> >>> +       if (to_vmx(vcpu)->save_spec_ctrl_on_exit) { >>> +               nested_vmx_disable_intercept_for_msr( >>> +                               msr_bitmap_l1, msr_bitmap_l0, >>> +                               MSR_IA32_PRED_CMD, >>> +                               MSR_TYPE_R); >>> +       } >> >> I don't think this should be predicated on >> "to_vmx(vcpu)->save_spec_ctrl_on_exit." Why not just >> "guest_cpuid_has(vcpu, X86_FEATURE_IBPB)"? > > Paolo suggested this on the previous revision because guest_cpuid_has() > would be slow. Sorry, that was for spec_ctrl. Here there's no need to do any kind of conditional check. Paolo >> Also, the final argument to >> nested_vmx_disable_intercept_for_msr should be MSR_TYPE_W rather than >> MSR_TYPE_R. >> > Oops! will fix! > Amazon Development Center Germany GmbH > Berlin - Dresden - Aachen > main office: Krausenstr. 38, 10117 Berlin > Geschaeftsfuehrer: Dr. Ralf Herbrich, Christian Schlaeger > Ust-ID: DE289237879 > Eingetragen am Amtsgericht Charlottenburg HRB 149173 B