From mboxrd@z Thu Jan 1 00:00:00 1970 From: Christian Borntraeger Subject: Re: [PATCH v2] KVM: x86: add paging gcc optimization Date: Thu, 08 Mar 2012 16:47:27 +0100 Message-ID: <4F58D48F.8050807@de.ibm.com> References: <1331207154.28711.2.camel@offworld> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Cc: Avi Kivity , Marcelo Tosatti , KVM , lkml To: Davidlohr Bueso Return-path: Received: from e06smtp16.uk.ibm.com ([195.75.94.112]:57061 "EHLO e06smtp16.uk.ibm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1757400Ab2CHPrf (ORCPT ); Thu, 8 Mar 2012 10:47:35 -0500 Received: from /spool/local by e06smtp16.uk.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Thu, 8 Mar 2012 15:47:33 -0000 In-Reply-To: <1331207154.28711.2.camel@offworld> Sender: kvm-owner@vger.kernel.org List-ID: On 08/03/12 12:45, Davidlohr Bueso wrote: > From: Davidlohr Bueso > > Since most guests will have paging enabled for memory management, add likely() optimization > around CR0.PG checks. > { > - return kvm_read_cr0_bits(vcpu, X86_CR0_PG); > + return likely(kvm_read_cr0_bits(vcpu, X86_CR0_PG)); IMHO likely/unlikely should be considered more as fast-path/slow-path and not as often/less often. Is that the case here? This patch might cause a mis-prediction for non-paging guests all the time. Non-paging might be really irrelevant, so I am just making a point, since likely/unlikely is mis-used too often especially for "most users do it that way". Christian