[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] Question about vcpu_avail
On 11/23/2009 04:28 PM, Keir Fraser wrote: On 23/11/2009 15:02, "Michal Novotny"<minovotn@xxxxxxxxxx> wrote:I would like to ask about vcpu_avail variable in XendDomainInfo.py. Is that variable working and what is it used for ? I think it's a bitmask showing what VCPUs are used and what are not, am I correct?Yes, it allows you to configure which VCPUs are brought online by default on guest bootup. If you do add a maxvcpus config item, it can be parsed out into vcpus and vcpu_avail entirely within xm's create.py (excuse dodgy pseudocode): if defined(maxvcpus): vcpu_avail = (1<< vcpus) - 1 vcpus = maxvcpus i.e., no need for xend itself to know about the new config item. -- Keir Well, I don't know Keir since the main use scenario for maxvcpus is to set number of vcpus for the guest so a new definition in Xend should be required. Then you just issue `xm vcpu-set {domainName} {numberOfVcpus}` command to change number of VCPUs used by the guest, method `setVCpuCount(self, vcpus)` from XendDomainInfo.py is called to set number of VCpus so check should be implemented here as: def setVCpuCount(self, vcpus): if vcpus > self.info['maxvcpus']: log.debug("Cannot set %d vcpu(s) for domain %s (domid %d)." "Maximum number of vcpu(s) is set to %d" % (vcpus, self.info['name'], self.domid, self.info['maxvcpus']))raise VmError("Cannot set %d vcpu(s). Maximum number of vcpus for " "this domain is %d" % (vcpus, self.info['maxvcpus']) ) self.info['vcpu_avail'] = (1 << vcpus) - 1 self.storeVm('vcpu_avail', self.info['vcpu_avail'])And domain_max_vcpus() call should be changed from `xc.domain_max_vcpus(self.domid, int(self.info['vcpus']))` to `xc.domain_max_vcpus(self.domid, int(self.info['maxvcpus']))`. The only change that should be done to xm/create.py is to add `maxvcpus` to add_conf mapping to allow it to be read/parsed out from the config file. Well, I've been looking to the code and there is self.info['VCPUs_max'] in XendDomainInfo.py. What is it used for? Could it be used for the same purpose like `maxvcpus` from example above? Michal Also, I'm thinking of adding some variable of `maxvcpus` to define maximum number of vcpus for PV guests. This way we could define a config file like: vcpus = 2 maxvcpus = 4 and by setting `xm vcpu-set {domain} {numberOfVCPUs}` we can set up to 4 vcpus. Current behavior is to set to 1 vcpu and back to 2 vcpus but never to cross the number defined in of vcpus. Now we could be able to allocate up to 4 vcpus to the guest and not just 2... What do you think about that idea?_______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |