From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andrew Cooper Subject: Re: [PATCH v5 21/21] tools/libxc: Calculate xstate cpuid leaf from guest information Date: Fri, 8 Apr 2016 22:45:09 +0100 Message-ID: <57082665.2030906@citrix.com> References: <1460030246-30153-1-git-send-email-andrew.cooper3@citrix.com> <1460030246-30153-22-git-send-email-andrew.cooper3@citrix.com> <57082A1402000078000E61F8@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: <57082A1402000078000E61F8@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 T24gMDgvMDQvMTYgMjI6MDAsIEphbiBCZXVsaWNoIHdyb3RlOgo+Pj4+IE9uIDA3LjA0LjE2IGF0 IDEzOjU3LCA8YW5kcmV3LmNvb3BlcjNAY2l0cml4LmNvbT4gd3JvdGU6Cj4+IFRoZSBleGlzdGlu ZyBsb2dpYyBpcyBicm9rZW4gZm9yIGhldGVyb2dlbmVvdXMgbWlncmF0aW9uLiAgQnkgYWx3YXlz Cj4+IGFkdmVydGlzaW5nIHRoZSBob3N0IG1heGltdW0geHN0YXRlLCBhIG1pZ3JhdGlvbiB0byBh IGxlc3MgY2FwYWJsZSBob3N0IGFsd2F5cwo+PiBmYWlscyBhcyBYZW4gY2Fubm90IGFjY29tb2Rh dGUgdGhlIHhjcjBfYWNjdW0gaW4gdGhlIG1pZ3JhdGlvbiBzdHJlYW0uCj4gSSBkb24ndCB1bmRl cnN0YW5kIHRoaXMgLSB4Y3IwX2FjY3VtIGlzIGRlZmluaXRlbHkgcGFydCBvZiB0aGUKPiBtaWdy YXRpb24gc3RyZWFtLgoKSXQgaXMuCgpUaGUgcHJvYmxlbSBpcyB0aGF0LCBieSB1c2luZyBpbmZv LT54ZmVhdHVyZV9tYXNrIHJhdGhlciB0aGFuCmd1ZXN0X2ZlYXR1cmVfbWFzaywgYXR0ZW1wdHMg YnkgdGhlIHRvb2xzdGFjayB0byBsZXZlbCBhIGd1ZXN0IGRvd24gb24gYQptb3JlIGNhcGFibGUg aG9zdCBmYWlscywgYW5kIHRoZSBndWVzdCBhY3R1YWxseSBkb2VzIHNlZSB1bi1sZXZlbGxlZAp4 c3RhdGVzIChpLmUuIHRoZSBjdXJyZW50IGhvc3QgbWF4aW11bSB4c3RhdGVzKSwgYW5kIGVuYWJs ZXMgdGhlbS4KCldoZW4gdGhlIG1pZ3JhdGlvbiAodG8gYSBsZXNzIGNhcGFibGUgaG9zdCkgZG9l cyBvY2N1ciwgdGhlIHJlY2VpdmluZwpYZW4gKGNvcnJlY3RseSkgZmFpbHMgdGhlIHJlc3RvcmUs IGFzIGl0IGNhbm5vdCBhY2NvbW1vZGF0ZSB0aGUgeHN0YXRlcwpjdXJyZW50bHkgaW4gdXNlIGJ5 IHRoZSBndWVzdC4KClRoaXMgaXMgb25lIG9mIHRoZSBzZXZlcmFsIGJ1Z3MgY29udHJpYnV0aW5n IHRvIHdoeSBYZW5TZXJ2ZXIgaGFzIG5ldmVyCmVuYWJsZWQgeHNhdmUgYnkgZGVmYXVsdC4gIChU aGUgZm9ydGhjb21pbmcgWGVuU2VydmVyIER1bmRlZSByZWxlYXNlCndpbGwgYmUgdGhlIGZpcnN0 IHZlcnNpb24gd2l0aCB4c2F2ZSBlbmFibGVkIGJ5IGRlZmF1bHQsIG5vdyB0aGF0Cm1pZ3JhdGlv biBidWdzIGxpa2UgdGhpcyBhcmUgYWRkcmVzc2VkLikKCj4KPj4gdjU6Cj4+ICAqIFJlaW50cm9k dWNlIFBLUlUsIChhZ2FpbiwgbG9zdCBkdWUgdG8gcmViYXNpbmcpLgo+PiAgKiBSZXdyaXRlIHRo ZSBjb21taXQgbWVzc2FnZSBhbmQgY29tbWVudHMgdG8gdHJ5IGFuZCBiZXR0ZXIgZXhwbGFpbiB3 aHkgSSBhbQo+PiAgICBkZWxpYmVyYXRseSByZW1vdmluZyBob3N0LXNwZWNpZmljIGluZm9ybWF0 aW9uIGZyb20gdGhlIHhzdGF0ZSBjYWxjdWxhdGlvbi4KPj4gICogUmVpbnRyb2R1Y2UgMHhGRkZG RkZGRiBtYXNrcyBmb3IgRUFYLCB0byBhdm9pZCBDb3Zlcml0eSBjb21wbGFpbmluZyBhYm91dAo+ PiAgICB0cnVuY2F0aW9uIG9uIGFzc2lnbm1lbnQuCj4gVXJnaCAtIEkgZG9uJ3QgdGhpbmsgdWds aW5lc3MgbGlrZSB0aGlzIGNhbiBiZSBqdXN0aWZpZWQgYnkgQ292ZXJpdHkKPiBjb21wbGFpbmlu Zy4gVGhhdCB3b3VsZCBiZSBkaWZmZXJlbnQgaWYgdGhlIGNvbXBpbGVyIGNvbXBsYWluZWQKPiAo bGlrZSBjb21waWxlcnMgb3RoZXIgdGhhbiBnY2MgZG8pLgoKSG1tIC0gQ2xhbmcgaXMgaGFwcHkg d2l0aCB0aGUgY29kZSBhcyB3YXMuCgpJIHdvdWxkIHByZWZlciB0byBhdm9pZCB0aGUgQ292ZXJp dHkgaXNzdWUgaWYgYXQgYWxsIHBvc3NpYmxlLiAgV291bGQgYQoodWludDMyX3QpIGNhc3QgYmUg bW9yZSBhY2NlcHRhYmxlPwoKPgo+PiAgc3RhdGljIHZvaWQgeGNfY3B1aWRfY29uZmlnX3hzYXZl KHhjX2ludGVyZmFjZSAqeGNoLAo+PiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IGNvbnN0IHN0cnVjdCBjcHVpZF9kb21haW5faW5mbyAqaW5mbywKPj4gICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBjb25zdCB1bnNpZ25lZCBpbnQgKmlucHV0LCB1bnNpZ25lZCBp bnQgKnJlZ3MpCj4+ICB7Cj4+IC0gICAgaWYgKCBpbmZvLT54ZmVhdHVyZV9tYXNrID09IDAgKQo+ PiArICAgIHVpbnQ2NF90IGd1ZXN0X3hmZWF0dXJlX21hc2s7Cj4+ICsKPj4gKyAgICBpZiAoIGlu Zm8tPnhmZWF0dXJlX21hc2sgPT0gMCB8fAo+PiArICAgICAgICAgIXRlc3RfYml0KFg4Nl9GRUFU VVJFX1hTQVZFLCBpbmZvLT5mZWF0dXJlc2V0KSApCj4+ICAgICAgewo+PiAgICAgICAgICByZWdz WzBdID0gcmVnc1sxXSA9IHJlZ3NbMl0gPSByZWdzWzNdID0gMDsKPj4gICAgICAgICAgcmV0dXJu Owo+PiAgICAgIH0KPj4gIAo+PiArICAgIGd1ZXN0X3hmZWF0dXJlX21hc2sgPSBYODZfWENSMF9T U0UgfCBYODZfWENSMF9YODc7Cj4+ICsKPj4gKyAgICBpZiAoIHRlc3RfYml0KFg4Nl9GRUFUVVJF X0FWWCwgaW5mby0+ZmVhdHVyZXNldCkgKQo+PiArICAgICAgICBndWVzdF94ZmVhdHVyZV9tYXNr IHw9IFg4Nl9YQ1IwX0FWWDsKPj4gKwo+PiArICAgIGlmICggdGVzdF9iaXQoWDg2X0ZFQVRVUkVf TVBYLCBpbmZvLT5mZWF0dXJlc2V0KSApCj4+ICsgICAgICAgIGd1ZXN0X3hmZWF0dXJlX21hc2sg fD0gWDg2X1hDUjBfQk5EUkVHIHwgWDg2X1hDUjBfQk5EQ1NSOwo+PiArCj4+ICsgICAgaWYgKCB0 ZXN0X2JpdChYODZfRkVBVFVSRV9QS1UsIGluZm8tPmZlYXR1cmVzZXQpICkKPj4gKyAgICAgICAg Z3Vlc3RfeGZlYXR1cmVfbWFzayB8PSBYODZfWENSMF9QS1JVOwo+PiArCj4+ICsgICAgaWYgKCB0 ZXN0X2JpdChYODZfRkVBVFVSRV9MV1AsIGluZm8tPmZlYXR1cmVzZXQpICkKPj4gKyAgICAgICAg Z3Vlc3RfeGZlYXR1cmVfbWFzayB8PSBYODZfWENSMF9MV1A7Cj4gSSBjb250aW51ZSB0byBiZSB1 bmhhcHB5IGFib3V0IHRoYXQgd2hpdGUgbGlzdGluZywgYnV0IHdlbGwuLi4KCkl0IGlzIGFsbCBn b2luZyB0byBtb3ZlIGludG8gYSBzaW5nbGUgbG9jYXRpb24gaW4gWGVuIGluIGR1ZSBjb3Vyc2Us IGJ1dAphcyBJIGhhdmUgZXhwbGFpbmVkIGFib3ZlLCBpdCBoYXMgdG8gZXhpc3Qgc29tZXdoZXJl IHRvIGFsbG93IHRoZSBndWVzdAp0byBzYWZlbHkgbWlncmF0ZSBpbiBhIGhldGVyb2dlbmVvdXMg ZW52aXJvbm1lbnQuCgo+Cj4+ICAgICAgY2FzZSAxOiAvKiBsZWFmIDEgKi8KPj4gICAgICAgICAg cmVnc1swXSA9IGluZm8tPmZlYXR1cmVzZXRbZmVhdHVyZXdvcmRfb2YoWDg2X0ZFQVRVUkVfWFNB VkVPUFQpXTsKPj4gLSAgICAgICAgcmVnc1syXSAmPSBpbmZvLT54ZmVhdHVyZV9tYXNrOwo+PiAt ICAgICAgICByZWdzWzNdID0gMDsKPj4gKyAgICAgICAgcmVnc1sxXSA9IDA7Cj4+ICsKPj4gKyAg ICAgICAgaWYgKCB0ZXN0X2JpdChYODZfRkVBVFVSRV9YU0FWRVMsIGluZm8tPmZlYXR1cmVzZXQp ICkKPj4gKyAgICAgICAgewo+PiArICAgICAgICAgICAgcmVnc1syXSA9IGd1ZXN0X3hmZWF0dXJl X21hc2sgJiBYODZfWFNTX01BU0sgJiAweEZGRkZGRkZGOwo+PiArICAgICAgICAgICAgcmVnc1sz XSA9IChndWVzdF94ZmVhdHVyZV9tYXNrID4+IDMyKSAmIFg4Nl9YU1NfTUFTSzsKPiBUaGlzIGlz IGNvcnJlY3Qgb25seSBiZWNhdXNlIFg4Nl9YU1NfTUFTSyA9PSAwKG9yIGVsc2UgPj4gYW5kICYK PiBuZWVkIHRvIGJlIHN3YXBwZWQpLiBZZXQgaWYgeW91IGFzc3VtZSB0aGlzLCB0aGUgYW5kLWlu ZyB3aXRoCj4gMHhGRkZGRkZGRiBtYWtlcyBldmVuIGxlc3Mgc2Vuc2UgaGVyZSB0aGFuIGFib3Zl LgoKU28gaXQgaXMuICBJIHdpbGwgc3VibWl0IGEgYnVnZml4LCBvbmNlIHdlIGhhdmUgZ290IGFu IGFncmVlbWVudCBvbiB0aGUKbWFza2luZyBhbmdsZS4KCj4KPj4gKyAgICBjYXNlIDIgLi4uIDYy OiAvKiBwZXItY29tcG9uZW50IHN1Yi1sZWF2ZXMgKi8KPj4gKyAgICAgICAgaWYgKCAhKGd1ZXN0 X3hmZWF0dXJlX21hc2sgJiAoMVVMTCA8PCBpbnB1dFsxXSkpICkKPj4gICAgICAgICAgewo+PiAg ICAgICAgICAgICAgcmVnc1swXSA9IHJlZ3NbMV0gPSByZWdzWzJdID0gcmVnc1szXSA9IDA7Cj4+ ICAgICAgICAgICAgICBicmVhazsKPj4gICAgICAgICAgfQo+PiAgICAgICAgICAvKiBEb24ndCB0 b3VjaCBFQVgsIEVCWC4gQWxzbyBjbGVhbnVwIEVDWCBhbmQgRURYICovCj4+IC0gICAgICAgIHJl Z3NbMl0gPSByZWdzWzNdID0gMDsKPj4gKyAgICAgICAgcmVnc1syXSAmPSBYU1RBVEVfWFNTIHwg WFNUQVRFX0FMSUdONjQ7Cj4gSSdtIHNvcnJ5IGZvciByZWFsaXppbmcgdGhpcyBvbmx5IG5vdywg YnV0IHNob3VsZG4ndCB3ZSBoaWRlIFhTVEFURV9YU1MKPiBmcm9tIFBWIGd1ZXN0cz8gT3IgaXMg dGhpcyBiZWluZyB0YWtlbiBjYXJlIG9mIGVsc2V3aGVyZT8KClRoYXQgaXMgY292ZXJlZCB3aXRo IGEgZHluYW1pYyBjaGVjayBpbiBwdl9jcHVpZCgpIGF0IHRoZSBtb21lbnQuCgp+QW5kcmV3Cgpf X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpYZW4tZGV2ZWwg bWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW4ub3JnCmh0dHA6Ly9saXN0cy54ZW4ub3Jn L3hlbi1kZXZlbAo=