]> xenbits.xensource.com Git - people/iwj/xen.git/commitdiff
xen/arm: allocate secondaries dom0 vcpus
authorStefano Stabellini <stefano.stabellini@eu.citrix.com>
Tue, 7 May 2013 14:12:39 +0000 (15:12 +0100)
committerIan Campbell <ian.campbell@citrix.com>
Wed, 8 May 2013 10:02:01 +0000 (11:02 +0100)
Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
xen/arch/arm/domain_build.c

index 1b2a4fab6cfabea0c127c434cb2f67cddf063622..874827240af584132ad8cbf56bdf8ed8ebde24af 100644 (file)
@@ -363,7 +363,7 @@ static void dtb_load(struct kernel_info *kinfo)
 int construct_dom0(struct domain *d)
 {
     struct kernel_info kinfo = {};
-    int rc;
+    int rc, i, cpu;
 
     struct vcpu *v = d->vcpu[0];
     struct cpu_user_regs *regs = &v->arch.cpu_info->guest_cpu_user_regs;
@@ -452,6 +452,16 @@ int construct_dom0(struct domain *d)
     }
 #endif
 
+    for ( i = 1, cpu = 0; i < d->max_vcpus; i++ )
+    {
+        cpu = cpumask_cycle(cpu, &cpu_online_map);
+        if ( alloc_vcpu(d, i, cpu) == NULL )
+        {
+            printk("Failed to allocate dom0 vcpu %d on pcpu %d\n", i, cpu);
+            break;
+        }
+    }
+
     local_abort_enable();
 
     return 0;