From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tim Deegan Subject: Re: [PATCH] nestedhvm: fix write access fault on ro mapping Date: Thu, 2 Aug 2012 14:40:17 +0100 Message-ID: <20120802134017.GH11437@ocelot.phlegethon.org> References: <5008166B.6010603@amd.com> <20120726182111.GB4135@ocelot.phlegethon.org> <5012822E.2030603@amd.com> <20120802104524.GA11437@ocelot.phlegethon.org> <501A736A.7080300@amd.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: Content-Disposition: inline In-Reply-To: <501A736A.7080300@amd.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: Christoph Egger Cc: "xen-devel@lists.xen.org" List-Id: xen-devel@lists.xenproject.org At 14:32 +0200 on 02 Aug (1343917962), Christoph Egger wrote: > > It must be _possible_; after all we managed to detect the error. :) In > > any case it's definitely wrong to carry on with this handler with the > > wrong address in hand. So I wonder why this patch actually works for > > you. Does replacing the 'break' above with 'return 1' also fix the > > problem? > > No. Two things have to happen: > > 1. Calling paging_mark_dirty() and > 2. using the same p2mt from the hostp2m in the nestedp2m. > > > > > > In the short term, do you only care about pages that are read-only for > > log-dirty tracking? For the L1 walk, that should be handled by the PT > > walker's own calls to paging_mark_dirty(), and the nested-p2m handler > > could potentially take care of the other case by calling > > paging_mark_dirty() (for writes!) before calling nestedhap_walk_L0_p2m(). > > Ok, I consider this as a performance improvement rather a bugfix. > > New version is attached. Applied, thanks. Tim.