direct-io.hg
changeset 4495:4c5d6dc1eafe
bitkeeper revision 1.1280 (42546436AjH1RKAsscWgqxhnCsGwyg)
Get the x86/64 build working again.
Signed-off-by: Keir Fraser <keir@xensource.com>
Get the x86/64 build working again.
Signed-off-by: Keir Fraser <keir@xensource.com>
author | kaf24@firebug.cl.cam.ac.uk |
---|---|
date | Wed Apr 06 22:35:34 2005 +0000 (2005-04-06) |
parents | d946608e6ddc |
children | 6a9598f401d9 |
files | xen/arch/x86/audit.c xen/arch/x86/shadow.c |
line diff
1.1 --- a/xen/arch/x86/audit.c Wed Apr 06 22:35:02 2005 +0000 1.2 +++ b/xen/arch/x86/audit.c Wed Apr 06 22:35:34 2005 +0000 1.3 @@ -30,8 +30,7 @@ 1.4 #include <asm/page.h> 1.5 #include <asm/flushtlb.h> 1.6 1.7 -// XXX SMP bug -- these should not be statics... 1.8 -// 1.9 +/* XXX SMP bug -- these should not be statics... */ 1.10 static int ttot=0, ctot=0, io_mappings=0, lowmem_mappings=0; 1.11 static int l1, l2, oos_count, page_count; 1.12 1.13 @@ -538,10 +537,14 @@ int audit_adjust_pgtables(struct domain 1.14 } 1.15 } 1.16 1.17 +#ifdef __i386__ 1.18 if ( shadow_mode_external(d) ) 1.19 l2limit = L2_PAGETABLE_ENTRIES; 1.20 else 1.21 l2limit = DOMAIN_ENTRIES_PER_L2_PAGETABLE; 1.22 +#else 1.23 + l2limit = 0; /* XXX x86/64 XXX */ 1.24 +#endif 1.25 1.26 adjust_for_pgtbase(); 1.27 1.28 @@ -553,7 +556,6 @@ int audit_adjust_pgtables(struct domain 1.29 adjust_shadow_tables(); 1.30 } 1.31 1.32 - //printk("d->shared_info=%p __pa()=%p\n", d->shared_info, __pa(d->shared_info)); 1.33 adjust(virt_to_page(d->shared_info), 1); 1.34 1.35 return errors;
2.1 --- a/xen/arch/x86/shadow.c Wed Apr 06 22:35:02 2005 +0000 2.2 +++ b/xen/arch/x86/shadow.c Wed Apr 06 22:35:34 2005 +0000 2.3 @@ -322,10 +322,14 @@ free_shadow_hl2_table(struct domain *d, 2.4 l1_pgentry_t *hl2 = map_domain_mem(smfn << PAGE_SHIFT); 2.5 int i, limit; 2.6 2.7 +#ifdef __i386__ 2.8 if ( shadow_mode_external(d) ) 2.9 limit = L2_PAGETABLE_ENTRIES; 2.10 else 2.11 limit = DOMAIN_ENTRIES_PER_L2_PAGETABLE; 2.12 +#else 2.13 + limit = 0; /* XXX x86/64 XXX */ 2.14 +#endif 2.15 2.16 for ( i = 0; i < limit; i++ ) 2.17 { 2.18 @@ -604,9 +608,11 @@ static void alloc_monitor_pagetable(stru 2.19 mpl2e = (l2_pgentry_t *) map_domain_mem(mmfn << PAGE_SHIFT); 2.20 memset(mpl2e, 0, PAGE_SIZE); 2.21 2.22 +#ifdef __i386__ /* XXX screws x86/64 build */ 2.23 memcpy(&mpl2e[DOMAIN_ENTRIES_PER_L2_PAGETABLE], 2.24 &idle_pg_table[DOMAIN_ENTRIES_PER_L2_PAGETABLE], 2.25 HYPERVISOR_ENTRIES_PER_L2_PAGETABLE * sizeof(l2_pgentry_t)); 2.26 +#endif 2.27 2.28 mpl2e[l2_table_offset(PERDOMAIN_VIRT_START)] = 2.29 mk_l2_pgentry((__pa(d->arch.mm_perdomain_pt) & PAGE_MASK) 2.30 @@ -1306,10 +1312,14 @@ shadow_hl2_table(struct domain *d, unsig 2.31 2.32 hl2 = map_domain_mem(hl2mfn << PAGE_SHIFT); 2.33 2.34 +#ifdef __i386__ 2.35 if ( shadow_mode_external(d) ) 2.36 limit = L2_PAGETABLE_ENTRIES; 2.37 else 2.38 limit = DOMAIN_ENTRIES_PER_L2_PAGETABLE; 2.39 +#else 2.40 + limit = 0; /* XXX x86/64 XXX */ 2.41 +#endif 2.42 2.43 memset(hl2, 0, limit * sizeof(l1_pgentry_t)); 2.44 2.45 @@ -2712,10 +2722,14 @@ int check_l2_table( 2.46 (__pa(d->arch.mm_perdomain_pt) | __PAGE_HYPERVISOR)); 2.47 } 2.48 2.49 +#ifdef __i386__ 2.50 if ( shadow_mode_external(d) ) 2.51 limit = L2_PAGETABLE_ENTRIES; 2.52 else 2.53 limit = DOMAIN_ENTRIES_PER_L2_PAGETABLE; 2.54 +#else 2.55 + limit = 0; /* XXX x86/64 XXX */ 2.56 +#endif 2.57 2.58 /* Check the whole L2. */ 2.59 for ( i = 0; i < limit; i++ ) 2.60 @@ -2773,10 +2787,14 @@ int _check_pagetable(struct exec_domain 2.61 spl2e = (l2_pgentry_t *) map_domain_mem( smfn << PAGE_SHIFT ); 2.62 2.63 /* Go back and recurse. */ 2.64 +#ifdef __i386__ 2.65 if ( shadow_mode_external(d) ) 2.66 limit = L2_PAGETABLE_ENTRIES; 2.67 else 2.68 limit = DOMAIN_ENTRIES_PER_L2_PAGETABLE; 2.69 +#else 2.70 + limit = 0; /* XXX x86/64 XXX */ 2.71 +#endif 2.72 2.73 for ( i = 0; i < limit; i++ ) 2.74 {