From patchwork Fri Jun 17 03:49:41 2011 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: bugzilla-daemon@bugzilla.kernel.org X-Patchwork-Id: 890262 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by demeter2.kernel.org (8.14.4/8.14.4) with ESMTP id p5H3o7YV008500 for ; Fri, 17 Jun 2011 03:50:07 GMT Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756587Ab1FQDtn (ORCPT ); Thu, 16 Jun 2011 23:49:43 -0400 Received: from demeter1.kernel.org ([140.211.167.39]:49072 "EHLO demeter1.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1756226Ab1FQDtm (ORCPT ); Thu, 16 Jun 2011 23:49:42 -0400 Received: from demeter1.kernel.org (localhost.localdomain [127.0.0.1]) by demeter1.kernel.org (8.14.4/8.14.4) with ESMTP id p5H3nfUm018117 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO) for ; Fri, 17 Jun 2011 03:49:41 GMT Received: (from bugzilla@localhost) by demeter1.kernel.org (8.14.4/8.14.3/Submit) id p5H3nfcM018116; Fri, 17 Jun 2011 03:49:41 GMT Date: Fri, 17 Jun 2011 03:49:41 GMT Message-Id: <201106170349.p5H3nfcM018116@demeter1.kernel.org> X-Authentication-Warning: demeter1.kernel.org: bugzilla set sender to bugzilla-daemon@bugzilla.kernel.org using -f From: bugzilla-daemon@bugzilla.kernel.org To: kvm@vger.kernel.org Subject: [Bug 37262] VNC access to KVM VM is unusable X-Bugzilla-Reason: None X-Bugzilla-Type: newchanged X-Bugzilla-Watch-Reason: AssignedTo virtualization_kvm@kernel-bugs.osdl.org X-Bugzilla-Product: Virtualization X-Bugzilla-Component: kvm X-Bugzilla-Keywords: X-Bugzilla-Severity: high X-Bugzilla-Who: anonymous@kernel-bugs.osdl.org X-Bugzilla-Status: NEW X-Bugzilla-Priority: P1 X-Bugzilla-Assigned-To: virtualization_kvm@kernel-bugs.osdl.org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Changed-Fields: In-Reply-To: References: Auto-Submitted: auto-generated MIME-Version: 1.0 X-Greylist: IP, sender and recipient auto-whitelisted, not delayed by milter-greylist-4.2.6 (demeter2.kernel.org [140.211.167.43]); Fri, 17 Jun 2011 03:50:07 +0000 (UTC) X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.2.6 (demeter1.kernel.org [127.0.0.1]); Fri, 17 Jun 2011 03:49:41 +0000 (UTC) Sender: kvm-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: kvm@vger.kernel.org https://bugzilla.kernel.org/show_bug.cgi?id=37262 --- Comment #44 from Anonymous Emailer 2011-06-17 03:49:38 --- Reply-To: xiaoguangrong@cn.fujitsu.com On 06/17/2011 04:39 AM, bugzilla-daemon@bugzilla.kernel.org wrote: > https://bugzilla.kernel.org/show_bug.cgi?id=37262 > > > > > > --- Comment #43 from Steve 2011-06-16 20:39:32 --- > Solution of this bug is very simple: > > arch/x86/kvm/mmu.c: > > static bool mapping_level_dirty_bitmap(struct kvm_vcpu *vcpu, gfn_t large_gfn) > { > return (gfn_to_memslot_dirty_bitmap(vcpu, large_gfn, true) == NULL) > ? true : false; > } > > Only opposite condition. > Please commit when it's possible. > Yes, it is the reason, thanks for your time and great job, i am so sorry, this is caused by my mistake :-( And this is the fix patch from you and i did little cleanup From: Steve Subject: [PATCH] KVM: MMU: fix opposite condition in mapping_level_dirty_bitmap The condition is opposite, it always maps huge page for the dirty tracked page Reported-by: Steve Signed-off-by: Steve --- arch/x86/kvm/mmu.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) static int mapping_level(struct kvm_vcpu *vcpu, gfn_t large_gfn) diff --git a/arch/x86/kvm/mmu.c b/arch/x86/kvm/mmu.c index 19ebb76..15afa1e 100644 --- a/arch/x86/kvm/mmu.c +++ b/arch/x86/kvm/mmu.c @@ -549,7 +549,7 @@ gfn_to_memslot_dirty_bitmap(struct kvm_vcpu *vcpu, gfn_t gfn, static bool mapping_level_dirty_bitmap(struct kvm_vcpu *vcpu, gfn_t large_gfn) { - return gfn_to_memslot_dirty_bitmap(vcpu, large_gfn, true); + return !gfn_to_memslot_dirty_bitmap(vcpu, large_gfn, true); }