From: Stefano Stabellini Date: Wed, 8 Aug 2012 17:20:58 +0000 (+0000) Subject: xen/arm: implement alloc/free_xenballooned_pages with alloc_pages/kfree X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=ea54209b16cbecad8928f6067af29069ac44e360;p=linux-beck.git xen/arm: implement alloc/free_xenballooned_pages with alloc_pages/kfree Only until we get the balloon driver to work. Signed-off-by: Stefano Stabellini Acked-by: Konrad Rzeszutek Wilk --- diff --git a/arch/arm/xen/enlighten.c b/arch/arm/xen/enlighten.c index bad67ad43c2d..59bcb96ac369 100644 --- a/arch/arm/xen/enlighten.c +++ b/arch/arm/xen/enlighten.c @@ -148,3 +148,21 @@ static int __init xen_init_events(void) return 0; } postcore_initcall(xen_init_events); + +/* XXX: only until balloon is properly working */ +int alloc_xenballooned_pages(int nr_pages, struct page **pages, bool highmem) +{ + *pages = alloc_pages(highmem ? GFP_HIGHUSER : GFP_KERNEL, + get_order(nr_pages)); + if (*pages == NULL) + return -ENOMEM; + return 0; +} +EXPORT_SYMBOL_GPL(alloc_xenballooned_pages); + +void free_xenballooned_pages(int nr_pages, struct page **pages) +{ + kfree(*pages); + *pages = NULL; +} +EXPORT_SYMBOL_GPL(free_xenballooned_pages);