[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: [Xen-devel] [PATCH]Check the values of MAX_VIRT_CPUS and NR_CPUSfor SMP



>From: Tristan Gingold [mailto:Tristan.Gingold@xxxxxxxx]
>Sent: 2006年4月21日 15:26
>> >
>> >See how we solve this on x86 near the top of do_boot_cpu() in
>> >arch/x86/smpboot.c. Essentially we allocate extra idle domains on
>> >demand to give us enough idle vcpus for one per physical cpu.
>> >
>> >  -- Keir
>>
>> Yes, that's the same story on ia64 where we also allocate idle
>> vcpu at do_boot_cpu(). That's why I'm not sure the real cause
>> for Atsushi's issue.
>No, we don't create extra domains.  Therefore it there are more CPUs
>than
>VCPUs, something goes wrong...
>

Yes, there's only one idle domain now. However I'm not sure 
why something will go wrong when NR_CPUS > MAX_VIRT_CPUS. 
As long as you want to wake up an AP, you have to go through 
do_boot_cpu where idle_vcpu will be created. The only drawback is 
that some physical cpus will not be waken up by "max_cpus = 
MAX_VIRT_CPUS" you mentioned in another thread. That needs to 
be fixed which however shouldn't crash anything since uninitialized 
cpus won't be used.

Thanks,
Kevin

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.