From mboxrd@z Thu Jan 1 00:00:00 1970 From: Konrad Rzeszutek Wilk Subject: Re: [PATCH] evtchn/fifo: map correct pages when guest is HVM Date: Fri, 13 Dec 2013 10:10:52 -0500 Message-ID: <20131213151052.GA5094@phenom.dumpdata.com> References: <1386946193-8147-1-git-send-email-david.vrabel@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: Content-Disposition: inline In-Reply-To: <1386946193-8147-1-git-send-email-david.vrabel@citrix.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: David Vrabel , boris.ostrovsky@oracle.com Cc: Keir Fraser , Jan Beulich , xen-devel@lists.xen.org List-Id: xen-devel@lists.xenproject.org On Fri, Dec 13, 2013 at 02:49:53PM +0000, David Vrabel wrote: > From: David Vrabel > > If a HVM guest attempts to use the FIFO-based ABI it will not receive > any events and destroying the guest may crash Xen or trigger an assert > when attempting to unmap a control block page. This occurs because > Xen maps the wrong page for both the control blocks and the event > arrays. > > In map_guest_page(), use the MFN of the guest's page and not the GFN > when calling map_domain_page_global(). > Should you have the Reported-by: Boris Ostrovsky flag? > Signed-off-by: David Vrabel > --- > xen/common/event_fifo.c | 2 +- > 1 files changed, 1 insertions(+), 1 deletions(-) > > diff --git a/xen/common/event_fifo.c b/xen/common/event_fifo.c > index fc43e62..a815b2d 100644 > --- a/xen/common/event_fifo.c > +++ b/xen/common/event_fifo.c > @@ -357,7 +357,7 @@ static int map_guest_page(struct domain *d, uint64_t gfn, void **virt) > return -EINVAL; > } > > - *virt = map_domain_page_global(gfn); > + *virt = map_domain_page_global(page_to_mfn(p)); > if ( !*virt ) > { > put_page_and_type(p); > -- > 1.7.2.5 > > > _______________________________________________ > Xen-devel mailing list > Xen-devel@lists.xen.org > http://lists.xen.org/xen-devel