WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

[Xen-devel] Re: Need help with fixing the Xen waitqueue feature

To: Andres Lagar-Cavilla <andres@xxxxxxxxxxxxxxxx>
Subject: [Xen-devel] Re: Need help with fixing the Xen waitqueue feature
From: Olaf Hering <olaf@xxxxxxxxx>
Date: Wed, 9 Nov 2011 23:11:49 +0100
Cc: keir.xen@xxxxxxxxx, xen-devel@xxxxxxxxxxxxxxxxxxx
Delivery-date: Wed, 09 Nov 2011 14:12:47 -0800
Dkim-signature: v=1; a=rsa-sha1; c=relaxed/relaxed; t=1320876722; l=839; s=domk; d=aepfle.de; h=In-Reply-To:Content-Type:MIME-Version:References:Subject:Cc:To:From: Date:X-RZG-CLASS-ID:X-RZG-AUTH; bh=qb9sQnRVBeVMJAttPIK8Ig967Hg=; b=Uv5696Hc0gzICuKwmMk9ZSWWG537XznjPcMb0qSkFuPWnNnl0bC9dUHG3muXYoUCfC2 vww1GbGx4uLPF0ol/+kyMG3KfaDpmvdzKymwqSLK7Td89//1bBThKcsvCCl9GnHd2sCke +UFbl5zXigHuP4/suY9YCNj5Gs3jY8tKGcU=
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <0bb01a4d216a68c4ae8441b037927f61.squirrel@xxxxxxxxxxxxxxxxxxxxxxxx>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
References: <20111108224414.83985CF73A@xxxxxxxxxxxxxxxxxxxxxxxxxxxxx> <3c097da8e49a42af1210e4ffcd39fd48.squirrel@xxxxxxxxxxxxxxxxxxxxxxxx> <20111109070927.GB26154@xxxxxxxxx> <0bb01a4d216a68c4ae8441b037927f61.squirrel@xxxxxxxxxxxxxxxxxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Mutt/1.5.21.rev5535 (2011-07-01)
On Wed, Nov 09, Andres Lagar-Cavilla wrote:

> After a bit of thinking, things are far more complicated. I don't think
> this is a "race." If the pager removed a page that later gets scheduled by
> the guest OS for IO, qemu will want to foreign-map that. With the
> hypervisor returning ENOENT, the foreign map will fail, and there goes
> qemu.

The tools are supposed to catch ENOENT and try again.
linux_privcmd_map_foreign_bulk() does that. linux_gnttab_grant_map()
appears to do that as well. What code path uses qemu that leads to a
crash?

> I guess qemu/migrate/libxc could retry until the pager is done and the
> mapping succeeds. It will be delicate. It won't work for pv backends. It
> will flood the mem_event ring.

There will no flood, only one request is sent per gfn in
p2m_mem_paging_populate().

Olaf

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel