[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH] don't blindly use xmalloc() for allocating struct domain instances
At least on x86 these structures are greater than a page anyway, and hence using xmalloc is wasteful here. Signed-off-by: Jan Beulich <jbeulich@xxxxxxxxxx> --- 2009-01-27.orig/xen/common/domain.c 2009-01-08 10:30:05.000000000 +0100 +++ 2009-01-27/xen/common/domain.c 2009-01-27 11:47:22.000000000 +0100 @@ -104,12 +104,17 @@ int current_domain_id(void) static struct domain *alloc_domain_struct(void) { - return xmalloc(struct domain); + if (sizeof(struct domain) < PAGE_SIZE) + return xmalloc(struct domain); + return alloc_xenheap_pages(get_order_from_bytes(sizeof(struct domain))); } static void free_domain_struct(struct domain *d) { - xfree(d); + if (sizeof(*d) < PAGE_SIZE) + xfree(d); + else + free_xenheap_pages(d, get_order_from_bytes(sizeof(*d))); } static void __domain_finalise_shutdown(struct domain *d) _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |