debuggers.hg
changeset 11070:c3e20511c745
[IA64] Remove P==M support
Remove the old P==M dom0 memory model support. It's likely
broken by now anyway.
Signed-off-by: Alex Williamson <alex.williamson@hp.com>
Remove the old P==M dom0 memory model support. It's likely
broken by now anyway.
Signed-off-by: Alex Williamson <alex.williamson@hp.com>
line diff
1.1 --- a/buildconfigs/linux-defconfig_xen0_ia64 Fri Aug 04 09:15:51 2006 -0600 1.2 +++ b/buildconfigs/linux-defconfig_xen0_ia64 Fri Aug 04 09:32:00 2006 -0600 1.3 @@ -91,7 +91,6 @@ CONFIG_TIME_INTERPOLATION=y 1.4 CONFIG_EFI=y 1.5 CONFIG_GENERIC_IOMAP=y 1.6 CONFIG_XEN=y 1.7 -CONFIG_XEN_IA64_DOM0_VP=y 1.8 CONFIG_XEN_IA64_VDSO_PARAVIRT=y 1.9 CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y 1.10 CONFIG_DMA_IS_DMA32=y
2.1 --- a/buildconfigs/linux-defconfig_xenU_ia64 Fri Aug 04 09:15:51 2006 -0600 2.2 +++ b/buildconfigs/linux-defconfig_xenU_ia64 Fri Aug 04 09:32:00 2006 -0600 2.3 @@ -88,7 +88,6 @@ CONFIG_TIME_INTERPOLATION=y 2.4 CONFIG_EFI=y 2.5 CONFIG_GENERIC_IOMAP=y 2.6 CONFIG_XEN=y 2.7 -CONFIG_XEN_IA64_DOM0_VP=y 2.8 CONFIG_XEN_IA64_VDSO_PARAVIRT=y 2.9 CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y 2.10 CONFIG_DMA_IS_DMA32=y
3.1 --- a/buildconfigs/linux-defconfig_xen_ia64 Fri Aug 04 09:15:51 2006 -0600 3.2 +++ b/buildconfigs/linux-defconfig_xen_ia64 Fri Aug 04 09:32:00 2006 -0600 3.3 @@ -91,7 +91,6 @@ CONFIG_TIME_INTERPOLATION=y 3.4 CONFIG_EFI=y 3.5 CONFIG_GENERIC_IOMAP=y 3.6 CONFIG_XEN=y 3.7 -CONFIG_XEN_IA64_DOM0_VP=y 3.8 CONFIG_XEN_IA64_VDSO_PARAVIRT=y 3.9 CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y 3.10 CONFIG_DMA_IS_DMA32=y
4.1 --- a/linux-2.6-xen-sparse/arch/ia64/Kconfig Fri Aug 04 09:15:51 2006 -0600 4.2 +++ b/linux-2.6-xen-sparse/arch/ia64/Kconfig Fri Aug 04 09:32:00 2006 -0600 4.3 @@ -57,20 +57,6 @@ config XEN 4.4 Enable Xen hypervisor support. Resulting kernel runs 4.5 both as a guest OS on Xen and natively on hardware. 4.6 4.7 -config XEN_IA64_DOM0_VP 4.8 - bool "dom0 vp model" 4.9 - depends on XEN 4.10 - default n 4.11 - help 4.12 - dom0 vp model 4.13 - 4.14 -config XEN_IA64_DOM0_NON_VP 4.15 - bool 4.16 - depends on XEN && !XEN_IA64_DOM0_VP 4.17 - default y 4.18 - help 4.19 - dom0 P=M model 4.20 - 4.21 config XEN_IA64_VDSO_PARAVIRT 4.22 bool 4.23 depends on XEN && !ITANIUM 4.24 @@ -516,25 +502,25 @@ source "crypto/Kconfig" 4.25 # 4.26 if XEN 4.27 config XEN_UTIL 4.28 - default n if XEN_IA64_DOM0_VP 4.29 + default n 4.30 4.31 config HAVE_ARCH_ALLOC_SKB 4.32 - default n if !XEN_IA64_DOM0_VP 4.33 + default y 4.34 4.35 config HAVE_ARCH_DEV_ALLOC_SKB 4.36 - default n if !XEN_IA64_DOM0_VP 4.37 + default y 4.38 4.39 config XEN_BALLOON 4.40 - default n if !XEN_IA64_DOM0_VP 4.41 + default y 4.42 4.43 config XEN_SKBUFF 4.44 - default n if !XEN_IA64_DOM0_VP 4.45 + default y 4.46 4.47 config XEN_NETDEV_BACKEND 4.48 - default n if !XEN_IA64_DOM0_VP 4.49 + default y 4.50 4.51 config XEN_NETDEV_FRONTEND 4.52 - default n if !XEN_IA64_DOM0_VP 4.53 + default y 4.54 4.55 config XEN_DEVMEM 4.56 default n
5.1 --- a/linux-2.6-xen-sparse/arch/ia64/xen/Makefile Fri Aug 04 09:15:51 2006 -0600 5.2 +++ b/linux-2.6-xen-sparse/arch/ia64/xen/Makefile Fri Aug 04 09:32:00 2006 -0600 5.3 @@ -2,7 +2,7 @@ 5.4 # Makefile for Xen components 5.5 # 5.6 5.7 -obj-y := hypercall.o xenivt.o xenentry.o xensetup.o xenpal.o xenhpski.o 5.8 +obj-y := hypercall.o xenivt.o xenentry.o xensetup.o xenpal.o xenhpski.o \ 5.9 + hypervisor.o pci-dma-xen.o util.o 5.10 5.11 -obj-$(CONFIG_XEN_IA64_DOM0_VP) += hypervisor.o pci-dma-xen.o util.o 5.12 -pci-dma-xen-$(CONFIG_XEN_IA64_DOM0_VP) := ../../i386/kernel/pci-dma-xen.o 5.13 +pci-dma-xen-y := ../../i386/kernel/pci-dma-xen.o
6.1 --- a/linux-2.6-xen-sparse/arch/ia64/xen/util.c Fri Aug 04 09:15:51 2006 -0600 6.2 +++ b/linux-2.6-xen-sparse/arch/ia64/xen/util.c Fri Aug 04 09:32:00 2006 -0600 6.3 @@ -105,21 +105,6 @@ void unlock_vm_area(struct vm_struct *ar 6.4 } 6.5 EXPORT_SYMBOL_GPL(unlock_vm_area); 6.6 6.7 -#ifndef CONFIG_XEN_IA64_DOM0_VP 6.8 -/* We just need a range of legal va here, though finally identity 6.9 - * mapped one is instead used for gnttab mapping. 6.10 - */ 6.11 -unsigned long alloc_empty_foreign_map_page_range(unsigned long pages) 6.12 -{ 6.13 - struct vm_struct *vma; 6.14 - 6.15 - if ( (vma = get_vm_area(PAGE_SIZE * pages, VM_ALLOC)) == NULL ) 6.16 - return NULL; 6.17 - 6.18 - return (unsigned long)vma->addr; 6.19 -} 6.20 -#endif 6.21 - 6.22 /* 6.23 * Local variables: 6.24 * c-file-style: "linux"
7.1 --- a/linux-2.6-xen-sparse/drivers/xen/blkback/blkback.c Fri Aug 04 09:15:51 2006 -0600 7.2 +++ b/linux-2.6-xen-sparse/drivers/xen/blkback/blkback.c Fri Aug 04 09:32:00 2006 -0600 7.3 @@ -398,14 +398,9 @@ static void dispatch_rw_block_io(blkif_t 7.4 } 7.5 7.6 pending_handle(pending_req, i) = map[i].handle; 7.7 -#ifdef CONFIG_XEN_IA64_DOM0_NON_VP 7.8 - pending_vaddrs[vaddr_pagenr(pending_req, i)] = 7.9 - (unsigned long)gnttab_map_vaddr(map[i]); 7.10 -#else 7.11 set_phys_to_machine(__pa(vaddr( 7.12 pending_req, i)) >> PAGE_SHIFT, 7.13 FOREIGN_FRAME(map[i].dev_bus_addr >> PAGE_SHIFT)); 7.14 -#endif 7.15 seg[i].buf = map[i].dev_bus_addr | 7.16 (req->seg[i].first_sect << 9); 7.17 } 7.18 @@ -534,16 +529,9 @@ static int __init blkif_init(void) 7.19 7.20 blkif_interface_init(); 7.21 7.22 -#ifdef CONFIG_XEN_IA64_DOM0_NON_VP 7.23 - extern unsigned long alloc_empty_foreign_map_page_range( 7.24 - unsigned long pages); 7.25 - mmap_vstart = (unsigned long) 7.26 - alloc_empty_foreign_map_page_range(mmap_pages); 7.27 -#else /* ! ia64 */ 7.28 page = balloon_alloc_empty_page_range(mmap_pages); 7.29 BUG_ON(page == NULL); 7.30 mmap_vstart = (unsigned long)pfn_to_kaddr(page_to_pfn(page)); 7.31 -#endif 7.32 printk("%s: reqs=%d, pages=%d, mmap_vstart=0x%lx\n", 7.33 __FUNCTION__, blkif_reqs, mmap_pages, mmap_vstart); 7.34 BUG_ON(mmap_vstart == 0);
8.1 --- a/linux-2.6-xen-sparse/drivers/xen/blkback/interface.c Fri Aug 04 09:15:51 2006 -0600 8.2 +++ b/linux-2.6-xen-sparse/drivers/xen/blkback/interface.c Fri Aug 04 09:32:00 2006 -0600 8.3 @@ -76,12 +76,6 @@ static int map_frontend_page(blkif_t *bl 8.4 blkif->shmem_ref = shared_page; 8.5 blkif->shmem_handle = op.handle; 8.6 8.7 -#ifdef CONFIG_XEN_IA64_DOM0_NON_VP 8.8 - /* on some arch's, map_grant_ref behaves like mmap, in that the 8.9 - * passed address is a hint and a different address may be returned */ 8.10 - blkif->blk_ring_area->addr = gnttab_map_vaddr(op); 8.11 -#endif 8.12 - 8.13 return 0; 8.14 } 8.15
9.1 --- a/linux-2.6-xen-sparse/drivers/xen/blktap/blktap.c Fri Aug 04 09:15:51 2006 -0600 9.2 +++ b/linux-2.6-xen-sparse/drivers/xen/blktap/blktap.c Fri Aug 04 09:32:00 2006 -0600 9.3 @@ -1299,13 +1299,8 @@ static void dispatch_rw_block_io(blkif_t 9.4 = map[i].handle; 9.5 pending_handle(mmap_idx, pending_idx, i/2).user 9.6 = map[i+1].handle; 9.7 -#ifdef CONFIG_XEN_IA64_DOM0_NON_VP 9.8 - pending_addrs[mmap_idx][vaddr_pagenr(pending_req, i)] = 9.9 - (unsigned long)gnttab_map_vaddr(map[i]); 9.10 -#else 9.11 set_phys_to_machine(__pa(kvaddr) >> PAGE_SHIFT, 9.12 FOREIGN_FRAME(map[i].dev_bus_addr >> PAGE_SHIFT)); 9.13 -#endif 9.14 offset = (uvaddr - info->vma->vm_start) >> PAGE_SHIFT; 9.15 pg = pfn_to_page(__pa(kvaddr) >> PAGE_SHIFT); 9.16 ((struct page **)info->vma->vm_private_data)[offset] =
10.1 --- a/linux-2.6-xen-sparse/drivers/xen/blktap/interface.c Fri Aug 04 09:15:51 2006 -0600 10.2 +++ b/linux-2.6-xen-sparse/drivers/xen/blktap/interface.c Fri Aug 04 09:32:00 2006 -0600 10.3 @@ -76,12 +76,6 @@ static int map_frontend_page(blkif_t *bl 10.4 blkif->shmem_ref = shared_page; 10.5 blkif->shmem_handle = op.handle; 10.6 10.7 -#ifdef CONFIG_XEN_IA64_DOM0_NON_VP 10.8 - /* on some arch's, map_grant_ref behaves like mmap, in that the 10.9 - * passed address is a hint and a different address may be returned */ 10.10 - blkif->blk_ring_area->addr = gnttab_map_vaddr(op); 10.11 -#endif 10.12 - 10.13 return 0; 10.14 } 10.15
11.1 --- a/linux-2.6-xen-sparse/include/asm-ia64/agp.h Fri Aug 04 09:15:51 2006 -0600 11.2 +++ b/linux-2.6-xen-sparse/include/asm-ia64/agp.h Fri Aug 04 09:32:00 2006 -0600 11.3 @@ -19,21 +19,10 @@ 11.4 #define flush_agp_cache() mb() 11.5 11.6 /* Convert a physical address to an address suitable for the GART. */ 11.7 -#ifndef CONFIG_XEN_IA64_DOM0_VP 11.8 -#define phys_to_gart(x) (x) 11.9 -#define gart_to_phys(x) (x) 11.10 -#else 11.11 #define phys_to_gart(x) phys_to_machine_for_dma(x) 11.12 #define gart_to_phys(x) machine_to_phys_for_dma(x) 11.13 -#endif 11.14 11.15 /* GATT allocation. Returns/accepts GATT kernel virtual address. */ 11.16 -#ifndef CONFIG_XEN_IA64_DOM0_VP 11.17 -#define alloc_gatt_pages(order) \ 11.18 - ((char *)__get_free_pages(GFP_KERNEL, (order))) 11.19 -#define free_gatt_pages(table, order) \ 11.20 - free_pages((unsigned long)(table), (order)) 11.21 -#else 11.22 #include <asm/hypervisor.h> 11.23 static inline char* 11.24 alloc_gatt_pages(unsigned int order) 11.25 @@ -57,6 +46,5 @@ free_gatt_pages(void* table, unsigned in 11.26 xen_destroy_contiguous_region((unsigned long)table, order); 11.27 free_pages((unsigned long)table, order); 11.28 } 11.29 -#endif /* CONFIG_XEN_IA64_DOM0_VP */ 11.30 11.31 #endif /* _ASM_IA64_AGP_H */
12.1 --- a/linux-2.6-xen-sparse/include/asm-ia64/dma-mapping.h Fri Aug 04 09:15:51 2006 -0600 12.2 +++ b/linux-2.6-xen-sparse/include/asm-ia64/dma-mapping.h Fri Aug 04 09:32:00 2006 -0600 12.3 @@ -7,28 +7,11 @@ 12.4 */ 12.5 #include <linux/config.h> 12.6 #include <asm/machvec.h> 12.7 -#ifdef CONFIG_XEN_IA64_DOM0_VP 12.8 /* Needed for arch/i386/kernel/swiotlb.c and arch/i386/kernel/pci-dma-xen.c */ 12.9 #include <asm/hypervisor.h> 12.10 /* Needed for arch/i386/kernel/swiotlb.c */ 12.11 #include <asm-i386/mach-xen/asm/swiotlb.h> 12.12 -#endif 12.13 12.14 -#ifndef CONFIG_XEN_IA64_DOM0_VP 12.15 -#define dma_alloc_coherent platform_dma_alloc_coherent 12.16 -#define dma_alloc_noncoherent platform_dma_alloc_coherent /* coherent mem. is cheap */ 12.17 -#define dma_free_coherent platform_dma_free_coherent 12.18 -#define dma_free_noncoherent platform_dma_free_coherent 12.19 -#define dma_map_single platform_dma_map_single 12.20 -#define dma_map_sg platform_dma_map_sg 12.21 -#define dma_unmap_single platform_dma_unmap_single 12.22 -#define dma_unmap_sg platform_dma_unmap_sg 12.23 -#define dma_sync_single_for_cpu platform_dma_sync_single_for_cpu 12.24 -#define dma_sync_sg_for_cpu platform_dma_sync_sg_for_cpu 12.25 -#define dma_sync_single_for_device platform_dma_sync_single_for_device 12.26 -#define dma_sync_sg_for_device platform_dma_sync_sg_for_device 12.27 -#define dma_mapping_error platform_dma_mapping_error 12.28 -#else 12.29 int dma_map_sg(struct device *hwdev, struct scatterlist *sg, int nents, 12.30 enum dma_data_direction direction); 12.31 void dma_unmap_sg(struct device *hwdev, struct scatterlist *sg, int nents, 12.32 @@ -67,7 +50,6 @@ dma_sync_sg_for_device(struct device *de 12.33 swiotlb_sync_sg_for_device(dev,sg,nelems,direction); 12.34 flush_write_buffers(); 12.35 } 12.36 -#endif 12.37 12.38 #define dma_map_page(dev, pg, off, size, dir) \ 12.39 dma_map_single(dev, page_address(pg) + (off), (size), (dir)) 12.40 @@ -109,7 +91,6 @@ dma_cache_sync (void *vaddr, size_t size 12.41 12.42 #define dma_is_consistent(dma_handle) (1) /* all we do is coherent memory... */ 12.43 12.44 -#ifdef CONFIG_XEN_IA64_DOM0_VP 12.45 /* arch/i386/kernel/swiotlb.o requires */ 12.46 void contiguous_bitmap_init(unsigned long end_pfn); 12.47 12.48 @@ -130,8 +111,5 @@ range_straddles_page_boundary(void *p, s 12.49 return (((((unsigned long)p & ~PAGE_MASK) + size) > PAGE_SIZE) && 12.50 !test_bit(__pa(p) >> PAGE_SHIFT, contiguous_bitmap)); 12.51 } 12.52 -#else 12.53 -#define contiguous_bitmap_init(end_pfn) ((void)end_pfn) 12.54 -#endif 12.55 12.56 #endif /* _ASM_IA64_DMA_MAPPING_H */
13.1 --- a/linux-2.6-xen-sparse/include/asm-ia64/hypercall.h Fri Aug 04 09:15:51 2006 -0600 13.2 +++ b/linux-2.6-xen-sparse/include/asm-ia64/hypercall.h Fri Aug 04 09:32:00 2006 -0600 13.3 @@ -195,14 +195,6 @@ HYPERVISOR_multicall( 13.4 return _hypercall2(int, multicall, call_list, nr_calls); 13.5 } 13.6 13.7 -#ifndef CONFIG_XEN_IA64_DOM0_VP 13.8 -static inline int 13.9 -HYPERVISOR_memory_op( 13.10 - unsigned int cmd, void *arg) 13.11 -{ 13.12 - return _hypercall2(int, memory_op, cmd, arg); 13.13 -} 13.14 -#else 13.15 //XXX xen/ia64 copy_from_guest() is broken. 13.16 // This is a temporal work around until it is fixed. 13.17 static inline int 13.18 @@ -230,7 +222,6 @@ HYPERVISOR_memory_op( 13.19 } 13.20 /* NOTREACHED */ 13.21 } 13.22 -#endif 13.23 13.24 static inline int 13.25 HYPERVISOR_event_channel_op( 13.26 @@ -288,12 +279,8 @@ static inline int 13.27 { 13.28 return _hypercall3(int, grant_table_op, cmd, uop, count); 13.29 } 13.30 -#ifndef CONFIG_XEN_IA64_DOM0_VP 13.31 -#define HYPERVISOR_grant_table_op(cmd, uop, count) \ 13.32 - ____HYPERVISOR_grant_table_op((cmd), (uop), (count)) 13.33 -#else 13.34 + 13.35 int HYPERVISOR_grant_table_op(unsigned int cmd, void *uop, unsigned int count); 13.36 -#endif 13.37 13.38 static inline int 13.39 HYPERVISOR_vcpu_op( 13.40 @@ -319,7 +306,6 @@ static inline void exit_idle(void) {} 13.41 irq_exit(); \ 13.42 }) 13.43 13.44 -#ifdef CONFIG_XEN_IA64_DOM0_VP 13.45 #include <linux/err.h> 13.46 #include <asm/xen/privop.h> 13.47 13.48 @@ -507,11 +493,4 @@ HYPERVISOR_add_physmap(unsigned long gpf 13.49 // for balloon driver 13.50 #define HYPERVISOR_update_va_mapping(va, new_val, flags) (0) 13.51 13.52 -#else 13.53 -#define HYPERVISOR_ioremap(ioaddr, size) (ioaddr) 13.54 -#define HYPERVISOR_phystomach(gpfn) (gpfn) 13.55 -#define HYPERVISOR_machtophys(mfn) (mfn) 13.56 -#define HYPERVISOR_zap_physmap(gpfn, extent_order) (0) 13.57 -#define HYPERVISOR_add_physmap(gpfn, mfn, flags) (0) 13.58 -#endif 13.59 #endif /* __HYPERCALL_H__ */
14.1 --- a/linux-2.6-xen-sparse/include/asm-ia64/hypervisor.h Fri Aug 04 09:15:51 2006 -0600 14.2 +++ b/linux-2.6-xen-sparse/include/asm-ia64/hypervisor.h Fri Aug 04 09:32:00 2006 -0600 14.3 @@ -125,11 +125,6 @@ HYPERVISOR_poll( 14.4 14.5 // for drivers/xen/privcmd/privcmd.c 14.6 #define machine_to_phys_mapping 0 14.7 -#ifndef CONFIG_XEN_IA64_DOM0_VP 14.8 -#define direct_remap_pfn_range(a,b,c,d,e,f) remap_pfn_range(a,b,c,d,e) 14.9 -#define pfn_to_mfn(x) (x) 14.10 -#define mfn_to_pfn(x) (x) 14.11 -#else 14.12 struct vm_area_struct; 14.13 int direct_remap_pfn_range(struct vm_area_struct *vma, 14.14 unsigned long address, 14.15 @@ -140,7 +135,6 @@ int direct_remap_pfn_range(struct vm_are 14.16 struct file; 14.17 int privcmd_mmap(struct file * file, struct vm_area_struct * vma); 14.18 #define HAVE_ARCH_PRIVCMD_MMAP 14.19 -#endif 14.20 14.21 // for drivers/xen/balloon/balloon.c 14.22 #ifdef CONFIG_XEN_SCRUB_PAGES 14.23 @@ -152,12 +146,7 @@ int privcmd_mmap(struct file * file, str 14.24 #define __pte_ma(_x) ((pte_t) {(_x)}) 14.25 #define phys_to_machine_mapping_valid(_x) (1) 14.26 #define pfn_pte_ma(_x,_y) __pte_ma(0) 14.27 -#ifndef CONFIG_XEN_IA64_DOM0_VP //XXX 14.28 -#define set_phys_to_machine(_x,_y) do {} while (0) 14.29 -#define xen_machphys_update(_x,_y) do {} while (0) 14.30 -#endif 14.31 14.32 -#ifdef CONFIG_XEN_IA64_DOM0_VP 14.33 int __xen_create_contiguous_region(unsigned long vstart, unsigned int order, unsigned int address_bits); 14.34 static inline int 14.35 xen_create_contiguous_region(unsigned long vstart, 14.36 @@ -191,11 +180,6 @@ MULTI_update_va_mapping( 14.37 mcl->result = 0; 14.38 } 14.39 14.40 -#else 14.41 -#define xen_create_contiguous_region(vstart, order, address_bits) (0) 14.42 -#define xen_destroy_contiguous_region(vstart, order) do {} while (0) 14.43 -#endif 14.44 - 14.45 // for debug 14.46 asmlinkage int xprintk(const char *fmt, ...); 14.47 #define xprintd(fmt, ...) xprintk("%s:%d " fmt, __func__, __LINE__, \
15.1 --- a/linux-2.6-xen-sparse/include/asm-ia64/io.h Fri Aug 04 09:15:51 2006 -0600 15.2 +++ b/linux-2.6-xen-sparse/include/asm-ia64/io.h Fri Aug 04 09:32:00 2006 -0600 15.3 @@ -97,13 +97,6 @@ extern int valid_mmap_phys_addr_range (u 15.4 * The following two macros are deprecated and scheduled for removal. 15.5 * Please use the PCI-DMA interface defined in <asm/pci.h> instead. 15.6 */ 15.7 -#ifndef CONFIG_XEN_IA64_DOM0_VP 15.8 -#define bus_to_virt phys_to_virt 15.9 -#define virt_to_bus virt_to_phys 15.10 -#define page_to_bus page_to_phys 15.11 -#define page_to_phys(page) (page_to_pfn(page) << PAGE_SHIFT) 15.12 -#define page_to_pseudophys(page) page_to_phys(page) 15.13 -#else 15.14 #define bus_to_virt(bus) \ 15.15 phys_to_virt(machine_to_phys_for_dma(bus)) 15.16 #define virt_to_bus(virt) \ 15.17 @@ -131,7 +124,6 @@ extern int valid_mmap_phys_addr_range (u 15.18 (((bvec_to_bus((vec1)) + (vec1)->bv_len) == bvec_to_bus((vec2))) && \ 15.19 ((bvec_to_pseudophys((vec1)) + (vec1)->bv_len) == \ 15.20 bvec_to_pseudophys((vec2)))) 15.21 -#endif 15.22 15.23 # endif /* KERNEL */ 15.24
16.1 --- a/linux-2.6-xen-sparse/include/asm-ia64/machvec.h Fri Aug 04 09:15:51 2006 -0600 16.2 +++ b/linux-2.6-xen-sparse/include/asm-ia64/machvec.h Fri Aug 04 09:32:00 2006 -0600 16.3 @@ -247,7 +247,6 @@ extern void machvec_init (const char *na 16.4 # error Unknown configuration. Update asm-ia64/machvec.h. 16.5 # endif /* CONFIG_IA64_GENERIC */ 16.6 16.7 -#ifdef CONFIG_XEN_IA64_DOM0_VP 16.8 # define platform_dma_map_sg dma_map_sg 16.9 # define platform_dma_unmap_sg dma_unmap_sg 16.10 # define platform_dma_mapping_error dma_mapping_error 16.11 @@ -260,7 +259,6 @@ extern void machvec_init (const char *na 16.12 dma_sync_single_for_cpu 16.13 # define platform_dma_sync_single_for_device \ 16.14 dma_sync_single_for_device 16.15 -#endif 16.16 16.17 /* 16.18 * Declare default routines which aren't declared anywhere else:
17.1 --- a/linux-2.6-xen-sparse/include/asm-ia64/page.h Fri Aug 04 09:15:51 2006 -0600 17.2 +++ b/linux-2.6-xen-sparse/include/asm-ia64/page.h Fri Aug 04 09:32:00 2006 -0600 17.3 @@ -223,15 +223,6 @@ get_order (unsigned long size) 17.4 17.5 #define INVALID_P2M_ENTRY (~0UL) 17.6 17.7 -#ifndef CONFIG_XEN_IA64_DOM0_VP 17.8 - 17.9 -#define virt_to_machine(v) __pa(v) 17.10 -#define machine_to_virt(m) __va(m) 17.11 -#define virt_to_mfn(v) ((__pa(v)) >> PAGE_SHIFT) 17.12 -#define mfn_to_virt(m) (__va((m) << PAGE_SHIFT)) 17.13 - 17.14 -#else 17.15 - 17.16 #include <linux/kernel.h> 17.17 #include <asm/hypervisor.h> 17.18 #include <xen/features.h> // to compile netback, netfront 17.19 @@ -337,7 +328,6 @@ mfn_to_local_pfn(unsigned long mfn) 17.20 return pfn; 17.21 } 17.22 17.23 -#endif /* CONFIG_XEN_IA64_DOM0_VP */ 17.24 #endif /* CONFIG_XEN */ 17.25 #endif /* __ASSEMBLY__ */ 17.26
18.1 --- a/xen/arch/ia64/Rules.mk Fri Aug 04 09:15:51 2006 -0600 18.2 +++ b/xen/arch/ia64/Rules.mk Fri Aug 04 09:32:00 2006 -0600 18.3 @@ -3,7 +3,6 @@ 18.4 18.5 HAS_ACPI := y 18.6 VALIDATE_VT ?= n 18.7 -xen_ia64_dom0_virtual_physical ?= y 18.8 no_warns ?= n 18.9 18.10 ifneq ($(COMPILE_ARCH),$(TARGET_ARCH)) 18.11 @@ -36,9 +35,6 @@ CFLAGS += -g 18.12 ifeq ($(VALIDATE_VT),y) 18.13 CFLAGS += -DVALIDATE_VT 18.14 endif 18.15 -ifeq ($(xen_ia64_dom0_virtual_physical),y) 18.16 -CFLAGS += -DCONFIG_XEN_IA64_DOM0_VP 18.17 -endif 18.18 ifeq ($(no_warns),y) 18.19 CFLAGS += -Wa,--fatal-warnings -Werror -Wno-uninitialized 18.20 endif
19.1 --- a/xen/arch/ia64/xen/dom0_ops.c Fri Aug 04 09:15:51 2006 -0600 19.2 +++ b/xen/arch/ia64/xen/dom0_ops.c Fri Aug 04 09:32:00 2006 -0600 19.3 @@ -199,7 +199,6 @@ long arch_do_dom0_op(dom0_op_t *op, XEN_ 19.4 return ret; 19.5 } 19.6 19.7 -#ifdef CONFIG_XEN_IA64_DOM0_VP 19.8 static unsigned long 19.9 dom0vp_ioremap(struct domain *d, unsigned long mpaddr, unsigned long size) 19.10 { 19.11 @@ -260,7 +259,6 @@ do_dom0vp_op(unsigned long cmd, 19.12 19.13 return ret; 19.14 } 19.15 -#endif 19.16 19.17 /* 19.18 * Local variables:
20.1 --- a/xen/arch/ia64/xen/dom_fw.c Fri Aug 04 09:15:51 2006 -0600 20.2 +++ b/xen/arch/ia64/xen/dom_fw.c Fri Aug 04 09:32:00 2006 -0600 20.3 @@ -169,12 +169,6 @@ static void dom_fpswa_hypercall_patch(st 20.4 unsigned long entry_paddr = FW_HYPERCALL_FPSWA_ENTRY_PADDR; 20.5 unsigned long patch_paddr = FW_HYPERCALL_FPSWA_PATCH_PADDR; 20.6 20.7 -#ifndef CONFIG_XEN_IA64_DOM0_VP 20.8 - if (d == dom0) { 20.9 - entry_paddr += dom0_start; 20.10 - patch_paddr += dom0_start; 20.11 - } 20.12 -#endif 20.13 ASSIGN_NEW_DOMAIN_PAGE_IF_DOM0(d, entry_paddr); 20.14 ASSIGN_NEW_DOMAIN_PAGE_IF_DOM0(d, patch_paddr); 20.15 entry_imva = domain_mpa_to_imva(d, entry_paddr); 20.16 @@ -190,9 +184,6 @@ static void dom_efi_hypercall_patch(stru 20.17 { 20.18 unsigned long *imva; 20.19 20.20 -#ifndef CONFIG_XEN_IA64_DOM0_VP 20.21 - if (d == dom0) paddr += dom0_start; 20.22 -#endif 20.23 ASSIGN_NEW_DOMAIN_PAGE_IF_DOM0(d, paddr); 20.24 imva = domain_mpa_to_imva(d, paddr); 20.25 build_hypercall_bundle(imva, d->arch.breakimm, hypercall, 1); 20.26 @@ -223,12 +214,6 @@ void dom_fw_setup(struct domain *d, unsi 20.27 struct ia64_boot_param *bp; 20.28 20.29 dom_fw_base_mpa = 0; 20.30 -#ifndef CONFIG_XEN_IA64_DOM0_VP 20.31 - if (d == dom0) { 20.32 - dom_fw_base_mpa += dom0_start; 20.33 - bp_mpa += dom0_start; 20.34 - } 20.35 -#endif 20.36 ASSIGN_NEW_DOMAIN_PAGE_IF_DOM0(d, dom_fw_base_mpa); 20.37 imva_fw_base = (unsigned long) domain_mpa_to_imva(d, dom_fw_base_mpa); 20.38 ASSIGN_NEW_DOMAIN_PAGE_IF_DOM0(d, bp_mpa); 20.39 @@ -483,10 +468,8 @@ dom_fw_fake_acpi(struct domain *d, struc 20.40 #define NUM_MEM_DESCS 64 //large enough 20.41 20.42 struct dom0_passthrough_arg { 20.43 -#ifdef CONFIG_XEN_IA64_DOM0_VP 20.44 struct domain* d; 20.45 int flags; 20.46 -#endif 20.47 efi_memory_desc_t *md; 20.48 int* i; 20.49 }; 20.50 @@ -496,8 +479,6 @@ dom_fw_dom0_passthrough(efi_memory_desc_ 20.51 { 20.52 struct dom0_passthrough_arg* arg = (struct dom0_passthrough_arg*)arg__; 20.53 unsigned long paddr; 20.54 - 20.55 -#ifdef CONFIG_XEN_IA64_DOM0_VP 20.56 struct domain* d = arg->d; 20.57 u64 start = md->phys_addr; 20.58 u64 size = md->num_pages << EFI_PAGE_SHIFT; 20.59 @@ -515,9 +496,6 @@ dom_fw_dom0_passthrough(efi_memory_desc_ 20.60 paddr = assign_domain_mmio_page(d, start, size); 20.61 } else 20.62 paddr = assign_domain_mach_page(d, start, size, arg->flags); 20.63 -#else 20.64 - paddr = md->phys_addr; 20.65 -#endif 20.66 20.67 BUG_ON(md->type != EFI_RUNTIME_SERVICES_CODE && 20.68 md->type != EFI_RUNTIME_SERVICES_DATA && 20.69 @@ -630,11 +608,7 @@ dom_fw_init (struct domain *d, struct ia 20.70 unsigned char checksum = 0; 20.71 char *cp, *fw_vendor; 20.72 int num_mds, j, i = 0; 20.73 -#ifdef CONFIG_XEN_IA64_DOM0_VP 20.74 const unsigned long start_mpaddr = 0; 20.75 -#else 20.76 - const unsigned long start_mpaddr = ((d==dom0)?dom0_start:0); 20.77 -#endif 20.78 20.79 /* FIXME: should check size but for now we have a whole MB to play with. 20.80 And if stealing code from fw-emu.c, watch out for new fw_vendor on the end! 20.81 @@ -800,52 +774,24 @@ dom_fw_init (struct domain *d, struct ia 20.82 dom_pa((unsigned long)fw_mem + fw_mem_size), 1); 20.83 20.84 if (d == dom0) { 20.85 -#ifndef CONFIG_XEN_IA64_DOM0_VP 20.86 - /* 20.87 - * This is a bad hack. Dom0 may share other domains' memory 20.88 - * through a dom0 physical address. Unfortunately, this 20.89 - * address may be used in maddr_to_page (e.g. in the loopback 20.90 - * driver) but when Linux initializes memory it only creates 20.91 - * page structs for the physical memory it knows about. And 20.92 - * on ia64, only for full writeback granules. So, we reserve 20.93 - * the last full granule of Xen's memory for dom0 (in 20.94 - * start_kernel) to ensure dom0 creates a large enough memmap 20.95 - */ 20.96 - unsigned long last_start = max_page << PAGE_SHIFT; 20.97 - unsigned long last_end = last_start + IA64_GRANULE_SIZE; 20.98 - 20.99 - /* simulate 1MB free memory at physical address zero */ 20.100 - MAKE_MD(EFI_LOADER_DATA,EFI_MEMORY_WB,0*MB,1*MB, 0);//XXX 20.101 -#endif 20.102 /* hypercall patches live here, masquerade as reserved PAL memory */ 20.103 MAKE_MD(EFI_PAL_CODE,EFI_MEMORY_WB|EFI_MEMORY_RUNTIME,HYPERCALL_START,HYPERCALL_END, 0); 20.104 20.105 -#ifndef CONFIG_XEN_IA64_DOM0_VP 20.106 - MAKE_MD(EFI_CONVENTIONAL_MEMORY,EFI_MEMORY_WB,HYPERCALL_END,maxmem-IA64_GRANULE_SIZE, 0);//XXX make sure this doesn't overlap on i/o, runtime area. 20.107 -/* hack */ MAKE_MD(EFI_CONVENTIONAL_MEMORY,EFI_MEMORY_WB,last_start,last_end,1); 20.108 -#endif 20.109 - 20.110 /* pass through the I/O port space */ 20.111 if (!running_on_sim) { 20.112 struct dom0_passthrough_arg arg; 20.113 arg.md = &efi_memmap[i]; 20.114 arg.i = &i; 20.115 -#ifdef CONFIG_XEN_IA64_DOM0_VP 20.116 arg.d = d; 20.117 arg.flags = ASSIGN_writable; 20.118 -#endif 20.119 //XXX Is this needed? 20.120 efi_memmap_walk_type(EFI_RUNTIME_SERVICES_CODE, 20.121 dom_fw_dom0_passthrough, &arg); 20.122 // for ACPI table. 20.123 -#ifdef CONFIG_XEN_IA64_DOM0_VP 20.124 arg.flags = ASSIGN_readonly; 20.125 -#endif 20.126 efi_memmap_walk_type(EFI_RUNTIME_SERVICES_DATA, 20.127 dom_fw_dom0_passthrough, &arg); 20.128 -#ifdef CONFIG_XEN_IA64_DOM0_VP 20.129 arg.flags = ASSIGN_writable; 20.130 -#endif 20.131 efi_memmap_walk_type(EFI_ACPI_RECLAIM_MEMORY, 20.132 dom_fw_dom0_passthrough, &arg); 20.133 efi_memmap_walk_type(EFI_ACPI_MEMORY_NVS, 20.134 @@ -861,12 +807,6 @@ dom_fw_init (struct domain *d, struct ia 20.135 } 20.136 else MAKE_MD(EFI_RESERVED_TYPE,0,0,0,0); 20.137 } else { 20.138 -#ifndef CONFIG_XEN_IA64_DOM0_VP 20.139 - /* Dom0 maps legacy mmio in first MB. */ 20.140 - MAKE_MD(EFI_LOADER_DATA, EFI_MEMORY_WB, 0*MB, 1*MB, 1); 20.141 - MAKE_MD(EFI_CONVENTIONAL_MEMORY, EFI_MEMORY_WB, 20.142 - HYPERCALL_END, maxmem, 1); 20.143 -#endif 20.144 /* hypercall patches live here, masquerade as reserved 20.145 PAL memory */ 20.146 MAKE_MD(EFI_PAL_CODE, EFI_MEMORY_WB | EFI_MEMORY_RUNTIME, 20.147 @@ -877,7 +817,6 @@ dom_fw_init (struct domain *d, struct ia 20.148 MAKE_MD(EFI_RESERVED_TYPE,0,0,0,0); 20.149 } 20.150 20.151 -#ifdef CONFIG_XEN_IA64_DOM0_VP 20.152 // simple 20.153 // MAKE_MD(EFI_CONVENTIONAL_MEMORY, EFI_MEMORY_WB, 20.154 // HYPERCALL_END, maxmem, 0); 20.155 @@ -920,7 +859,6 @@ dom_fw_init (struct domain *d, struct ia 20.156 if (next_start >= maxmem) 20.157 break; 20.158 } 20.159 -#endif 20.160 sort(efi_memmap, i, sizeof(efi_memory_desc_t), efi_mdt_cmp, NULL); 20.161 20.162 bp->efi_systab = dom_pa((unsigned long) fw_mem);
21.1 --- a/xen/arch/ia64/xen/domain.c Fri Aug 04 09:15:51 2006 -0600 21.2 +++ b/xen/arch/ia64/xen/domain.c Fri Aug 04 09:32:00 2006 -0600 21.3 @@ -49,9 +49,6 @@ 21.4 #include <asm/shadow.h> 21.5 #include <asm/privop_stat.h> 21.6 21.7 -#ifndef CONFIG_XEN_IA64_DOM0_VP 21.8 -#define CONFIG_DOMAIN0_CONTIGUOUS 21.9 -#endif 21.10 unsigned long dom0_start = -1L; 21.11 unsigned long dom0_size = 512*1024*1024; 21.12 unsigned long dom0_align = 64*1024*1024; 21.13 @@ -533,9 +530,7 @@ static void relinquish_memory(struct dom 21.14 21.15 /* Follow the list chain and /then/ potentially free the page. */ 21.16 ent = ent->next; 21.17 -#ifdef CONFIG_XEN_IA64_DOM0_VP 21.18 BUG_ON(get_gpfn_from_mfn(page_to_mfn(page)) != INVALID_M2P_ENTRY); 21.19 -#endif 21.20 put_page(page); 21.21 } 21.22 21.23 @@ -952,11 +947,7 @@ int construct_dom0(struct domain *d, 21.24 alloc_end = dom0_start + dom0_size; 21.25 max_pages = dom0_size / PAGE_SIZE; 21.26 d->max_pages = max_pages; 21.27 -#ifndef CONFIG_XEN_IA64_DOM0_VP 21.28 - d->tot_pages = d->max_pages; 21.29 -#else 21.30 d->tot_pages = 0; 21.31 -#endif 21.32 dsi.image_addr = (unsigned long)image_start; 21.33 dsi.image_len = image_len; 21.34 rc = parseelfimage(&dsi); 21.35 @@ -1053,25 +1044,6 @@ int construct_dom0(struct domain *d, 21.36 if (alloc_vcpu(d, i, i) == NULL) 21.37 printf ("Cannot allocate dom0 vcpu %d\n", i); 21.38 21.39 -#if defined(VALIDATE_VT) && !defined(CONFIG_XEN_IA64_DOM0_VP) 21.40 - /* Construct a frame-allocation list for the initial domain, since these 21.41 - * pages are allocated by boot allocator and pfns are not set properly 21.42 - */ 21.43 - for ( mfn = (alloc_start>>PAGE_SHIFT); 21.44 - mfn < (alloc_end>>PAGE_SHIFT); 21.45 - mfn++ ) 21.46 - { 21.47 - page = mfn_to_page(mfn); 21.48 - page_set_owner(page, d); 21.49 - page->u.inuse.type_info = 0; 21.50 - page->count_info = PGC_allocated | 1; 21.51 - list_add_tail(&page->list, &d->page_list); 21.52 - 21.53 - /* Construct 1:1 mapping */ 21.54 - set_gpfn_from_mfn(mfn, mfn); 21.55 - } 21.56 -#endif 21.57 - 21.58 /* Copy the OS image. */ 21.59 loaddomainelfimage(d,image_start); 21.60
22.1 --- a/xen/arch/ia64/xen/hypercall.c Fri Aug 04 09:15:51 2006 -0600 22.2 +++ b/xen/arch/ia64/xen/hypercall.c Fri Aug 04 09:32:00 2006 -0600 22.3 @@ -84,11 +84,7 @@ hypercall_t ia64_hypercall_table[] = 22.4 (hypercall_t)do_ni_hypercall, /* */ /* 45 */ 22.5 (hypercall_t)do_ni_hypercall, /* */ 22.6 (hypercall_t)do_ni_hypercall, /* */ 22.7 -#ifdef CONFIG_XEN_IA64_DOM0_VP 22.8 (hypercall_t)do_dom0vp_op, /* dom0vp_op */ 22.9 -#else 22.10 - (hypercall_t)do_ni_hypercall, /* arch_0 */ 22.11 -#endif 22.12 (hypercall_t)do_ni_hypercall, /* arch_1 */ 22.13 (hypercall_t)do_ni_hypercall, /* arch_2 */ /* 50 */ 22.14 (hypercall_t)do_ni_hypercall, /* arch_3 */
23.1 --- a/xen/arch/ia64/xen/hyperprivop.S Fri Aug 04 09:15:51 2006 -0600 23.2 +++ b/xen/arch/ia64/xen/hyperprivop.S Fri Aug 04 09:32:00 2006 -0600 23.3 @@ -32,20 +32,10 @@ 23.4 23.5 //#define FAST_TICK // mostly working (unat problems) but default off for now 23.6 //#define FAST_TLB_MISS_REFLECT // mostly working but default off for now 23.7 -# ifdef CONFIG_XEN_IA64_DOM0_VP 23.8 -# undef FAST_ITC //XXX CONFIG_XEN_IA64_DOM0_VP 23.9 - // TODO fast_itc doesn't suport dom0 vp yet. 23.10 -# else 23.11 -//# define FAST_ITC // to be reviewed 23.12 -# endif 23.13 +# undef FAST_ITC //XXX TODO fast_itc doesn't suport dom0 vp yet. 23.14 # define FAST_BREAK 23.15 -# ifndef CONFIG_XEN_IA64_DOM0_VP 23.16 -# define FAST_ACCESS_REFLECT 23.17 -# else 23.18 -# undef FAST_ACCESS_REFLECT //XXX CONFIG_XEN_IA64_DOM0_VP 23.19 - // TODO fast_access_reflect 23.20 +# undef FAST_ACCESS_REFLECT //XXX TODO fast_access_reflect 23.21 // doesn't support dom0 vp yet. 23.22 -# endif 23.23 # define FAST_RFI 23.24 # define FAST_SSM_I 23.25 # define FAST_PTC_GA
24.1 --- a/xen/arch/ia64/xen/mm.c Fri Aug 04 09:15:51 2006 -0600 24.2 +++ b/xen/arch/ia64/xen/mm.c Fri Aug 04 09:32:00 2006 -0600 24.3 @@ -173,12 +173,8 @@ 24.4 #include <asm/shadow.h> 24.5 #include <linux/efi.h> 24.6 24.7 -#ifndef CONFIG_XEN_IA64_DOM0_VP 24.8 -#define CONFIG_DOMAIN0_CONTIGUOUS 24.9 -#else 24.10 static void domain_page_flush(struct domain* d, unsigned long mpaddr, 24.11 unsigned long old_mfn, unsigned long new_mfn); 24.12 -#endif 24.13 24.14 extern unsigned long ia64_iobase; 24.15 24.16 @@ -268,12 +264,11 @@ relinquish_pte(struct domain* d, pte_t* 24.17 return; 24.18 } 24.19 24.20 -#ifdef CONFIG_XEN_IA64_DOM0_VP 24.21 if (page_get_owner(page) == d) { 24.22 BUG_ON(get_gpfn_from_mfn(mfn) == INVALID_M2P_ENTRY); 24.23 set_gpfn_from_mfn(mfn, INVALID_M2P_ENTRY); 24.24 } 24.25 -#endif 24.26 + 24.27 try_to_clear_PGC_allocate(d, page); 24.28 put_page(page); 24.29 } 24.30 @@ -397,10 +392,6 @@ gmfn_to_mfn_foreign(struct domain *d, un 24.31 { 24.32 unsigned long pte; 24.33 24.34 -#ifndef CONFIG_XEN_IA64_DOM0_VP 24.35 - if (d == dom0) 24.36 - return(gpfn); 24.37 -#endif 24.38 pte = lookup_domain_mpa(d,gpfn << PAGE_SHIFT, NULL); 24.39 if (!pte) { 24.40 panic("gmfn_to_mfn_foreign: bad gpfn. spinning...\n"); 24.41 @@ -427,34 +418,12 @@ u64 translate_domain_pte(u64 pteval, u64 24.42 // FIXME address had better be pre-validated on insert 24.43 mask = ~itir_mask(itir.itir); 24.44 mpaddr = ((pteval & _PAGE_PPN_MASK) & ~mask) | (address & mask); 24.45 -#ifdef CONFIG_XEN_IA64_DOM0_VP 24.46 - if (itir.ps > PAGE_SHIFT) { 24.47 + 24.48 + if (itir.ps > PAGE_SHIFT) 24.49 itir.ps = PAGE_SHIFT; 24.50 - } 24.51 -#endif 24.52 + 24.53 *logps = itir.ps; 24.54 -#ifndef CONFIG_XEN_IA64_DOM0_VP 24.55 - if (d == dom0) { 24.56 - if (mpaddr < dom0_start || mpaddr >= dom0_start + dom0_size) { 24.57 - /* 24.58 - printk("translate_domain_pte: out-of-bounds dom0 mpaddr 0x%lx! itc=%lx...\n", 24.59 - mpaddr, ia64_get_itc()); 24.60 - */ 24.61 - } 24.62 - } 24.63 - else if ((mpaddr >> PAGE_SHIFT) > d->max_pages) { 24.64 - /* Address beyond the limit. However the grant table is 24.65 - also beyond the limit. Display a message if not in the 24.66 - grant table. */ 24.67 - if (mpaddr >= IA64_GRANT_TABLE_PADDR 24.68 - && mpaddr < (IA64_GRANT_TABLE_PADDR 24.69 - + (ORDER_GRANT_FRAMES << PAGE_SHIFT))) 24.70 - printf("translate_domain_pte: bad mpa=0x%lx (> 0x%lx)," 24.71 - "vadr=0x%lx,pteval=0x%lx,itir=0x%lx\n", 24.72 - mpaddr, (unsigned long)d->max_pages<<PAGE_SHIFT, 24.73 - address, pteval, itir.itir); 24.74 - } 24.75 -#endif 24.76 + 24.77 pteval2 = lookup_domain_mpa(d, mpaddr, entry); 24.78 24.79 /* Check access rights. */ 24.80 @@ -525,14 +494,6 @@ unsigned long translate_domain_mpaddr(un 24.81 { 24.82 unsigned long pteval; 24.83 24.84 -#ifndef CONFIG_XEN_IA64_DOM0_VP 24.85 - if (current->domain == dom0) { 24.86 - if (mpaddr < dom0_start || mpaddr >= dom0_start + dom0_size) { 24.87 - printk("translate_domain_mpaddr: out-of-bounds dom0 mpaddr 0x%lx! continuing...\n", 24.88 - mpaddr); 24.89 - } 24.90 - } 24.91 -#endif 24.92 pteval = lookup_domain_mpa(current->domain, mpaddr, entry); 24.93 return ((pteval & _PAGE_PPN_MASK) | (mpaddr & ~PAGE_MASK)); 24.94 } 24.95 @@ -644,7 +605,6 @@ lookup_noalloc_domain_pte(struct domain* 24.96 return (volatile pte_t*)pte_offset_map(pmd, mpaddr); 24.97 } 24.98 24.99 -#ifdef CONFIG_XEN_IA64_DOM0_VP 24.100 static volatile pte_t* 24.101 lookup_noalloc_domain_pte_none(struct domain* d, unsigned long mpaddr) 24.102 { 24.103 @@ -684,7 +644,6 @@ unsigned long 24.104 return GPFN_INV_MASK; 24.105 return INVALID_MFN; 24.106 } 24.107 -#endif 24.108 24.109 unsigned long lookup_domain_mpa(struct domain *d, unsigned long mpaddr, 24.110 struct p2m_entry* entry) 24.111 @@ -973,7 +932,6 @@ ioports_deny_access(struct domain *d, un 24.112 return 0; 24.113 } 24.114 24.115 -#ifdef CONFIG_XEN_IA64_DOM0_VP 24.116 static void 24.117 assign_domain_same_page(struct domain *d, 24.118 unsigned long mpaddr, unsigned long size, 24.119 @@ -1563,7 +1521,6 @@ domain_page_mapped(struct domain* d, uns 24.120 return 1; 24.121 return 0; 24.122 } 24.123 -#endif 24.124 24.125 /* Flush cache of domain d. */ 24.126 void domain_cache_flush (struct domain *d, int sync_only)
25.1 --- a/xen/arch/ia64/xen/vcpu.c Fri Aug 04 09:15:51 2006 -0600 25.2 +++ b/xen/arch/ia64/xen/vcpu.c Fri Aug 04 09:32:00 2006 -0600 25.3 @@ -2012,9 +2012,7 @@ void vcpu_itc_no_srlz(VCPU *vcpu, UINT64 25.4 panic_domain (NULL, "vcpu_itc_no_srlz: domain trying to use " 25.5 "smaller page size!\n"); 25.6 25.7 -#ifdef CONFIG_XEN_IA64_DOM0_VP 25.8 BUG_ON(logps > PAGE_SHIFT); 25.9 -#endif 25.10 psr = ia64_clear_ic(); 25.11 ia64_itc(IorD,vaddr,pte,ps); // FIXME: look for bigger mappings 25.12 ia64_set_psr(psr);
26.1 --- a/xen/arch/ia64/xen/xensetup.c Fri Aug 04 09:15:51 2006 -0600 26.2 +++ b/xen/arch/ia64/xen/xensetup.c Fri Aug 04 09:32:00 2006 -0600 26.3 @@ -388,13 +388,6 @@ void start_kernel(void) 26.4 max_page = 0; 26.5 efi_memmap_walk(find_max_pfn, &max_page); 26.6 printf("find_memory: efi_memmap_walk returns max_page=%lx\n",max_page); 26.7 -#ifndef CONFIG_XEN_IA64_DOM0_VP 26.8 - /* this is a bad hack. see dom_fw.c creation of EFI map for dom0 */ 26.9 - max_page = (GRANULEROUNDDOWN(max_page << PAGE_SHIFT) 26.10 - - IA64_GRANULE_SIZE) >> PAGE_SHIFT; 26.11 - printf("find_memory: last granule reserved for dom0; xen max_page=%lx\n", 26.12 - max_page); 26.13 -#endif 26.14 efi_print(); 26.15 26.16 heap_start = memguard_init(ia64_imva(&_end));
27.1 --- a/xen/include/asm-ia64/config.h Fri Aug 04 09:15:51 2006 -0600 27.2 +++ b/xen/include/asm-ia64/config.h Fri Aug 04 09:32:00 2006 -0600 27.3 @@ -228,9 +228,7 @@ struct screen_info { }; 27.4 #define seq_printf(a,b...) printf(b) 27.5 //#define CONFIG_BLK_DEV_INITRD // needed to reserve memory for domain0 27.6 27.7 -#ifdef CONFIG_XEN_IA64_DOM0_VP 27.8 #define CONFIG_SHADOW 1 27.9 -#endif 27.10 27.11 // xen/include/asm/config.h 27.12 /******************************************************************************
28.1 --- a/xen/include/asm-ia64/grant_table.h Fri Aug 04 09:15:51 2006 -0600 28.2 +++ b/xen/include/asm-ia64/grant_table.h Fri Aug 04 09:32:00 2006 -0600 28.3 @@ -7,12 +7,6 @@ 28.4 28.5 #define ORDER_GRANT_FRAMES 0 28.6 28.7 -#ifndef CONFIG_XEN_IA64_DOM0_VP 28.8 -// for grant map/unmap 28.9 -#define create_grant_host_mapping(a, f, fl) 0 28.10 -#define destroy_grant_host_mapping(a, f, fl) 0 28.11 - 28.12 -#else 28.13 // for grant map/unmap 28.14 int create_grant_host_mapping(unsigned long gpaddr, unsigned long mfn, unsigned int flags); 28.15 int destroy_grant_host_mapping(unsigned long gpaddr, unsigned long mfn, unsigned int flags); 28.16 @@ -20,8 +14,6 @@ int destroy_grant_host_mapping(unsigned 28.17 // for grant transfer 28.18 void guest_physmap_add_page(struct domain *d, unsigned long gpfn, unsigned long mfn); 28.19 28.20 -#endif 28.21 - 28.22 // for grant table shared page 28.23 #define gnttab_create_shared_page(d, t, i) \ 28.24 do { \ 28.25 @@ -37,21 +29,11 @@ void guest_physmap_add_page(struct domai 28.26 #define gnttab_shared_maddr(d, t, i) \ 28.27 virt_to_maddr((char*)(t)->shared + ((i) << PAGE_SHIFT)) 28.28 28.29 -#ifndef CONFIG_XEN_IA64_DOM0_VP 28.30 -# define gnttab_shared_gmfn(d, t, i) \ 28.31 - ({ ((d) == dom0) ? \ 28.32 - (virt_to_maddr((t)->shared) >> PAGE_SHIFT) + (i): \ 28.33 - assign_domain_page((d), \ 28.34 - IA64_GRANT_TABLE_PADDR + ((i) << PAGE_SHIFT), \ 28.35 - gnttab_shared_maddr(d, t, i)), \ 28.36 - (IA64_GRANT_TABLE_PADDR >> PAGE_SHIFT) + (i);}) 28.37 -#else 28.38 # define gnttab_shared_gmfn(d, t, i) \ 28.39 ({ assign_domain_page((d), \ 28.40 IA64_GRANT_TABLE_PADDR + ((i) << PAGE_SHIFT), \ 28.41 gnttab_shared_maddr((d), (t), (i))); \ 28.42 (IA64_GRANT_TABLE_PADDR >> PAGE_SHIFT) + (i);}) 28.43 -#endif 28.44 28.45 #define gnttab_log_dirty(d, f) ((void)0) 28.46
29.1 --- a/xen/include/asm-ia64/mm.h Fri Aug 04 09:15:51 2006 -0600 29.2 +++ b/xen/include/asm-ia64/mm.h Fri Aug 04 09:32:00 2006 -0600 29.3 @@ -435,7 +435,6 @@ struct p2m_entry; 29.4 extern unsigned long lookup_domain_mpa(struct domain *d, unsigned long mpaddr, struct p2m_entry* entry); 29.5 extern void *domain_mpa_to_imva(struct domain *d, unsigned long mpaddr); 29.6 extern volatile pte_t *lookup_noalloc_domain_pte(struct domain* d, unsigned long mpaddr); 29.7 -#ifdef CONFIG_XEN_IA64_DOM0_VP 29.8 extern unsigned long assign_domain_mmio_page(struct domain *d, unsigned long mpaddr, unsigned long size); 29.9 extern unsigned long assign_domain_mach_page(struct domain *d, unsigned long mpaddr, unsigned long size, unsigned long flags); 29.10 int domain_page_mapped(struct domain *d, unsigned long mpaddr); 29.11 @@ -444,7 +443,6 @@ extern unsigned long ____lookup_domain_m 29.12 extern unsigned long do_dom0vp_op(unsigned long cmd, unsigned long arg0, unsigned long arg1, unsigned long arg2, unsigned long arg3); 29.13 extern unsigned long dom0vp_zap_physmap(struct domain *d, unsigned long gpfn, unsigned int extent_order); 29.14 extern unsigned long dom0vp_add_physmap(struct domain* d, unsigned long gpfn, unsigned long mfn, unsigned long flags, domid_t domid); 29.15 -#endif 29.16 29.17 extern volatile unsigned long *mpt_table; 29.18 extern unsigned long gmfn_to_mfn_foreign(struct domain *d, unsigned long gpfn); 29.19 @@ -499,11 +497,7 @@ extern u64 translate_domain_pte(u64 ptev 29.20 /* Arch-specific portion of memory_op hypercall. */ 29.21 #define arch_memory_op(op, arg) (-ENOSYS) 29.22 29.23 -#ifndef CONFIG_XEN_IA64_DOM0_VP 29.24 -#define steal_page(d, p, f) 0 29.25 -#else 29.26 int steal_page( 29.27 struct domain *d, struct page_info *page, unsigned int memflags); 29.28 -#endif 29.29 29.30 #endif /* __ASM_IA64_MM_H__ */
30.1 --- a/xen/include/asm-ia64/shadow.h Fri Aug 04 09:15:51 2006 -0600 30.2 +++ b/xen/include/asm-ia64/shadow.h Fri Aug 04 09:32:00 2006 -0600 30.3 @@ -25,7 +25,6 @@ 30.4 30.5 #include <xen/config.h> 30.6 30.7 -#ifdef CONFIG_XEN_IA64_DOM0_VP 30.8 #ifndef CONFIG_SHADOW 30.9 # error "CONFIG_SHADOW must be defined" 30.10 #endif 30.11 @@ -43,7 +42,6 @@ 30.12 */ 30.13 void guest_physmap_add_page(struct domain *d, unsigned long gpfn, unsigned long mfn); 30.14 void guest_physmap_remove_page(struct domain *d, unsigned long gpfn, unsigned long mfn); 30.15 -#endif 30.16 30.17 static inline int 30.18 shadow_mode_enabled(struct domain *d)
31.1 --- a/xen/include/asm-ia64/vhpt.h Fri Aug 04 09:15:51 2006 -0600 31.2 +++ b/xen/include/asm-ia64/vhpt.h Fri Aug 04 09:32:00 2006 -0600 31.3 @@ -4,12 +4,8 @@ 31.4 #define VHPT_ENABLED 1 31.5 31.6 /* Size of the VHPT. */ 31.7 -#ifdef CONFIG_XEN_IA64_DOM0_VP 31.8 // XXX work around to avoid trigerring xenLinux software lock up detection. 31.9 # define VHPT_SIZE_LOG2 16 // 64KB 31.10 -#else 31.11 -# define VHPT_SIZE_LOG2 24 // 16MB default 31.12 -#endif 31.13 31.14 /* Number of entries in the VHPT. The size of an entry is 4*8B == 32B */ 31.15 #define VHPT_NUM_ENTRIES (1 << (VHPT_SIZE_LOG2 - 5))