From mboxrd@z Thu Jan 1 00:00:00 1970 From: Christian Borntraeger Subject: Re: [PATCH v2 0/2] x86/entry: speed up context-tracking system calls by 150 clock cycles Date: Tue, 21 Jun 2016 15:24:07 +0200 Message-ID: <57693FF7.3050103@de.ibm.com> References: <1466434712-31440-1-git-send-email-pbonzini@redhat.com> Mime-Version: 1.0 Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit Cc: Andy Lutomirski , Peter Zijlstra , Rik van Riel , "H . Peter Anvin" , Ingo Molnar , Thomas Gleixner To: Paolo Bonzini , linux-kernel@vger.kernel.org, kvm@vger.kernel.org Return-path: Received: from mx0b-001b2d01.pphosted.com ([148.163.158.5]:60202 "EHLO mx0a-001b2d01.pphosted.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751785AbcFUNYT (ORCPT ); Tue, 21 Jun 2016 09:24:19 -0400 Received: from pps.filterd (m0098413.ppops.net [127.0.0.1]) by mx0b-001b2d01.pphosted.com (8.16.0.11/8.16.0.11) with SMTP id u5LDOAPW040889 for ; Tue, 21 Jun 2016 09:24:13 -0400 Received: from e06smtp14.uk.ibm.com (e06smtp14.uk.ibm.com [195.75.94.110]) by mx0b-001b2d01.pphosted.com with ESMTP id 23n0etpnqb-1 (version=TLSv1.2 cipher=AES256-SHA bits=256 verify=NOT) for ; Tue, 21 Jun 2016 09:24:13 -0400 Received: from localhost by e06smtp14.uk.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Tue, 21 Jun 2016 14:24:11 +0100 In-Reply-To: <1466434712-31440-1-git-send-email-pbonzini@redhat.com> Sender: kvm-owner@vger.kernel.org List-ID: On 06/20/2016 04:58 PM, Paolo Bonzini wrote: > The first patches are the two optimizations I posted on May 30th > for the system call entry/exit code. The only change is in the > function names, which use the user_{enter,exit}_irqoff favored > by Andy and Ingo. The first patch matches what commit d0e536d8939 > ("context_tracking: avoid irq_save/irq_restore on guest entry and exit", > 2015-10-28) did for guest entry and exit. The second simply adds > an inline annotation; the compiler doesn't figure it out because the > function is not static. > > The second two patches move guest_{enter,exit} to the same naming > convention, removing the KVM wrappers kvm_guest_{enter,exit} and > __kvm_guest_{enter,exit} in the process. I would like these two to > go through the KVM tree because I have other optimizations for 4.8 > on top of these patches. > > Thanks, > > Paolo > > Paolo Bonzini (4): > x86/entry: Avoid interrupt flag save and restore > x86/entry: Inline enter_from_user_mode > context_tracking: move rcu_virt_note_context_switch out of kvm_host.h > KVM: remove kvm_guest_enter/exit wrappers > > arch/arm/kvm/arm.c | 8 +++--- > arch/mips/kvm/mips.c | 4 +-- > arch/powerpc/kvm/book3s_hv.c | 4 +-- > arch/powerpc/kvm/book3s_pr.c | 4 +-- > arch/powerpc/kvm/booke.c | 4 +-- > arch/powerpc/kvm/powerpc.c | 2 +- > arch/s390/kvm/kvm-s390.c | 4 +-- > arch/x86/entry/common.c | 6 ++--- > arch/x86/kvm/x86.c | 4 +-- > include/linux/context_tracking.h | 53 +++++++++++++++++++++++++++++++++++++--- > include/linux/kvm_host.h | 39 ----------------------------- > 11 files changed, 69 insertions(+), 63 deletions(-) > Series looks sane and does work on s390. It has a minor conflict with my vsie pull request (so either add vsie.c to this patch set or fixup my pull request in the merge commit to replace kvm_guest_exit/enter with the new functions. Christian