From mboxrd@z Thu Jan 1 00:00:00 1970 From: Paul Durrant Subject: Re: [PATCH v9 05/11] x86/mm: add HYPERVISOR_memory_op to acquire guest resources Date: Tue, 10 Oct 2017 13:26:22 +0000 Message-ID: References: <20171006122519.30345-1-paul.durrant@citrix.com> <20171006122519.30345-6-paul.durrant@citrix.com> <59DB903F0200007800183F04@prv-mh.provo.novell.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail6.bemta6.messagelabs.com ([193.109.254.103]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1e243N-0007HO-Bv for xen-devel@lists.xenproject.org; Tue, 10 Oct 2017 23:35:13 +0000 In-Reply-To: <59DB903F0200007800183F04@prv-mh.provo.novell.com> Content-Language: en-US List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: 'Jan Beulich' Cc: Stefano Stabellini , Wei Liu , Konrad Rzeszutek Wilk , Andrew Cooper , "Tim (Xen.org)" , George Dunlap , Ian Jackson , "xen-devel@lists.xenproject.org" List-Id: xen-devel@lists.xenproject.org PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQo+IEZyb206IEphbiBCZXVsaWNoIFttYWlsdG86 SkJldWxpY2hAc3VzZS5jb21dCj4gU2VudDogMDkgT2N0b2JlciAyMDE3IDE0OjA2Cj4gVG86IFBh dWwgRHVycmFudCA8UGF1bC5EdXJyYW50QGNpdHJpeC5jb20+Cj4gQ2M6IEFuZHJldyBDb29wZXIg PEFuZHJldy5Db29wZXIzQGNpdHJpeC5jb20+OyBXZWkgTGl1Cj4gPHdlaS5saXUyQGNpdHJpeC5j b20+OyBHZW9yZ2UgRHVubGFwIDxHZW9yZ2UuRHVubGFwQGNpdHJpeC5jb20+OyBJYW4KPiBKYWNr c29uIDxJYW4uSmFja3NvbkBjaXRyaXguY29tPjsgU3RlZmFubyBTdGFiZWxsaW5pCj4gPHNzdGFi ZWxsaW5pQGtlcm5lbC5vcmc+OyB4ZW4tZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmc7IEtvbnJh ZCBSemVzenV0ZWsKPiBXaWxrIDxrb25yYWQud2lsa0BvcmFjbGUuY29tPjsgVGltIChYZW4ub3Jn KSA8dGltQHhlbi5vcmc+Cj4gU3ViamVjdDogUmU6IFtQQVRDSCB2OSAwNS8xMV0geDg2L21tOiBh ZGQgSFlQRVJWSVNPUl9tZW1vcnlfb3AgdG8KPiBhY3F1aXJlIGd1ZXN0IHJlc291cmNlcwo+IAo+ ID4+PiBPbiAwNi4xMC4xNyBhdCAxNDoyNSwgPHBhdWwuZHVycmFudEBjaXRyaXguY29tPiB3cm90 ZToKPiA+IEBAIC0zOTUsNiArMzk3LDM5IEBAIGludCBjb21wYXRfbWVtb3J5X29wKHVuc2lnbmVk IGludCBjbWQsCj4gWEVOX0dVRVNUX0hBTkRMRV9QQVJBTSh2b2lkKSBjb21wYXQpCj4gPiAgICAg ICAgICB9Cj4gPiAgI2VuZGlmCj4gPgo+ID4gKyAgICAgICAgY2FzZSBYRU5NRU1fYWNxdWlyZV9y ZXNvdXJjZToKPiA+ICsgICAgICAgIHsKPiA+ICsgICAgICAgICAgICB4ZW5fdWxvbmdfdCAqZ21m bl9saXN0ID0gKHhlbl91bG9uZ190ICopKG5hdC5tYXIgKyAxKTsKPiA+ICsKPiA+ICsgICAgICAg ICAgICBpZiAoIGNvcHlfZnJvbV9ndWVzdCgmY21wLm1hciwgY29tcGF0LCAxKSB8fAo+ID4gKyAg ICAgICAgICAgICAgICAgIWNvbXBhdF9oYW5kbGVfb2theShjbXAubWFyLmdtZm5fbGlzdCwKPiA+ ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY21wLm1hci5ucl9mcmFtZXMp ICkKPiA+ICsgICAgICAgICAgICAgICAgcmV0dXJuIC1FRkFVTFQ7Cj4gPiArCj4gPiArICAgICAg ICAgICAgaWYgKCBzaXplb2YoKmdtZm5fbGlzdCkgKiBjbXAubWFyLm5yX2ZyYW1lcyA+Cj4gPiAr ICAgICAgICAgICAgICAgICBDT01QQVRfQVJHX1hMQVRfU0laRSAtIHNpemVvZigqbmF0Lm1hcikg KQo+ID4gKyAgICAgICAgICAgICAgICByZXR1cm4gLUUyQklHOwo+IAo+IFdpdGggdGhlIGFjdHVh bCBoYW5kbGVyIGFjY2VwdGluZyBubyBtb3JlIHRoYW4gMiBlbnRyaWVzIHRoaXMgaXMKPiBjZXJ0 YWlubHkgZ29vZCBlbm91Z2ggZm9yIG5vdywgYnV0IHNpbmNlIGxhcmdlciBhcnJheXMgY291bGQg YmUKPiBoYW5kbGVkIGhlcmUgcGVyaGFwcyBhIGNvbW1lbnQgd291bGQgYmUgaGVscGZ1bCB0byBj bGFyaWZ5Cj4gd2h5IHRoaXMgaXMgc3VmZmljaWVudCBhdG0uCgpPay4KCj4gCj4gPiBAQCAtNTM1 LDYgKzU3MCwyMyBAQCBpbnQgY29tcGF0X21lbW9yeV9vcCh1bnNpZ25lZCBpbnQgY21kLAo+IFhF Tl9HVUVTVF9IQU5ETEVfUEFSQU0odm9pZCkgY29tcGF0KQo+ID4gICAgICAgICAgICAgICAgICBy YyA9IC1FRkFVTFQ7Cj4gPiAgICAgICAgICAgICAgYnJlYWs7Cj4gPgo+ID4gKyAgICAgICAgY2Fz ZSBYRU5NRU1fYWNxdWlyZV9yZXNvdXJjZToKPiA+ICsgICAgICAgIHsKPiA+ICsgICAgICAgICAg ICB4ZW5fdWxvbmdfdCAqZ21mbl9saXN0ID0gKHhlbl91bG9uZ190ICopKG5hdC5tYXIgKyAxKTsK PiA+ICsKPiA+ICsgICAgICAgICAgICBmb3IgKCBpID0gMDsgaSA8IGNtcC5tYXIubnJfZnJhbWVz OyBpKysgKQo+ID4gKyAgICAgICAgICAgIHsKPiA+ICsgICAgICAgICAgICAgICAgY29tcGF0X3Vs b25nX3QgZ21mbiA9IGdtZm5fbGlzdFtpXTsKPiA+ICsKPiA+ICsgICAgICAgICAgICAgICAgaWYg KCBnbWZuICE9IGdtZm5fbGlzdFtpXSApCj4gPiArICAgICAgICAgICAgICAgICAgICByZXR1cm4g LUVSQU5HRTsKPiA+ICsKPiA+ICsgICAgICAgICAgICAgICAgaWYgKCBfX2NvcHlfdG9fY29tcGF0 X29mZnNldChjbXAubWFyLmdtZm5fbGlzdCwgaSwKPiA+ICsgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAmZ21mbiwgMSkgKQo+ID4gKyAgICAgICAgICAgICAgICAg ICAgcmV0dXJuIC1FRkFVTFQ7Cj4gCj4gV2hpbGUgSSBjb25zaWRlciBpdCBhY2NlcHRhYmxlIHRv IGxlYXZlIGtpbmQgb2YgaW5jb25zaXN0ZW50IHN0YXRlIGluCj4gdGhpcyBsYXR0ZXIgY2FzZSAo YXMgaXQncyB1bmRlciBndWVzdCBjb250cm9sIHRvIGF2b2lkIHRoZSBzaXR1YXRpb24pLAo+IEkn bSBub3Qgc3VyZSB0aGUgLUVSQU5HRSByZXR1cm4gYWJvdmUgd291bGRuJ3QgYmV0dGVyIGJlCj4g YWNjb21wYW5pZWQgYnkgdW5kb2luZyB0aGUgb3BlcmF0aW9uLiBVbmRvaW5nIGluIGJvdGggY2Fz ZXMKPiB3b3VsZCBiZWNvbWUgaW1wZXJhdGl2ZSBvbmNlIHNldF9mb3JlaWduX3AybV9lbnRyeSgp IGFjcXVpcmVzCj4gcHJvcGVyIHBhZ2UgcmVmZXJlbmNlcy4KCk9rLiBJJ2xsIHRyeSB0byBtYWtl IHN1cmUgdGhpbmdzIGdldCBsZWZ0IGluIGEgY29uc2lzdGVudCBzdGF0ZS4KCj4gCj4gPiAtLS0g YS94ZW4vY29tbW9uL21lbW9yeS5jCj4gPiArKysgYi94ZW4vY29tbW9uL21lbW9yeS5jCj4gPiBA QCAtOTY1LDYgKzk2NSw2NyBAQCBzdGF0aWMgbG9uZyB4YXRwX3Blcm1pc3Npb25fY2hlY2soc3Ry dWN0IGRvbWFpbgo+ICpkLCB1bnNpZ25lZCBpbnQgc3BhY2UpCj4gPiAgICAgIHJldHVybiB4c21f YWRkX3RvX3BoeXNtYXAoWFNNX1RBUkdFVCwgY3VycmVudC0+ZG9tYWluLCBkKTsKPiA+ICB9Cj4g Pgo+ID4gKyNpZmRlZiBDT05GSUdfWDg2Cj4gCj4gQ291bGQgeW91IHRyeSB0byAoYSkgaGF2ZSBv bmx5IGEgc2luZ2xlIHN1Y2ggI2lmZGVmIGFuZCAoYikgcmVkdWNlCj4gaXRzIHNjb3BlIGFzIG11 Y2ggYXMgcG9zc2libGU/IEV2ZW4gaWYgZm9yIG5vdyB0aGUgY29kZSBpcyBkZWFkIG9uCj4gQVJN LCBtYWtpbmcgc3VyZSBpdCBjb250aW51ZXMgdG8gY29tcGlsZSB0aGVyZSB3b3VsZCBiZSBoZWxw ZnVsLgo+IAoKT2suIEkgZG9uJ3QgaGF2ZSBhbiBhcm0gbWFjaGluZSB0byBidWlsZCBvbiBzbyBJ IGNhbid0IHRlbGwgaWYgYW55dGhpbmcgaXMgYnJva2VuIHRob3VnaC4KCj4gPiArc3RhdGljIGlu dCBhY3F1aXJlX3Jlc291cmNlKGNvbnN0IHhlbl9tZW1fYWNxdWlyZV9yZXNvdXJjZV90ICp4bWFy KQo+ID4gK3sKPiA+ICsgICAgc3RydWN0IGRvbWFpbiAqZCwgKmN1cnJkID0gY3VycmVudC0+ZG9t YWluOwo+ID4gKyAgICB1bnNpZ25lZCBsb25nIG1mbl9saXN0WzJdOwo+ID4gKyAgICBpbnQgcmM7 Cj4gPiArCj4gPiArICAgIGlmICggeG1hci0+bnJfZnJhbWVzID09IDAgfHwgeG1hci0+cGFkICE9 IDAgKQo+ID4gKyAgICAgICAgcmV0dXJuIC1FSU5WQUw7Cj4gPiArCj4gPiArICAgIGlmICggeG1h ci0+bnJfZnJhbWVzID4gQVJSQVlfU0laRShtZm5fbGlzdCkgKQo+ID4gKyAgICAgICAgcmV0dXJu IC1FMkJJRzsKPiA+ICsKPiA+ICsgICAgZCA9IHJjdV9sb2NrX2RvbWFpbl9ieV9hbnlfaWQoeG1h ci0+ZG9taWQpOwo+ID4gKyAgICBpZiAoIGQgPT0gTlVMTCApCj4gPiArICAgICAgICByZXR1cm4g LUVTUkNIOwo+ID4gKwo+ID4gKyAgICByYyA9IHhzbV9kb21haW5fbWVtb3J5X21hcChYU01fVEFS R0VULCBkKTsKPiA+ICsgICAgaWYgKCByYyApCj4gPiArICAgICAgICBnb3RvIG91dDsKPiA+ICsK PiA+ICsgICAgc3dpdGNoICggeG1hci0+dHlwZSApCj4gPiArICAgIHsKPiA+ICsgICAgZGVmYXVs dDoKPiA+ICsgICAgICAgIHJjID0gLUVPUE5PVFNVUFA7Cj4gPiArICAgICAgICBicmVhazsKPiA+ ICsgICAgfQo+ID4gKwo+ID4gKyAgICBpZiAoIHJjICkKPiA+ICsgICAgICAgIGdvdG8gb3V0Owo+ ID4gKwo+ID4gKyAgICBpZiAoICFwYWdpbmdfbW9kZV90cmFuc2xhdGUoY3VycmQpICkKPiA+ICsg ICAgewo+ID4gKyAgICAgICAgaWYgKCBjb3B5X3RvX2d1ZXN0X29mZnNldCh4bWFyLT5nbWZuX2xp c3QsIDAsIG1mbl9saXN0LAo+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4 bWFyLT5ucl9mcmFtZXMpICkKPiAKPiBKdXN0IGNvcHlfdG9fZ3Vlc3QoKT8KPiAKCk9rLCBpZiB0 aGF0IGlzIHByZWZlcmFibGUuCgo+ID4gKyAgICAgICAgICAgIHJjID0gLUVGQVVMVDsKPiA+ICsg ICAgfQo+ID4gKyAgICBlbHNlCj4gPiArICAgIHsKPiA+ICsgICAgICAgIHVuc2lnbmVkIGludCBp Owo+ID4gKwo+ID4gKyAgICAgICAgZm9yICggaSA9IDA7IGkgPCB4bWFyLT5ucl9mcmFtZXM7IGkr KyApCj4gPiArICAgICAgICB7Cj4gPiArICAgICAgICAgICAgeGVuX3Bmbl90IGdmbjsKPiA+ICsK PiA+ICsgICAgICAgICAgICByYyA9IC1FRkFVTFQ7Cj4gPiArICAgICAgICAgICAgaWYgKCBjb3B5 X2Zyb21fZ3Vlc3Rfb2Zmc2V0KCZnZm4sIHhtYXItPmdtZm5fbGlzdCwgaSwgMSkgKQo+ID4gKyAg ICAgICAgICAgICAgICBnb3RvIG91dDsKPiA+ICsKPiA+ICsgICAgICAgICAgICByYyA9IHNldF9m b3JlaWduX3AybV9lbnRyeShjdXJyZCwgZ2ZuLCBfbWZuKG1mbl9saXN0W2ldKSk7Cj4gPiArICAg ICAgICAgICAgaWYgKCByYyApCj4gPiArICAgICAgICAgICAgICAgIGdvdG8gb3V0Owo+IAo+IFBl cmhhcHMgcGFydGlhbCBzdWNjZXNzIGluZGljYXRpb24gd291bGQgYmUgbmVjZXNzYXJ5IGhlcmUs IHNvCj4gdGhlIGNhbGxlciBrbm93cyB3aGF0IHRvIHVuZG8gbGF0ZXIuIE9yIGFsdGVybmF0aXZl bHkgKGp1c3QgbGlrZQo+IHNhaWQgZm9yIHRoZSBjb21wYXQgd3JhcHBlcikgeW91IG1heSB3YW50 L25lZWQgdG8gY2xlYW4gdXAKPiB5b3Vyc2VsZi4KCk9LLgoKPiAKPiA+IC0tLSBhL3hlbi9pbmNs dWRlL3B1YmxpYy9tZW1vcnkuaAo+ID4gKysrIGIveGVuL2luY2x1ZGUvcHVibGljL21lbW9yeS5o Cj4gPiBAQCAtNTk5LDYgKzU5OSwzNiBAQCBzdHJ1Y3QgeGVuX3Jlc2VydmVkX2RldmljZV9tZW1v cnlfbWFwIHsKPiA+ICB0eXBlZGVmIHN0cnVjdCB4ZW5fcmVzZXJ2ZWRfZGV2aWNlX21lbW9yeV9t YXAKPiB4ZW5fcmVzZXJ2ZWRfZGV2aWNlX21lbW9yeV9tYXBfdDsKPiA+ICBERUZJTkVfWEVOX0dV RVNUX0hBTkRMRSh4ZW5fcmVzZXJ2ZWRfZGV2aWNlX21lbW9yeV9tYXBfdCk7Cj4gPgo+ID4gKy8q Cj4gPiArICogR2V0IHRoZSBwYWdlcyBmb3IgYSBwYXJ0aWN1bGFyIGd1ZXN0IHJlc291cmNlLCBz byB0aGF0IHRoZXkgY2FuIGJlCj4gPiArICogbWFwcGVkIGRpcmVjdGx5IGJ5IGEgdG9vbHMgZG9t YWluLgo+ID4gKyAqLwo+ID4gKyNkZWZpbmUgWEVOTUVNX2FjcXVpcmVfcmVzb3VyY2UgMjgKPiA+ ICtzdHJ1Y3QgeGVuX21lbV9hY3F1aXJlX3Jlc291cmNlIHsKPiA+ICsgICAgLyogSU4gLSB0aGUg ZG9tYWluIHdob3NlIHJlc291cmNlIGlzIHRvIGJlIG1hcHBlZCAqLwo+ID4gKyAgICBkb21pZF90 IGRvbWlkOwo+ID4gKyAgICAvKiBJTiAtIHRoZSB0eXBlIG9mIHJlc291cmNlICovCj4gPiArICAg IHVpbnQxNl90IHR5cGU7Cj4gPiArICAgIC8qCj4gPiArICAgICAqIElOIC0gYSB0eXBlLXNwZWNp ZmljIHJlc291cmNlIGlkZW50aWZpZXIsIHdoaWNoIG11c3QgYmUgemVybwo+ID4gKyAgICAgKiAg ICAgIHVubGVzcyBzdGF0ZWQgb3RoZXJ3aXNlLgo+ID4gKyAgICAgKi8KPiA+ICsgICAgdWludDMy X3QgaWQ7Cj4gPiArICAgIC8qIElOIC0gbnVtYmVyIG9mICg0SykgZnJhbWVzIG9mIHRoZSByZXNv dXJjZSB0byBiZSBtYXBwZWQgKi8KPiA+ICsgICAgdWludDMyX3QgbnJfZnJhbWVzOwo+ID4gKyAg ICB1aW50MzJfdCBwYWQ7Cj4gPiArICAgIC8qIElOIC0gdGhlIGluZGV4IG9mIHRoZSBpbml0aWFs IGZyYW1lIHRvIGJlIG1hcHBlZCAqLwo+ID4gKyAgICB1aW50NjRfYWxpZ25lZF90IGZyYW1lOwo+ IAo+IERvZXMgdGhpcyByZWFsbHkgbmVlZCB0byBiZSA2NCBiaXRzIHdpZGU/Cj4gCgpJJ2QgcHJl ZmVyIG5vdCB0byBsaW1pdCB0byAzMiBiaXRzIGp1c3QgaW4gY2FzZSB3ZSB3YW50IHRvIHVzZSB0 aGlzIGh5cGVyY2FsbCB0byBtYXAgc29tZXRoaW5nIHdpdGggYSBsYXJnZSBmcmFtZSBzcGFjZS4K Cj4gPiArICAgIC8qIElOL09VVCAtIElmIHRoZSB0b29scyBkb21haW4gaXMgUFYgdGhlbiwgdXBv biByZXR1cm4sIGdtZm5fbGlzdAo+ID4gKyAgICAgKiAgICAgICAgICB3aWxsIGJlIHBvcHVsYXRl ZCB3aXRoIHRoZSBNRk5zIG9mIHRoZSByZXNvdXJjZS4KPiA+ICsgICAgICogICAgICAgICAgSWYg dGhlIHRvb2xzIGRvbWFpbiBpcyBIVk0gdGhlbiBpdCBpcyBleHBlY3RlZCB0aGF0LCBvbgo+ID4g KyAgICAgKiAgICAgICAgICBlbnRyeSwgZ21mbl9saXN0IHdpbGwgYmUgcG9wdWxhdGVkIHdpdGgg YSBsaXN0IG9mIEdGTnMKPiA+ICsgICAgICogICAgICAgICAgdGhhdCB3aWxsIGJlIG1hcHBlZCB0 byB0aGUgTUZOcyBvZiB0aGUgcmVzb3VyY2UuCj4gPiArICAgICAqLwo+ID4gKyAgICBYRU5fR1VF U1RfSEFORExFKHhlbl91bG9uZ190KSBnbWZuX2xpc3Q7Cj4gCj4gV2h5IG5vdCB4ZW5fcGZuX3Q/ CgpJJ3ZlIGRlYmF0ZWQgdGhpcyB3aXRoIG15c2VsZiBhIGZldyB0aW1lcy4gSSdtIG5vdCBjb252 aW5jZWQgdGhhdCBzb21ldGhpbmcgdGhhdCBjb3VsZCBiZSBhbiBtZm4gb3IgYSBnZm4gc2hvdWxk IGhhdmUgYSB4ZW5fcGZuX3QgdHlwZS4KCiAgUGF1bAoKPiAKPiBKYW4KCl9fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fClhlbi1kZXZlbCBtYWlsaW5nIGxpc3QK WGVuLWRldmVsQGxpc3RzLnhlbi5vcmcKaHR0cHM6Ly9saXN0cy54ZW4ub3JnL3hlbi1kZXZlbAo=