[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Xen-devel] [hybrid] : mmap pfn space...
On Mon, 2012-04-16 at 17:22 +0100, Stefano Stabellini wrote:
> On Mon, 16 Apr 2012, Ian Campbell wrote:
> > > In a nutshell, I am still trying to figure how to allocate rsvd pfn's
> > > for privcmd without writing a slab allocator.
> > Can't you just use the core get_page function (or
> > alloc_xenballooned_pages) and move the associated mfn aside temporarily
> > (or not if using alloc_xenballooned_pages)?
> I think that is a good suggestion: if we are trying to get in something
> that works but might not be the best solution, then using
> alloc_xenballooned_pages to get some pages and then changing the p2m is
> the best option: it wastes a non-trivial amount of memory in dom0 but at
> least it is known to work well and it wouldn't be an "hack".
I don't think it wastes all that much -- even 10k pages is only a few
10s of megabytes for the duration of the build.
Also free_xenballooned_pages does the right thing if
alloc_xenballooned_pages had to explicitly free some pages to satisfy
the allocation. i.e. it will shrink the balloon and re-add those pages
to the allocator, it won't leave them in the balloon or something.
> Give a look at gntdev_alloc_map, gnttab_map_refs and m2p_add_override
> for an example.
Xen-devel mailing list