mirror of
https://github.com/xen-project/xen.git
synced 2026-10-29 10:40:03 +01:00
[IA64] Remove PG_foreign hack
Signed-off-by: Alex Williamson <alex.williamson@hp.com>
This commit is contained in:
1 parent
2be162b951
commit
c77420064f
3 files changed
-47
No files matched your search
@@ -416,12 +416,6 @@ HYPERVISOR_grant_table_op(unsigned int cmd, void *uop, unsigned int count)
|
||||
}
|
||||
EXPORT_SYMBOL(HYPERVISOR_grant_table_op);
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////
|
||||
// PageForeign(), SetPageForeign(), ClearPageForeign()
|
||||
|
||||
struct address_space xen_ia64_foreign_dummy_mapping;
|
||||
EXPORT_SYMBOL(xen_ia64_foreign_dummy_mapping);
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////
|
||||
// foreign mapping
|
||||
#include <linux/efi.h>
|
||||
|
||||
@@ -84,9 +84,6 @@ mfn_to_local_pfn(unsigned long mfn)
|
||||
|
||||
#endif /* !CONFIG_XEN */
|
||||
|
||||
/* XXX to compile set_phys_to_machine(vaddr, FOREIGN_FRAME(m)) */
|
||||
#define FOREIGN_FRAME(m) (INVALID_P2M_ENTRY)
|
||||
|
||||
#define mfn_to_pfn(mfn) (mfn)
|
||||
#define pfn_to_mfn(pfn) (pfn)
|
||||
|
||||
|
||||
@@ -236,44 +236,6 @@ get_order (unsigned long size)
|
||||
#include <linux/kernel.h>
|
||||
#include <asm/hypervisor.h>
|
||||
#include <xen/features.h> // to compile netback, netfront
|
||||
|
||||
/*
|
||||
* XXX hack!
|
||||
* Linux/IA64 uses PG_arch_1.
|
||||
* This hack will be removed once PG_foreign bit is taken.
|
||||
* #include <xen/foreign_page.h>
|
||||
*/
|
||||
#ifdef __ASM_XEN_FOREIGN_PAGE_H__
|
||||
# error "don't include include/xen/foreign_page.h!"
|
||||
#endif
|
||||
|
||||
extern struct address_space xen_ia64_foreign_dummy_mapping;
|
||||
#define PageForeign(page) \
|
||||
((page)->mapping == &xen_ia64_foreign_dummy_mapping)
|
||||
|
||||
#define SetPageForeign(page, dtor) do { \
|
||||
set_page_private((page), (unsigned long)(dtor)); \
|
||||
(page)->mapping = &xen_ia64_foreign_dummy_mapping; \
|
||||
smp_rmb(); \
|
||||
} while (0)
|
||||
|
||||
#define ClearPageForeign(page) do { \
|
||||
(page)->mapping = NULL; \
|
||||
smp_rmb(); \
|
||||
set_page_private((page), 0); \
|
||||
} while (0)
|
||||
|
||||
#define PageForeignDestructor(page) \
|
||||
( (void (*) (struct page *)) page_private(page) )
|
||||
|
||||
#define arch_free_page(_page,_order) \
|
||||
({ int foreign = PageForeign(_page); \
|
||||
if (foreign) \
|
||||
(PageForeignDestructor(_page))(_page); \
|
||||
foreign; \
|
||||
})
|
||||
#define HAVE_ARCH_FREE_PAGE
|
||||
|
||||
#include <asm/maddr.h>
|
||||
|
||||
#endif /* CONFIG_XEN */
|
||||
|
||||