# HG changeset patch # User yamahata@xxxxxxxxxxxxx # Date 1174616721 -32400 # Node ID 0135c4856cd32212b3c4ec43a067b9dba9bf59d8 # Parent eaeeefd8cddb55016ccd10e4d8b56db71963e67c remove page_is_removable arch hook. Now the ia64 p2m semantic becomes same as the x86 p2m table so that the hook is unnecessary any more. PATCHNAME: remove_page_is_removebale_arch_hook Signed-off-by: Isaku Yamahata diff -r eaeeefd8cddb -r 0135c4856cd3 xen/common/memory.c --- a/xen/common/memory.c Thu Mar 22 21:55:14 2007 +0900 +++ b/xen/common/memory.c Fri Mar 23 11:25:21 2007 +0900 @@ -173,11 +173,11 @@ int guest_remove_page(struct domain *d, if ( test_and_clear_bit(_PGC_allocated, &page->count_info) ) put_page(page); - if ( unlikely(!page_is_removable(page)) ) + if ( unlikely((page->count_info & PGC_count_mask) != 1) ) { shadow_drop_references(d, page); /* We'll make this a guest-visible error in future, so take heed! */ - if ( !page_is_removable(page) ) + if ( (page->count_info & PGC_count_mask) != 1 ) gdprintk(XENLOG_INFO, "Dom%d freeing in-use page %lx " "(pseudophys %lx): count=%lx type=%lx\n", d->domain_id, mfn, get_gpfn_from_mfn(mfn), diff -r eaeeefd8cddb -r 0135c4856cd3 xen/include/asm-ia64/mm.h --- a/xen/include/asm-ia64/mm.h Thu Mar 22 21:55:14 2007 +0900 +++ b/xen/include/asm-ia64/mm.h Fri Mar 23 11:25:21 2007 +0900 @@ -208,11 +208,6 @@ static inline int get_page_and_type(stru } return rc; -} - -static inline int page_is_removable(struct page_info *page) -{ - return ((page->count_info & PGC_count_mask) == 1); } #define set_machinetophys(_mfn, _pfn) do { } while(0); diff -r eaeeefd8cddb -r 0135c4856cd3 xen/include/asm-powerpc/mm.h --- a/xen/include/asm-powerpc/mm.h Thu Mar 22 21:55:14 2007 +0900 +++ b/xen/include/asm-powerpc/mm.h Fri Mar 23 11:25:21 2007 +0900 @@ -204,11 +204,6 @@ static inline int get_page_and_type(stru return rc; } -static inline int page_is_removable(struct page_info *page) -{ - return ((page->count_info & PGC_count_mask) == 1); -} - extern void synchronise_pagetables(unsigned long cpu_mask); /* XXX don't know what this is for */ diff -r eaeeefd8cddb -r 0135c4856cd3 xen/include/asm-x86/mm.h --- a/xen/include/asm-x86/mm.h Thu Mar 22 21:55:14 2007 +0900 +++ b/xen/include/asm-x86/mm.h Fri Mar 23 11:25:21 2007 +0900 @@ -222,11 +222,6 @@ static inline int get_page_and_type(stru return rc; } -static inline int page_is_removable(struct page_info *page) -{ - return ((page->count_info & PGC_count_mask) == 1); -} - #define ASSERT_PAGE_IS_TYPE(_p, _t) \ ASSERT(((_p)->u.inuse.type_info & PGT_type_mask) == (_t)); \ ASSERT(((_p)->u.inuse.type_info & PGT_count_mask) != 0)