[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] Fix broken VTI due to previous multi-domain prep patch
ChangeSet 1.1709.1.5, 2005/06/14 11:39:23-06:00, djm@xxxxxxxxxxxxxxx Fix broken VTI due to previous multi-domain prep patch Signed-off-by Kevin Tian <Kevin.tian@xxxxxxxxx> domain.c | 24 ++++++------------------ vmx_process.c | 1 - 2 files changed, 6 insertions(+), 19 deletions(-) diff -Nru a/xen/arch/ia64/domain.c b/xen/arch/ia64/domain.c --- a/xen/arch/ia64/domain.c 2005-06-19 14:03:59 -04:00 +++ b/xen/arch/ia64/domain.c 2005-06-19 14:03:59 -04:00 @@ -230,19 +230,6 @@ d->xen_vastart = 0xf000000000000000; d->xen_vaend = 0xf300000000000000; d->arch.breakimm = 0x1000; - - d->arch.mm = xmalloc(struct mm_struct); - if (unlikely(!d->arch.mm)) { - printk("Can't allocate mm_struct for domain %d\n",d->domain_id); - return -ENOMEM; - } - memset(d->arch.mm, 0, sizeof(*d->arch.mm)); - d->arch.mm->pgd = pgd_alloc(d->arch.mm); - if (unlikely(!d->arch.mm->pgd)) { - printk("Can't allocate pgd for domain %d\n",d->domain_id); - return -ENOMEM; - } -} } #else // CONFIG_VTI void arch_do_createdomain(struct vcpu *v) @@ -366,21 +353,22 @@ regs->cr_iip = start_pc; regs->cr_ifs = 0; /* why? - matthewc */ regs->ar_fpsr = FPSR_DEFAULT; - if (VMX_DOMAIN(ed)) { + if (VMX_DOMAIN(v)) { vmx_init_all_rr(v); } else init_all_rr(v); - /* should this be regs->r28 in the non-VMX case? - matthewc */ - VMX_VPD(v,vgr[12]) = dom_fw_setup(d,saved_command_line,256L); //FIXME + if (VMX_DOMAIN(v)) { + VMX_VPD(v,vgr[12]) = dom_fw_setup(d,saved_command_line,256L); /* Virtual processor context setup */ VMX_VPD(v, vpsr) = IA64_PSR_BN; VPD_CR(v, dcr) = 0; } else { + regs->r28 = dom_fw_setup(d,saved_command_line,256L); v->vcpu_info->arch.banknum = 1; - /* v->vcpu_info->arch.metaphysical_mode = 1; why not? - matthewc */ + v->vcpu_info->arch.metaphysical_mode = 1; + d->shared_info->arch.flags = (d == dom0) ? (SIF_INITDOMAIN|SIF_PRIVILEGED|SIF_BLK_BE_DOMAIN|SIF_NET_BE_DOMAIN|SIF_USB_BE_DOMAIN) : 0; } - /* d->shared_info->arch.flags = (d == dom0) ? (SIF_INITDOMAIN|SIF_PRIVILEGED|SIF_BLK_BE_DOMAIN|SIF_NET_BE_DOMAIN|SIF_USB_BE_DOMAIN) : 0; shared_info not set yet? */ } #else // CONFIG_VTI diff -Nru a/xen/arch/ia64/vmx_process.c b/xen/arch/ia64/vmx_process.c --- a/xen/arch/ia64/vmx_process.c 2005-06-19 14:03:59 -04:00 +++ b/xen/arch/ia64/vmx_process.c 2005-06-19 14:03:59 -04:00 @@ -116,7 +116,6 @@ case FW_HYPERCALL_EFI_GET_TIME: { unsigned long *tv, *tc; - fooefi(); vmx_vcpu_get_gr(v, 32, &tv); vmx_vcpu_get_gr(v, 33, &tc); printf("efi_get_time(%p,%p) called...",tv,tc); _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |