WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

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

To: "xen-devel@xxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxx>
Subject: [Xen-devel] "cpus" config parameter broken?
From: "Dan Magenheimer" <dan.magenheimer@xxxxxxxxxx>
Date: Mon, 7 Jan 2008 18:09:52 -0700
Delivery-date: Mon, 07 Jan 2008 17:10:54 -0800
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
Organization: Oracle Corporation
Reply-to: "dan.magenheimer@xxxxxxxxxx" <dan.magenheimer@xxxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
Thread-index: AchRkyjajMDoVQVpQRWI8qTGrlL9cg==
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?
 
Thanks,
Dan
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel