[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen-unstable] [IA64] Use domheap instead of xenheap for P2M table
# HG changeset patch # User awilliam@xxxxxxxxxxxx # Date 1173886420 21600 # Node ID c0cdb349a11ac4b401a12b46593cb9d6605f8f66 # Parent cb2575cec95c9960c30133725943a0da81daa2f5 [IA64] Use domheap instead of xenheap for P2M table This allows larger memory configurations without exhausting xenheap. New boot option 'p2m_xenheap' reverts to previous behavior. Signed-off-by: Kouya Shimura <kouya@xxxxxxxxxxxxxx> --- xen/arch/ia64/xen/mm.c | 16 +++++++++++++++- 1 files changed, 15 insertions(+), 1 deletion(-) diff -r cb2575cec95c -r c0cdb349a11a xen/arch/ia64/xen/mm.c --- a/xen/arch/ia64/xen/mm.c Mon Mar 12 10:07:08 2007 -0600 +++ b/xen/arch/ia64/xen/mm.c Wed Mar 14 09:33:40 2007 -0600 @@ -1903,9 +1903,20 @@ void __free_pages(struct page_info *page free_xenheap_page(page); } +static int opt_p2m_xenheap; +boolean_param("p2m_xenheap", opt_p2m_xenheap); + void *pgtable_quicklist_alloc(void) { void *p; + if (!opt_p2m_xenheap) { + struct page_info *page = alloc_domheap_page(NULL); + if (page == NULL) + return NULL; + p = page_to_virt(page); + clear_page(p); + return p; + } p = alloc_xenheap_pages(0); if (p) clear_page(p); @@ -1914,7 +1925,10 @@ void *pgtable_quicklist_alloc(void) void pgtable_quicklist_free(void *pgtable_entry) { - free_xenheap_page(pgtable_entry); + if (!opt_p2m_xenheap) + free_domheap_page(virt_to_page(pgtable_entry)); + else + free_xenheap_page(pgtable_entry); } void put_page_type(struct page_info *page) _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |