Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753464Ab0HBHvI (ORCPT ); Mon, 2 Aug 2010 03:51:08 -0400 Received: from mx1.redhat.com ([209.132.183.28]:22065 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751464Ab0HBHvE (ORCPT ); Mon, 2 Aug 2010 03:51:04 -0400 Message-ID: <4C5678E3.8090309@redhat.com> Date: Mon, 02 Aug 2010 10:50:59 +0300 From: Avi Kivity User-Agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.7) Gecko/20100720 Fedora/3.1.1-1.fc13 Lightning/1.0b2pre Thunderbird/3.1.1 MIME-Version: 1.0 To: Xiao Guangrong CC: Marcelo Tosatti , LKML , KVM list Subject: Re: [PATCH 3/3] KVM: MMU: mark page dirty only when page is really written References: <4C4E5313.1080308@cn.fujitsu.com> <4C4E536E.7030109@cn.fujitsu.com> <4C4E53F7.7050108@cn.fujitsu.com> In-Reply-To: <4C4E53F7.7050108@cn.fujitsu.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1215 Lines: 34 On 07/27/2010 06:35 AM, Xiao Guangrong wrote: > Mark page dirty only when this page is really written, it's more exacter, > and also can fix dirty page marking in speculation path > > Signed-off-by: Xiao Guangrong > --- > arch/x86/kvm/mmu.c | 47 ++++++++++++++++++++++++++++------------------- > 1 files changed, 28 insertions(+), 19 deletions(-) > > diff --git a/arch/x86/kvm/mmu.c b/arch/x86/kvm/mmu.c > index dd6c192..bcc2173 100644 > --- a/arch/x86/kvm/mmu.c > +++ b/arch/x86/kvm/mmu.c > @@ -311,24 +311,42 @@ static bool spte_bits_lost(u64 spte) > if (!is_shadow_present_pte(spte)) > return false; > > - if (spte& shadow_accessed_mask) > + if (spte& shadow_accessed_mask&& > + (!is_writable_pte(spte) || spte& shadow_dirty_mask)) > return false; > Please add parentheses around bitwise operators to reduce confusion. The rest looks good. -- error compiling committee.c: too many arguments to function -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/