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

Re: [Xen-devel] Re: how to handle paged hypercall args?

To: Olaf Hering <olaf@xxxxxxxxx>
Subject: Re: [Xen-devel] Re: how to handle paged hypercall args?
From: Keir Fraser <keir@xxxxxxx>
Date: Thu, 02 Dec 2010 10:30:34 +0000
Cc: xen-devel@xxxxxxxxxxxxxxxxxxx, Jan Beulich <JBeulich@xxxxxxxxxx>
Delivery-date: Thu, 02 Dec 2010 02:31:14 -0800
Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:sender:user-agent:date :subject:from:to:cc:message-id:thread-topic:thread-index:in-reply-to :mime-version:content-type:content-transfer-encoding; bh=7oUrIvKjbL1mLwEy/qlOUrUmYJtfHAnpanvbQYCewl8=; b=p2fhiREsa6fPg0LRcdDKeut5ZTKnPLZWxXtm8dTjpQv8oeRxMEqTVFVg7zGpTfCByS Np+0QhAVFVQs/+rcod6fgp34v56tgWKB/GNkQ/VxZ0+tbv9r1++Ox2b39CIxvTU/GF0/ dgJe4MXTYQy6M9iO1Izfs1XKd327l666e5r9o=
Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=sender:user-agent:date:subject:from:to:cc:message-id:thread-topic :thread-index:in-reply-to:mime-version:content-type :content-transfer-encoding; b=EpbBYRD2vFtTuXuDn/ouwuoP0Md9/fxZB0hCKmJ/8p2pVQTnv0wDCSSREiiQ3vC0i6 eiQGgsBALOMH3GxmLaK4as5n/B3iCgH6pr0FAWnh8K+QyLlKWYmbqz7wVsuBbxc9xCLv rKUqo0fn9PjOFOvstfrDHQ5QRuoaSYX4viuzM=
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <C91D2401.BB08%keir@xxxxxxx>
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>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
Thread-index: AcuSCuM9ywIkU2AjLkKEvwz8H/SQEwAARBlg
Thread-topic: [Xen-devel] Re: how to handle paged hypercall args?
User-agent: Microsoft-Entourage/12.27.0.100910
On 02/12/2010 10:22, "Keir Fraser" <keir@xxxxxxx> wrote:

> Firstly, the usage of waitqueues is broken. The waitqueue_head should be
> shared with code that pages in, so that vcpus can be *woken* at some point
> after they start waiting. As it is, if a vcpu does sleep on its local
> waitqueue_head, it will never wake. You might start with a single global
> waitqueue_head and wake everyone on it every time a page (or maybe page
> batch) is paged in. More sophisticated might be to hash page numbers into a
> array of waitqueue_heads, to reduce false wakeups.

...Or you might have a per-domain waitqueue_head, and do the wake_up() from
code that adds paged-in entries to the guest physmap. That would seem a
pretty sensible way to proceed, to me.

 -- Keir



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