From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932507AbXCPIxa (ORCPT ); Fri, 16 Mar 2007 04:53:30 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S932253AbXCPIww (ORCPT ); Fri, 16 Mar 2007 04:52:52 -0400 Received: from mx2.mail.elte.hu ([157.181.151.9]:46670 "EHLO mx2.mail.elte.hu" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932507AbXCPIw3 (ORCPT ); Fri, 16 Mar 2007 04:52:29 -0400 Date: Fri, 16 Mar 2007 09:51:07 +0100 From: Ingo Molnar To: Jeremy Fitzhardinge Cc: Andi Kleen , Andrew Morton , linux-kernel@vger.kernel.org, virtualization@lists.osdl.org, xen-devel@lists.xensource.com, Chris Wright , Zachary Amsden , Rusty Russell , Ian Pratt , Christian Limpach Subject: Re: [patch 23/26] Xen-paravirt_ops: Add Xen grant table support Message-ID: <20070316085107.GC23174@elte.hu> References: <20070301232443.195603797@goop.org> <20070301232529.139074125@goop.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20070301232529.139074125@goop.org> User-Agent: Mutt/1.4.2.2i X-ELTE-VirusStatus: clean X-ELTE-SpamScore: -2.0 X-ELTE-SpamLevel: X-ELTE-SpamCheck: no X-ELTE-SpamVersion: ELTE 2.0 X-ELTE-SpamCheck-Details: score=-2.0 required=5.9 tests=BAYES_00 autolearn=no SpamAssassin version=3.0.3 -2.0 BAYES_00 BODY: Bayesian spam probability is 0 to 1% [score: 0.0000] Sender: linux-kernel-owner@vger.kernel.org X-Mailing-List: linux-kernel@vger.kernel.org * Jeremy Fitzhardinge wrote: > Add Xen 'grant table' driver which allows granting of access to > selected local memory pages by other virtual machines and, > symmetrically, the mapping of remote memory pages which other virtual > machines have granted access to. > > This driver is a prerequisite for many of the Xen virtual device > drivers, which grant the 'device driver domain' restricted and > temporary access to only those memory pages that are currently > involved in I/O operations. > + > +#ifndef __ia64__ > + { introduce a proper arch method instead. > + unsigned long flags; > + int ref; > + grant_ref_t head; > + spin_lock_irqsave(&gnttab_list_lock, flags); > + unsigned long flags; > + spin_lock_irqsave(&gnttab_list_lock, flags); > + unsigned long flags; > + int count = 1; > + if (head == GNTTAB_LIST_END) > + grant_ref_t g = *private_head; > + if (unlikely(g == GNTTAB_LIST_END)) coding style problems. Ingo