From: Ian Campbell <ian.campbell@citrix.com>
To: Andrew Warkentin <andreww591@gmail.com>
Cc: Jan Beulich <JBeulich@suse.com>, xen-devel@lists.xen.org
Subject: Re: Any work on sharing of large multi-page segments?
Date: Wed, 18 Mar 2015 10:16:34 +0000 [thread overview]
Message-ID: <1426673794.18247.310.camel@citrix.com> (raw)
In-Reply-To: <CAD-qYGpEDi_OCQ7zpo=k-gB+evh+PsDQ9cRORWEryFLfH12WGQ@mail.gmail.com>
On Tue, 2015-03-17 at 17:45 -0600, Andrew Warkentin wrote:
> On 3/17/15, Jan Beulich <JBeulich@suse.com> wrote:
> > And how would that be significantly different from the batching
> > that's already built into the grant table hypercall?
> >
> I guess it does do more or less what I want already. I was looking
> more at the inner mapping/unmapping functions, rather than the
> wrappers around them that implement the actual hypercalls.
>
> What would be a useful addition would be support for granting 2M
> pages. That would eliminate any problem with running out of grant
> table slots.
It's related but not quite the same but on ARM we are probably
eventually going to want to look into support for 64K grant mappings at
some point.
On ARM there are several options for the basic leaf page (called
"granules") size, 4K, 16K and 64K and it seems that at least some
OS/distro vendors are going to ship their kernels with 64K pages by
default, so we need to be able to support such guests.
Short term we can deal with this in the front/backend by using multiple
grants per guest page (i.e. 16 grants per 64K page) but that is quite
wasteful of ring space. Longer term I think it would be worth
investigating adding grant table extensions to allow for >4K granule
sizes.
>From there it's not too much of a stretch to imagine supporting
superpages of whichever granule size (i.e. 2M in the 4K case might be
sane, 32M in the 64K case perhaps less useful).
Even without that Linux will use compound pages e.g. for network frags
(up to order 3 == 32k, I think), so supporting higher order grants might
even be useful there even on x86.
Internally we'd still need to deal with all this in Xen as 4K mappings
in the second stage pages, but that's doable I think.
It's not clear when this would float to the top of priority list for Xen
on ARM though, so I wouldn't wait for us ;-)
Ian.
next prev parent reply other threads:[~2015-03-18 10:16 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-03-15 8:37 Any work on sharing of large multi-page segments? Andrew Warkentin
2015-03-16 11:49 ` Jan Beulich
2015-03-17 0:46 ` Andrew Warkentin
2015-03-17 8:54 ` Jan Beulich
2015-03-17 23:45 ` Andrew Warkentin
2015-03-18 10:16 ` Ian Campbell [this message]
2015-03-18 16:40 ` George Dunlap
2015-03-17 11:48 ` George Dunlap
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1426673794.18247.310.camel@citrix.com \
--to=ian.campbell@citrix.com \
--cc=JBeulich@suse.com \
--cc=andreww591@gmail.com \
--cc=xen-devel@lists.xen.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.