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/
Home Products Support Community News


RE: [Xen-devel] Why gnttab_grant_foreign_access() can only grantaccess f

To: "Lily Huang" <ushuanglily@xxxxxxxxx>
Subject: RE: [Xen-devel] Why gnttab_grant_foreign_access() can only grantaccess for one page?
From: "Ian Pratt" <m+Ian.Pratt@xxxxxxxxxxxx>
Date: Fri, 7 Jul 2006 20:41:57 +0100
Cc: Randy Thelen <rthelen@xxxxxxxxxx>, xen-devel <xen-devel@xxxxxxxxxxxxxxxxxxx>
Delivery-date: Fri, 07 Jul 2006 12:42:35 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
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/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
Thread-index: Acah5BRChzUsVwYIQnaNKzpFWtyuNAAGOj6w
Thread-topic: [Xen-devel] Why gnttab_grant_foreign_access() can only grantaccess for one page?
> I just read the source code. gnttab_grant_foreign_access() seems to
> set some data in an in-memory structure "shared".  No hypercall is
> here. Right?
> If so, whether calling this function in a batch mode does not make big
> difference to me. I thought a gnttab_grant_foreign_access() will cause
> hypercall and context switch, then
> whether we can do batch granting will be important to performance.

Yes, only one side of the interface requires hypercalls.

> Ian, you said "grant tables are not typically used to map machine
> contiguous regions". Does Xen provide any mechanism to map contiguous
> regions?

Not as yet as it hasn't been needed. Are you sure the pages you want to
map are machine (as opposed to just guest physical) contiguous.

> Another question: Grant table currently seems to only allow 1024
> which means a domain may grant remote access on at most 1024 pages.
> However, this may not be enough in some cases. For example, in my
case, I
> need to allow a backend VM to share many pages with frontend. I can
> certainly change the xen code to make the grant table larger. But does
> has a better way to handle this situation?

There should be a hypercall to grow a domain's grant table. It's been on
the todo list for a while. Want to knock something up?


> thanks,
> lily
> On 7/7/06, Ian Pratt <m+Ian.Pratt@xxxxxxxxxxxx> wrote:
>       > Lily Huang wrote:
>       >
>       > > THis seems to be less efficient. Why cannot we allow this
> function
>       > > to grant access for mulitiple pages just remap function?
>       >
>       > With what frequency are multiple page grants requested?
>       You can always use multicalls for batches. In the current usage
>       scenarios, grant tables are not typically used to map machine
> contiguous
>       regions.
>       Ian

Xen-devel mailing list