From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andrew Cooper Subject: Re: [PATCH v4 26/26] tools/libxc: Calculate xstate cpuid leaf from guest information Date: Tue, 5 Apr 2016 18:48:23 +0100 Message-ID: <5703FA67.9040302@citrix.com> References: <1458750989-28967-1-git-send-email-andrew.cooper3@citrix.com> <1458750989-28967-27-git-send-email-andrew.cooper3@citrix.com> <56FCF25402000078000E19E3@prv-mh.provo.novell.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <56FCF25402000078000E19E3@prv-mh.provo.novell.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: Jan Beulich Cc: Ian Jackson , Wei Liu , Xen-devel List-Id: xen-devel@lists.xenproject.org T24gMzEvMDMvMTYgMDg6NDgsIEphbiBCZXVsaWNoIHdyb3RlOgo+Pj4+IE9uIDIzLjAzLjE2IGF0 IDE3OjM2LCA8YW5kcmV3LmNvb3BlcjNAY2l0cml4LmNvbT4gd3JvdGU6Cj4+IC0tLSBhL3Rvb2xz L2xpYnhjL3hjX2NwdWlkX3g4Ni5jCj4+ICsrKyBiL3Rvb2xzL2xpYnhjL3hjX2NwdWlkX3g4Ni5j Cj4+IEBAIC0zOTgsNTQgKzM5OCw5NyBAQCBzdGF0aWMgdm9pZCBpbnRlbF94Y19jcHVpZF9wb2xp Y3koeGNfaW50ZXJmYWNlICp4Y2gsCj4+ICAgICAgfQo+PiAgfQo+PiAgCj4+ICsvKiBYU1RBVEUg Yml0cyBpbiBYQ1IwLiAqLwo+PiArI2RlZmluZSBYODZfWENSMF9YODcgICAgKDFVTEwgPDwgIDAp Cj4+ICsjZGVmaW5lIFg4Nl9YQ1IwX1NTRSAgICAoMVVMTCA8PCAgMSkKPj4gKyNkZWZpbmUgWDg2 X1hDUjBfQVZYICAgICgxVUxMIDw8ICAyKQo+PiArI2RlZmluZSBYODZfWENSMF9CTkRSRUcgKDFV TEwgPDwgIDMpCj4+ICsjZGVmaW5lIFg4Nl9YQ1IwX0JORENTUiAoMVVMTCA8PCAgNCkKPj4gKyNk ZWZpbmUgWDg2X1hDUjBfTFdQICAgICgxVUxMIDw8IDYyKQo+IFdoeSBhbiBpbmNvbXBsZXRlIHNl dD8gQXQgbGVhc3QgUEtSVSBzaG91bGQgYmUgbmVlZGVkIHJpZ2h0Cj4gYXdheS4gQW5kIEkgc2Vl IG5vIHJlYXNvbiB3aHkgdGhlIHRocmVlIEFWWC01MTIgcGllY2VzIGNhbid0Cj4gYmUgcHV0IGhl cmUgcmlnaHQgYXdheSB0b28uCgpQS1JVIGlzIGFub3RoZXIgdmljdGltIG9mIHRoaXMgc2VyaWVz IGJlaW5nIHJlYmFzZWQgb3ZlciB0aGUKaW50cm9kdWN0aW9uIG9mIG5ldyBmdW5jdGlvbmFsaXR5 LiAgSSB3aWxsIHJlLWFkZCBpdC4KCkFWWC01MTIgd291bGQgcmVxdWlyZSBhZGRpbmcgdGhlIEFW WCBmZWF0dXJlIGZsYWdzLCBhbmQgZGVjaXBoZXJpbmcgdGhlCmRlcGVuZGVuY3kgdHJlZSBmb3Ig YWxsIG9mIHRoZW0uICBJIGhhdmUgbm8gYWJpbGl0eSB0byB0ZXN0IGFueSBzdWNoCmFkZGl0aW9u cyAobm8gYXZhaWxhYmxlIGhhcmR3YXJlKSwgYW5kIGRvbid0IHdhbnQgdG8gaW50cm9kdWNlCnBv c3NpYmx5LWJ1Z2d5IGNvZGUgYWhlYWQgb2YgZnVsbCBzdXBwb3J0IGJlaW5nIGFkZGVkLgoKPgo+ PiArI2RlZmluZSBYODZfWFNTX01BU0sgICAgKDApIC8qIE5vIFhTUyBzdGF0ZXMgc3VwcG9ydGVk IHlldC4gKi8KPj4gKwo+PiArLyogUGVyLWNvbXBvbmVudCBzdWJsZWFmIGZsYWdzLiAqLwo+PiAr I2RlZmluZSBYU1RBVEVfWFNTICAgICAgKDFVTEwgPDwgIDApCj4+ICsjZGVmaW5lIFhTVEFURV9B TElHTjY0ICAoMVVMTCA8PCAgMSkKPj4gKwo+PiAgLyogQ29uZmlndXJlIGV4dGVuZGVkIHN0YXRl IGVudW1lcmF0aW9uIGxlYXZlcyAoMHgwMDAwMDAwRCBmb3IgeHNhdmUpICovCj4+ICBzdGF0aWMg dm9pZCB4Y19jcHVpZF9jb25maWdfeHNhdmUoeGNfaW50ZXJmYWNlICp4Y2gsCj4+ICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3RydWN0IGNwdWlkX2RvbWFpbl9pbmZv ICppbmZvLAo+PiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHVuc2ln bmVkIGludCAqaW5wdXQsIHVuc2lnbmVkIGludCAqcmVncykKPj4gIHsKPj4gLSAgICBpZiAoIGlu Zm8tPnhmZWF0dXJlX21hc2sgPT0gMCApCj4+ICsgICAgdWludDY0X3QgZ3Vlc3RfeGZlYXR1cmVf bWFzazsKPj4gKwo+PiArICAgIGlmICggaW5mby0+eGZlYXR1cmVfbWFzayA9PSAwIHx8Cj4+ICsg ICAgICAgICAhdGVzdF9iaXQoWDg2X0ZFQVRVUkVfWFNBVkUsIGluZm8tPmZlYXR1cmVzZXQpICkK Pj4gICAgICB7Cj4+ICAgICAgICAgIHJlZ3NbMF0gPSByZWdzWzFdID0gcmVnc1syXSA9IHJlZ3Nb M10gPSAwOwo+PiAgICAgICAgICByZXR1cm47Cj4+ICAgICAgfQo+PiAgCj4+ICsgICAgZ3Vlc3Rf eGZlYXR1cmVfbWFzayA9IFg4Nl9YQ1IwX1NTRSB8IFg4Nl9YQ1IwX1g4NzsKPj4gKwo+PiArICAg IGlmICggdGVzdF9iaXQoWDg2X0ZFQVRVUkVfQVZYLCBpbmZvLT5mZWF0dXJlc2V0KSApCj4+ICsg ICAgICAgIGd1ZXN0X3hmZWF0dXJlX21hc2sgfD0gWDg2X1hDUjBfQVZYOwo+PiArCj4+ICsgICAg aWYgKCB0ZXN0X2JpdChYODZfRkVBVFVSRV9NUFgsIGluZm8tPmZlYXR1cmVzZXQpICkKPj4gKyAg ICAgICAgZ3Vlc3RfeGZlYXR1cmVfbWFzayB8PSBYODZfWENSMF9CTkRSRUcgfCBYODZfWENSMF9C TkRDU1I7Cj4+ICsKPj4gKyAgICBpZiAoIHRlc3RfYml0KFg4Nl9GRUFUVVJFX0xXUCwgaW5mby0+ ZmVhdHVyZXNldCkgKQo+PiArICAgICAgICBndWVzdF94ZmVhdHVyZV9tYXNrIHw9IFg4Nl9YQ1Iw X0xXUDsKPj4gKwo+PiArICAgIC8qCj4+ICsgICAgICogQ2xhbXAgdG8gaG9zdCBtYXNrLiAgU2hv dWxkIGJlIG5vLW9wLCBhcyBndWVzdF94ZmVhdHVyZV9tYXNrIHNob3VsZCBub3QKPj4gKyAgICAg KiBiZSBhYmxlIHRvIGJlIGNhbGN1bGF0ZWQgYXMgbGFyZ2VyIHRoYW4gaW5mby0+eGZlYXR1cmVf bWFzay4KPj4gKyAgICAgKgo+PiArICAgICAqIFRPRE8gLSBzZWUgYWJvdXQgbWFraW5nIHRoaXMg YSBoYXJkZXIgZXJyb3IuCj4+ICsgICAgICovCj4+ICsgICAgZ3Vlc3RfeGZlYXR1cmVfbWFzayAm PSBpbmZvLT54ZmVhdHVyZV9tYXNrOwo+IFRoaXMgaXMgdWdseS4KCkFuZCBub3cgSSB0aGluayBh Ym91dCBpdCwgd3JvbmcuICBEb20wJ3MgY3B1aWQgdmlldyBpcyB0aGF0IG9mIGEgUFYKZ3Vlc3Qs IHdoaWNoIGNvbWVzIHdpdGggbm8gWFNBVkVTICh3aGljaCB3aWxsIGltcGFjdCB0aGUgZnV0dXJl IHN1cHBvcnQKb2YgUHJvY2Vzc29yIFRyYWNlKSwgYW5kIG5vIFBLUlUuCgo+ICBGb3Igb25lLCB5 b3VyIGRlcGVuZGVuY3kgbWVjaGFuaXNtIHNob3VsZCBiZSBhYmxlIHRvCj4gZXhwcmVzcyB0aGUg ZGVwZW5kZW5jaWVzIHlvdSAibWFudWFsbHkiZW5mb3JjZSBhYm92ZS4gQW5kIGJleW9uZAo+IHRo YXQgbWFza2luZyB3aXRoIGluZm8tPnhmZWF0dXJlX21hc2sgc2hvdWxkIGJlIGFsbCB0aGF0J3Mg bmVlZGVkLAo+IHRvZ2V0aGVyIHdpdGggZW5mb3JjaW5nIHRoZSBYQ1IwIC8gWFNTIHNwbGl0IC4u Lgo+Cj4+ICAgICAgc3dpdGNoICggaW5wdXRbMV0gKQo+PiAgICAgIHsKPj4gLSAgICBjYXNlIDA6 IAo+PiArICAgIGNhc2UgMDoKPj4gICAgICAgICAgLyogRUFYOiBsb3cgMzJiaXRzIG9mIHhmZWF0 dXJlX2VuYWJsZWRfbWFzayAqLwo+PiAtICAgICAgICByZWdzWzBdID0gaW5mby0+eGZlYXR1cmVf bWFzayAmIDB4RkZGRkZGRkY7Cj4+ICsgICAgICAgIHJlZ3NbMF0gPSBndWVzdF94ZmVhdHVyZV9t YXNrOwo+PiAgICAgICAgICAvKiBFRFg6IGhpZ2ggMzJiaXRzIG9mIHhmZWF0dXJlX2VuYWJsZWRf bWFzayAqLwo+PiAtICAgICAgICByZWdzWzNdID0gKGluZm8tPnhmZWF0dXJlX21hc2sgPj4gMzIp ICYgMHhGRkZGRkZGRjsKPj4gKyAgICAgICAgcmVnc1szXSA9IGd1ZXN0X3hmZWF0dXJlX21hc2sg Pj4gMzI7Cj4gLi4uIGhlcmUgYW5kIC4uLgo+Cj4+ICAgICAgY2FzZSAxOiAvKiBsZWFmIDEgKi8K Pj4gICAgICAgICAgcmVnc1swXSA9IGluZm8tPmZlYXR1cmVzZXRbZmVhdHVyZXdvcmRfb2YoWDg2 X0ZFQVRVUkVfWFNBVkVPUFQpXTsKPj4gLSAgICAgICAgcmVnc1syXSAmPSBpbmZvLT54ZmVhdHVy ZV9tYXNrOwo+PiAtICAgICAgICByZWdzWzNdID0gMDsKPj4gKyAgICAgICAgcmVnc1syXSA9IGd1 ZXN0X3hmZWF0dXJlX21hc2sgJiBYODZfWFNTX01BU0s7Cj4+ICsgICAgICAgIHJlZ3NbM10gPSAo Z3Vlc3RfeGZlYXR1cmVfbWFzayA+PiAzMikgJiBYODZfWFNTX01BU0s7Cj4gLi4uIGhlcmUuIFll dCBub3QgYnkgYSBjb21waWxlIHRpbWUgZGVmaW5lZCBtYXNrLCBidXQgYnkgdXNpbmcKPiAoaG9z dCkgQ1BVSUQgb3V0cHV0OiBJdCBpcyBjbGVhciB0aGF0IG9uY2UgYSBiaXQgZ290IGFzc2lnbmVk IHRvIFhDUjAKPiB2cyBYU1MsIGl0IHdvbid0IGV2ZXIgY2hhbmdlLiBIZW5jZSBpdCBkb2Vzbid0 IG1hdHRlciB3aGV0aGVyIHlvdQo+IHVzZSB0aGUgZ3Vlc3Qgb3IgaG9zdCB2aWV3IG9mIHRoYXQg c3BsaXQuIEFuZCB0aGlzIHdpbGwgdGhlbiBhbHNvIC0gb3RoZXIKPiB0aGFuIHlvdSd2ZSBzYWlk IGJlZm9yZSB3b3VsZCBiZSB1bmF2b2lkYWJsZSAtIG1ha2UgdW5uZWNlc3NhcnkgdG8KPiBhbHdh eXMgdXBkYXRlIHRoaXMgY29kZSB3aGVuIG5ldyBzdGF0ZXMgZ2V0IGFkZGVkLgoKVGhlcmUgaXMg bm8gcG9zc2libGUgd2F5IG9mIGF2b2lkaW5nIGhhdmluZyBhIHdoaXRlbGlzdCBzb21ld2hlcmUs IHdoaWNoCmxpbWl0cyB3aGF0IFhlbiB3aWxsIHRvbGVyYXRlIHN1cHBvcnRpbmcgZm9yIHRoZSBn dWVzdC4KCkFsbCBvZiB0aGlzIGNvZGUgc2hvdWxkIGhhdmUgYmVlbiBpbXBsZW1lbnRlZCBpbiBY ZW4gaW4gdGhlIGZpcnN0CnBsYWNlLiAgSSBhbSBhZnJhaWQgdGhhdCB0aGlzIGNhbid0IGJlIGZp eGVkIHByb3Blcmx5IHdpdGhvdXQgbXkgZnVydGhlcgpwbGFucyB0byBkbyBmdWxseSBwb2xpY3kg aGFuZGxpbmcgaW4gWGVuLgoKSSB3aWxsIHNlZSBpZiBJIGNhbiBmaW5kIGEgbWluaW1hbCB3YXkg b2YgZml4aW5nIHRoaXMgZm9yIDQuNywgYnV0IGl0IGlzCnlldCBhbm90aGVyIGV4YW1wbGUgb2Yg eHN0YXRlIGhhbmRsaW5nIHNpbXBseSBiZWluZyBicm9rZW4gaW4gdHJlZS4KCj4KPj4gLSAgICBj YXNlIDIgLi4uIDYzOiAvKiBzdWItbGVhdmVzICovCj4+IC0gICAgICAgIGlmICggIShpbmZvLT54 ZmVhdHVyZV9tYXNrICYgKDFVTEwgPDwgaW5wdXRbMV0pKSApCj4+ICsKPj4gKyAgICBjYXNlIDIg Li4uIDYyOiAvKiBwZXItY29tcG9uZW50IHN1Yi1sZWF2ZXMgKi8KPj4gKyAgICAgICAgaWYgKCAh KGd1ZXN0X3hmZWF0dXJlX21hc2sgJiAoMVVMTCA8PCBpbnB1dFsxXSkpICkKPj4gICAgICAgICAg ewo+PiAgICAgICAgICAgICAgcmVnc1swXSA9IHJlZ3NbMV0gPSByZWdzWzJdID0gcmVnc1szXSA9 IDA7Cj4+ICAgICAgICAgICAgICBicmVhazsKPj4gICAgICAgICAgfQo+PiAgICAgICAgICAvKiBE b24ndCB0b3VjaCBFQVgsIEVCWC4gQWxzbyBjbGVhbnVwIEVDWCBhbmQgRURYICovCj4+IC0gICAg ICAgIHJlZ3NbMl0gPSByZWdzWzNdID0gMDsKPj4gKyAgICAgICAgcmVnc1syXSAmPSBYU1RBVEVf WFNTIHwgWFNUQVRFX0FMSUdONjQ7Cj4gV291bGRuJ3QgdGhpcyBiZXR0ZXIgYWxzbyB1c2UgdGhl ICJrbm93biBmZWF0dXJlcyIgYXBwcm9hY2gsIGJ5Cj4gYWRkaW5nIHlldCBhbm90aGVyIHdvcmQg aW4gY3B1ZmVhdHVyZXNldC5oPwoKTm8gLSBJICh0aG91Z2h0KSBJIGhhZCBhbHJlYWR5IGV4cGxh aW5lZCB3aHkuCgpUaGVyZSBpcyBhIG1hcHBpbmcgYmV0d2VlbiBmZWF0dXJlcyBhbmQgYXZhaWxh YmxlIHhzdGF0ZSB0byB1c2UgdGhvc2UKZmVhdHVyZXMgKHdpdGggc29tZSBmZWF0dXJlcyBtYXBw aW5nIHRvIG11bHRpcGxlIHhzdGF0ZXMpLiAgSGF2aW5nIHRoZQp2YWxpZCB4c3RhdGVzIGRlcml2 ZWQgZnJvbSB0aGUgY29uZmlndXJlZCBmZWF0dXJlcyBwcmV2ZW50cyB0aGUgdHdvCmdldHRpbmcg b3V0IG9mIHN5bmMsIGFuZCBhZHZlcnRpc2luZyBhIGZlYXR1cmUgd2l0aG91dCBpdHMgYXBwbGlj YWJsZQp4c3RhdGUsIG9yIGFkdmVydGlzaW5nIGFuIHhzdGF0ZSB3aXRob3V0IHRoZSBhcHByb3By aWF0ZSBmZWF0dXJlIGJpdC4KCj4KPiBCdHcuLCBsb29raW5nIGF0IHRoYXQgaGVhZGVyIGFnYWlu IEkgbm93IHdvbmRlciB3aGV0aGVyIGl0Cj4gd291bGRuJ3QgaGF2ZSBiZWVuIG5lYXRlciB0byBt YWtlIFhFTl9DUFVGRUFUVVJFKCkgYQo+IDMtcGFyYW1ldGVyIG1hY3JvLCB3aXRoIHdvcmQgYW5k IGJpdCBzcGVjaWZpZWQgc2VwYXJhdGVseQo+IGFuZCBhIGRlZmF1bHQgZGVmaW5pdGlvbiBvZgo+ Cj4gI2RlZmluZSBYRU5fQ1BVRkVBVFVSRShuYW1lLCB3b3JkLCBiaXQpIFhFTl9YODZfRkVBVFVS RV8jI25hbWUgPSAod29yZCkgKiAzMiArIChiaXQpLAo+Cj4gYXZvaWRpbmcgdGhlIHVnbHkgcmVw ZWF0ZWQgIiozMiIgaW4gYWxsIG1hY3JvIGludm9jYXRpb25zLiBPZgo+IGNvdXJzZSB3ZSdkIG5l ZWQgdG8gYWRqdXN0IHRoaXMgYmVmb3JlIHdlIHJlbGVhc2Ugd2l0aCB0aGlzIG5ldwo+IGludGVy ZmFjZS4KCkknZCBwcmVmZXIgbm90IHRvLiAgVGhlICIqMzIiIGlzIHRoZSBleHBlY3RlZCB3YXkg b2YgcmVhZGluZyB0aGUKY29uc3RhbnRzLCBhbmQgcHJvdmlkaW5nIHRoZSB3b3JkIGFuZCBiaXQg c2VwYXJhdGVseSBhbGxvd3MgZm9yIHNvbWVvbmUKdG8gdHJ5IGFuZCBkbyBzb21ldGhpbmcgc2ls bHkgYnkgbm90IG11bHRpcGx5aW5nIGJ5IDMyIHRoZW1zZWx2ZXMuCgp+QW5kcmV3CgpfX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpYZW4tZGV2ZWwgbWFpbGlu ZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW4ub3JnCmh0dHA6Ly9saXN0cy54ZW4ub3JnL3hlbi1k ZXZlbAo=