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

[Xen-devel] "cpus" config parameter broken?

I've been looking into a report that vcpu pinning doesn't get preserved across a save/restore
(or migrate) and, debugging this, it's starting to look like the "cpus" config file parameter doesn't
work very well -- on 3.1 or unstable!  If anything is specified other than a single integer,
the code reverts to "any cpu".  I think I found this specific problem but there seems to be some
bad bit rot hiding behind that.   So before I go any further, I thought I'd ask a few questions:
1) Is the "cpus" parameter expected to work in a config file or is it somehow deprecated?
   (I see there is an "xm vcpu-pin" command so perhaps this is the accepted way to
   pin cpu's?)
2) Pinning via the "cpus" parameter calls vcpu_set_affinity() but I've always thought the term
    "affinity" expresses a preference not a restriction.  If the call to setaffinity did get
   made properly, would the scheduler really restrict the vcpu to certain pcpu's?  And
   what happens if the vcpu is ready to schedule but none of the restricted set of
   pcpu's is available?
3) Does "cpus" really have any real-world usage anyhow?  E.g. are most uses probably just
    user misunderstanding where "vcpu_avail" should be used instead?
Xen-devel mailing list



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