|
|
|
|
|
|
|
|
|
|
xen-ppc-devel
[XenPPC] [xenppc-unstable] [XEN][POWERPC] Allocate secondary VCPUs for D
# HG changeset patch
# User Jimi Xenidis <jimix@xxxxxxxxxxxxxx>
# Node ID 1b00e1288e8ca376d2674628b1bfff698443dbf2
# Parent d7a63be8595e3b7f435ba2fc3352d6089a84a85d
[XEN][POWERPC] Allocate secondary VCPUs for Dom0
Signed-off-by: Jimi Xenidis <jimix@xxxxxxxxxxxxxx>
---
xen/arch/powerpc/domain_build.c | 23 +++++++++++++++++++++++
1 files changed, 23 insertions(+)
diff -r d7a63be8595e -r 1b00e1288e8c xen/arch/powerpc/domain_build.c
--- a/xen/arch/powerpc/domain_build.c Sun Jan 21 07:47:35 2007 -0500
+++ b/xen/arch/powerpc/domain_build.c Sun Jan 21 07:49:50 2007 -0500
@@ -26,6 +26,7 @@
#include <xen/ctype.h>
#include <xen/iocap.h>
#include <xen/shadow.h>
+#include <xen/domain.h>
#include <xen/version.h>
#include <asm/processor.h>
#include <asm/papr.h>
@@ -120,6 +121,7 @@ int construct_dom0(struct domain *d,
ulong msr;
ulong pc;
ulong r2;
+ int vcpu;
/* Sanity! */
BUG_ON(d->domain_id != 0);
@@ -209,6 +211,27 @@ int construct_dom0(struct domain *d,
/* put stack below everything */
v->arch.ctxt.gprs[1] = dst - STACK_FRAME_OVERHEAD;
+
+ /* startup secondary processors */
+ if ( opt_dom0_max_vcpus == 0 )
+ opt_dom0_max_vcpus = num_online_cpus();
+ if ( opt_dom0_max_vcpus > num_online_cpus() )
+ opt_dom0_max_vcpus = num_online_cpus();
+ if ( opt_dom0_max_vcpus > MAX_VIRT_CPUS )
+ opt_dom0_max_vcpus = MAX_VIRT_CPUS;
+#ifdef BITS_PER_GUEST_LONG
+ if ( opt_dom0_max_vcpus > BITS_PER_GUEST_LONG(d) )
+ opt_dom0_max_vcpus = BITS_PER_GUEST_LONG(d);
+#endif
+ printk("Dom0 has maximum %u VCPUs\n", opt_dom0_max_vcpus);
+
+ for (vcpu = 1; vcpu < opt_dom0_max_vcpus; vcpu++) {
+ if (NULL == alloc_vcpu(dom0, vcpu, vcpu))
+ panic("Error creating domain 0 vcpu %d\n", vcpu);
+ /* for now we pin Dom0 VCPUs to their coresponding CPUs */
+ if (cpu_isset(vcpu, cpu_online_map))
+ dom0->vcpu[vcpu]->cpu_affinity = cpumask_of_cpu(vcpu);
+ }
/* copy relative to Xen */
dst += rma;
_______________________________________________
Xen-ppc-devel mailing list
Xen-ppc-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-ppc-devel
|
<Prev in Thread] |
Current Thread |
[Next in Thread> |
- [XenPPC] [xenppc-unstable] [XEN][POWERPC] Allocate secondary VCPUs for Dom0,
Xen patchbot-xenppc-unstable <=
|
|
|
|
|