From mboxrd@z Thu Jan 1 00:00:00 1970 From: Paul Durrant Subject: Re: [PATCH v6 07/14] x86: add iommu_op to query reserved ranges Date: Tue, 11 Sep 2018 09:34:58 +0000 Message-ID: <8e0a44bbe7f74eecb3ae7d62f9fb1604@AMSPEX02CL03.citrite.net> References: <20180823094711.21376-1-paul.durrant@citrix.com> <20180823094711.21376-8-paul.durrant@citrix.com> <5B925A8902000078001E6525@prv1-mh.provo.novell.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1fzf4X-0007Sz-8H for xen-devel@lists.xenproject.org; Tue, 11 Sep 2018 09:35:01 +0000 In-Reply-To: <5B925A8902000078001E6525@prv1-mh.provo.novell.com> Content-Language: en-US List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.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 List-Id: xen-devel@lists.xenproject.org PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQo+IEZyb206IEphbiBCZXVsaWNoIFttYWlsdG86 SkJldWxpY2hAc3VzZS5jb21dCj4gU2VudDogMDcgU2VwdGVtYmVyIDIwMTggMTI6MDEKPiBUbzog UGF1bCBEdXJyYW50IDxQYXVsLkR1cnJhbnRAY2l0cml4LmNvbT4KPiBDYzogQW5kcmV3IENvb3Bl ciA8QW5kcmV3LkNvb3BlcjNAY2l0cml4LmNvbT47IFdlaSBMaXUKPiA8d2VpLmxpdTJAY2l0cml4 LmNvbT47IEdlb3JnZSBEdW5sYXAgPEdlb3JnZS5EdW5sYXBAY2l0cml4LmNvbT47IElhbgo+IEph Y2tzb24gPElhbi5KYWNrc29uQGNpdHJpeC5jb20+OyBTdGVmYW5vIFN0YWJlbGxpbmkKPiA8c3N0 YWJlbGxpbmlAa2VybmVsLm9yZz47IHhlbi1kZXZlbCA8eGVuLWRldmVsQGxpc3RzLnhlbnByb2pl Y3Qub3JnPjsKPiBLb25yYWQgUnplc3p1dGVrIFdpbGsgPGtvbnJhZC53aWxrQG9yYWNsZS5jb20+ OyBUaW0gKFhlbi5vcmcpCj4gPHRpbUB4ZW4ub3JnPgo+IFN1YmplY3Q6IFJlOiBbUEFUQ0ggdjYg MDcvMTRdIHg4NjogYWRkIGlvbW11X29wIHRvIHF1ZXJ5IHJlc2VydmVkIHJhbmdlcwo+IAo+ID4+ PiBPbiAyMy4wOC4xOCBhdCAxMTo0NywgPHBhdWwuZHVycmFudEBjaXRyaXguY29tPiB3cm90ZToK PiA+IFRoaXMgcGF0Y2ggYWRkcyBhbiBpb21tdV9vcCB0byBhbGxvdyB0aGUgZG9tYWluIElPTU1V IHJlc2VydmVkCj4gcmFuZ2VzIHRvIGJlCj4gPiBxdWVyaWVkIGJ5IHRoZSBndWVzdC4KPiA+Cj4g PiBOT1RFOiBUaGUgbnVtYmVyIG9mIHJlc2VydmVkIHJhbmdlcyBpcyBkZXRlcm1pbmVkIGJ5IHN5 c3RlbSBmaXJtd2FyZSwKPiBpbgo+ID4gICAgICAgY29uanVuY3Rpb24gd2l0aCBYZW4gY29tbWFu ZCBsaW5lIG9wdGlvbnMsIGFuZCBpcyBleHBlY3RlZCB0byBiZQo+ID4gICAgICAgc21hbGwuIFRo dXMsIHRvIGF2b2lkIG92ZXItY29tcGxpY2F0aW5nIHRoZSBjb2RlLCB0aGVyZSBpcyBubwo+ID4g ICAgICAgcHJlLWVtcHRpb24gY2hlY2sgd2l0aGluIHRoZSBvcGVyYXRpb24uCj4gCj4gSG1tLCBS TVJScyByZXBvcnRlZGx5IGNhbiBjb3ZlciBhIGZhaXIgcGFydCBvZiAodGhlIGVudGlyZT8pIGZy YW1lCj4gYnVmZmVyIG9mIGEgZ3JhcGhpY3MgZGV2aWNlLgoKVGhhdCB3b3VsZCBzdGlsbCBiZSBw aHJhc2VkIGFzIGEgc2luZ2xlIHJhbmdlIHRob3VnaCwgcmlnaHQ/Cgo+IAo+ID4gQEAgLTEwMCwx NiArMTc2LDI3IEBAIGxvbmcgZG9faW9tbXVfb3AodW5zaWduZWQgaW50IG5yX2J1ZnMsCj4gPiAg ICAgIHJldHVybiByYzsKPiA+ICB9Cj4gPgo+ID4gK0NIRUNLX2lvbW11X3Jlc2VydmVkX3Jhbmdl Owo+ID4gKwo+ID4gIGludCBjb21wYXRfb25lX2lvbW11X29wKGNvbXBhdF9pb21tdV9vcF9idWZf dCAqYnVmKQo+ID4gIHsKPiA+IC0gICAgY29tcGF0X2lvbW11X29wX3QgY21wOwo+ID4gKyAgICBj b21wYXRfaW9tbXVfb3BfdCBjbXAgPSB7fTsKPiA+ICsgICAgc2l6ZV90IG9mZnNldDsKPiA+ICsg ICAgc3RhdGljIGNvbnN0IHNpemVfdCBvcF9zaXplW10gPSB7Cj4gPiArICAgICAgICBbWEVOX0lP TU1VT1BfcXVlcnlfcmVzZXJ2ZWRdID0gc2l6ZW9mKHN0cnVjdAo+IGNvbXBhdF9pb21tdV9vcF9x dWVyeV9yZXNlcnZlZCksCj4gPiArICAgIH07Cj4gPiArICAgIHNpemVfdCBzaXplOwo+ID4gICAg ICB4ZW5faW9tbXVfb3BfdCBuYXQ7Cj4gPiArICAgIHVuc2lnbmVkIGludCB1Owo+ID4gKyAgICBp bnQzMl90IHN0YXR1czsKPiA+ICAgICAgaW50IHJjOwo+ID4KPiA+IC0gICAgaWYgKCBidWYtPnNp emUgPCBzaXplb2YoY21wKSApCj4gPiArICAgIG9mZnNldCA9IG9mZnNldG9mKHN0cnVjdCBjb21w YXRfaW9tbXVfb3AsIHUpOwo+ID4gKwo+ID4gKyAgICBpZiAoIGJ1Zi0+c2l6ZSA8IG9mZnNldCAp Cj4gPiAgICAgICAgICByZXR1cm4gLUVGQVVMVDsKPiAKPiBGb3Igc29tZSByZWFzb24gSSBub3Rp Y2UgdGhpcyBvbmx5IG5vdyBhbmQgaGVyZSAtIC1FRkFVTFQgaXNuJ3QKPiByZWFsbHkgYXBwcm9w cmlhdGVseSBkZXNjcmliaW5nIHRoZSBlcnJvciBjb25kaXRpb24gaGVyZS4gLUVOT0RBVEEKPiBv ciAtRU5PQlVGUyBwZXJoYXBzPwoKT2suIEVOT0RBVEEgc2VlbXMgYmVzdC4KCj4gCj4gPiBAQCAt MTE5LDE3ICsyMDYsODIgQEAgaW50Cj4gY29tcGF0X29uZV9pb21tdV9vcChjb21wYXRfaW9tbXVf b3BfYnVmX3QgKmJ1ZikKPiA+ICAgICAgaWYgKCByYyApCj4gPiAgICAgICAgICByZXR1cm4gcmM7 Cj4gPgo+ID4gKyAgICBpZiAoIGNtcC5vcCA+PSBBUlJBWV9TSVpFKG9wX3NpemUpICkKPiA+ICsg ICAgICAgIHJldHVybiAtRU9QTk9UU1VQUDsKPiA+ICsKPiA+ICsgICAgc2l6ZSA9IG9wX3NpemVb YXJyYXlfaW5kZXhfbm9zcGVjKGNtcC5vcCwgQVJSQVlfU0laRShvcF9zaXplKSldOwo+ID4gKyAg ICBpZiAoIGJ1Zi0+c2l6ZSA8IG9mZnNldCArIHNpemUgKQo+ID4gKyAgICAgICAgcmV0dXJuIC1F RkFVTFQ7Cj4gPiArCj4gPiArICAgIGlmICggY29weV9mcm9tX2NvbXBhdF9vZmZzZXQoKHZvaWQg KikmY21wLnUsIGJ1Zi0+aCwgb2Zmc2V0LCBzaXplKSApCj4gPiArICAgICAgICByZXR1cm4gLUVG QVVMVDsKPiA+ICsKPiA+ICsgICAgLyoKPiA+ICsgICAgICogVGhlIHhsYXQgbWFnaWMgZG9lc24n dCBxdWl0ZSBrbm93IGhvdyB0byBoYW5kbGUgdGhlIHVuaW9uIHNvCj4gPiArICAgICAqIHdlIG5l ZWQgdG8gZml4IHRoaW5ncyB1cCBoZXJlLgo+ID4gKyAgICAgKi8KPiA+ICsjZGVmaW5lIFhMQVRf aW9tbXVfb3BfdV9xdWVyeV9yZXNlcnZlZAo+IFhFTl9JT01NVU9QX3F1ZXJ5X3Jlc2VydmVkCj4g PiArICAgIHUgPSBjbXAub3A7Cj4gPiArCj4gPiArI2RlZmluZSBYTEFUX2lvbW11X29wX3F1ZXJ5 X3Jlc2VydmVkX0hORExfcmFuZ2VzKF9kXywgX3NfKQo+IFwKPiA+ICsgICAgZG8gICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAo+ ID4gKyAgICB7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBcCj4gPiArICAgICAgICBpZiAoICFjb21wYXRfaGFuZGxlX2lzX251 bGwoKF9zXyktPnJhbmdlcykgKSAgICAgICAgICAgICAgICAgIFwKPiA+ICsgICAgICAgIHsgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg XAo+ID4gKyAgICAgICAgICAgIHVuc2lnbmVkIGludCAqbnJfZW50cmllcyA9IENPTVBBVF9BUkdf WExBVF9WSVJUX0JBU0U7ICAgICBcCj4gCj4gdWludDMyX3QgKHNlZSBiZWxvdykgb3IgcGVyaGFw cyBldmVuIGJldHRlciB0eXBlb2YoKS4KPiAKCk9rLgoKPiA+ICsgICAgICAgICAgICB4ZW5faW9t bXVfcmVzZXJ2ZWRfcmFuZ2VfdCAqcmFuZ2VzID0gICAgICAgICAgICAgICAgICAgICAgXAo+ID4g KyAgICAgICAgICAgICAgICAodm9pZCAqKShucl9lbnRyaWVzICsgMSk7ICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBcCj4gPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKPiA+ICsgICAgICAgICAgICBpZiAo IHNpemVvZigqbnJfZW50cmllcykgKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAo+ ID4gKyAgICAgICAgICAgICAgICAgKHNpemVvZigqcmFuZ2VzKSAqIChfc18pLT5ucl9lbnRyaWVz KSA+ICAgICAgICAgICAgICBcCj4gPiArICAgICAgICAgICAgICAgICBDT01QQVRfQVJHX1hMQVRf U0laRSApICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKPiA+ICsgICAgICAgICAgICAg ICAgcmV0dXJuIC1FMkJJRzsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg XAo+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBcCj4gPiArICAgICAgICAgICAgKm5yX2VudHJpZXMgPSAoX3Nf KS0+bnJfZW50cmllczsgICAgICAgICAgICAgICAgICAgICAgICAgIFwKPiA+ICsgICAgICAgICAg ICBzZXRfeGVuX2d1ZXN0X2hhbmRsZSgoX2RfKS0+cmFuZ2VzLCByYW5nZXMpOyAgICAgICAgICAg ICAgXAo+ID4gKyAgICAgICAgfSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBcCj4gPiArICAgICAgICBlbHNlICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKPiA+ICsgICAgICAg ICAgICBzZXRfeGVuX2d1ZXN0X2hhbmRsZSgoX2RfKS0+cmFuZ2VzLCBOVUxMKTsgICAgICAgICAg ICAgICAgXAo+ID4gKyAgICB9IHdoaWxlIChmYWxzZSkKPiA+ICsKPiA+ICAgICAgWExBVF9pb21t dV9vcCgmbmF0LCAmY21wKTsKPiA+Cj4gPiArI3VuZGVmIFhMQVRfaW9tbXVfb3BfcXVlcnlfcmVz ZXJ2ZWRfSE5ETF9yYW5nZXMKPiA+ICsKPiA+ICAgICAgaW9tbXVfb3AoJm5hdCk7Cj4gPgo+ID4g KyAgICBzdGF0dXMgPSBuYXQuc3RhdHVzOwo+ID4gKwo+ID4gKyNkZWZpbmUgWExBVF9pb21tdV9v cF9xdWVyeV9yZXNlcnZlZF9ITkRMX3JhbmdlcyhfZF8sIF9zXykKPiBcCj4gPiArICAgIGRvICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIFwKPiA+ICsgICAgeyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAo+ID4gKyAgICAgICAgaWYgKCAhY29tcGF0 X2hhbmRsZV9pc19udWxsKChfZF8pLT5yYW5nZXMpICkgICAgICAgICAgICAgICAgICAgICBcCj4g PiArICAgICAgICB7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIFwKPiA+ICsgICAgICAgICAgICB1bnNpZ25lZCBpbnQgKm5yX2Vu dHJpZXMgPSBDT01QQVRfQVJHX1hMQVRfVklSVF9CQVNFOyAgICAgICAgXAo+ID4gKyAgICAgICAg ICAgIGNvbXBhdF9pb21tdV9yZXNlcnZlZF9yYW5nZV90ICpyYW5nZXMgPSAgICAgICAgICAgICAg ICAgICAgICBcCj4gPiArICAgICAgICAgICAgICAgICh2b2lkICopKG5yX2VudHJpZXMgKyAxKTsg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKPiA+ICsgICAgICAgICAgICB1bnNpZ25l ZCBpbnQgbnIgPSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAo+ ID4gKyAgICAgICAgICAgICAgICBtaW5fdCh1bnNpZ25lZCBpbnQsIChfZF8pLT5ucl9lbnRyaWVz LCAqbnJfZW50cmllcyk7ICAgICBcCj4gPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKPiA+ICsgICAgICAg ICAgICBpZiAoIF9fY29weV90b19jb21wYXRfb2Zmc2V0KChfZF8pLT5yYW5nZXMsIDAsIHJhbmdl cywgbnIpICkgXAo+ID4gKyAgICAgICAgICAgICAgICBzdGF0dXMgPSAtRUZBVUxUOyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCj4gPiArICAgICAgICB9ICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwK PiA+ICsgICAgfSB3aGlsZSAoZmFsc2UpCj4gPiArCj4gPiAgICAgIFhMQVRfaW9tbXVfb3AoJmNt cCwgJm5hdCk7Cj4gPgo+ID4gKyAgICAvKiBzdGF0dXMgd2lsbCBoYXZlIGJlZW4gbW9kaWZpZWQg aWYgX19jb3B5X3RvX2NvbXBhdF9vZmZzZXQoKSBmYWlsZWQKPiAqLwo+ID4gKyAgICBjbXAuc3Rh dHVzID0gc3RhdHVzOwo+ID4gKwo+ID4gKyN1bmRlZiBYTEFUX2lvbW11X29wX3F1ZXJ5X3Jlc2Vy dmVkX0hORExfcmFuZ2VzCj4gPiArCj4gPiAgICAgIGlmICggX19jb3B5X2ZpZWxkX3RvX2NvbXBh dChjb21wYXRfaGFuZGxlX2Nhc3QoYnVmLT5oLAo+ID4gICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbXBhdF9pb21tdV9vcF90KSwKPiA+ICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICZjbXAsIHN0YXR1cykgKQo+ID4gICAgICAgICAg cmV0dXJuIC1FRkFVTFQ7Cj4gPgo+ID4gKyN1bmRlZiBYTEFUX2lvbW11X29wX3VfcXVlcnlfcmVz ZXJ2ZWQKPiA+ICsKPiA+ICAgICAgcmV0dXJuIDA7Cj4gPiAgfQo+IAo+IEl0J3Mgc29tZWhvdyBt b3JlIGV2aWRlbnQgaGVyZSwgYnV0IEkgdGhpbmsgZXZlbiBvbiB0aGUgbmF0aXZlIHBhdGgKPiB0 aGUgbnJfZW50cmllcyBmaWVsZCBkb2Vzbid0IGdldCBjb3BpZWQgYmFjayBkZXNwaXRlIGl0IGJl aW5nIGFuIE9VVC4KCkluZGVlZC4gSXQgd291bGQgYmUgc28gbXVjaCBzaW1wbGVyIGp1c3QgdG8g Y29weSBiYWNrIHRoZSBlbnRpcmUgYnVmIHRvIGF2b2lkIHRoZSBuZWVkIHRvIHNwZWNpYWwtY2Fz ZSB0aGlzIGZvciBlYWNoIG9wLgoKPiAKPiA+IC0tLSBhL3hlbi9pbmNsdWRlL3B1YmxpYy9pb21t dV9vcC5oCj4gPiArKysgYi94ZW4vaW5jbHVkZS9wdWJsaWMvaW9tbXVfb3AuaAo+ID4gQEAgLTI1 LDExICsyNSw1MCBAQAo+ID4KPiA+ICAjaW5jbHVkZSAieGVuLmgiCj4gPgo+ID4gK3R5cGVkZWYg dWludDY0X3QgeGVuX2Jmbl90Owo+ID4gKwo+ID4gKy8qIFN0cnVjdHVyZSBkZXNjcmliaW5nIGEg c2luZ2xlIHJhbmdlIHJlc2VydmVkIGluIHRoZSBJT01NVSAqLwo+ID4gK3N0cnVjdCB4ZW5faW9t bXVfcmVzZXJ2ZWRfcmFuZ2Ugewo+ID4gKyAgICB4ZW5fYmZuX3Qgc3RhcnRfYmZuOwo+ID4gKyAg ICB1bnNpZ25lZCBpbnQgbnJfZnJhbWVzOwo+ID4gKyAgICB1bnNpZ25lZCBpbnQgcGFkOwo+IAo+ IHVpbnQzMl90CgpPay4KCj4gCj4gPiArfTsKPiA+ICt0eXBlZGVmIHN0cnVjdCB4ZW5faW9tbXVf cmVzZXJ2ZWRfcmFuZ2UKPiB4ZW5faW9tbXVfcmVzZXJ2ZWRfcmFuZ2VfdDsKPiA+ICtERUZJTkVf WEVOX0dVRVNUX0hBTkRMRSh4ZW5faW9tbXVfcmVzZXJ2ZWRfcmFuZ2VfdCk7Cj4gPiArCj4gPiAr LyoKPiA+ICsgKiBYRU5fSU9NTVVPUF9xdWVyeV9yZXNlcnZlZDogUXVlcnkgcmFuZ2VzIHJlc2Vy dmVkIGluIHRoZQo+IElPTU1VLgo+ID4gKyAqLwo+IAo+IFNpbmdsZSBsaW5lIGNvbW1lbnQgcGxl YXNlLgo+IAoKT2suCgo+ID4gKyNkZWZpbmUgWEVOX0lPTU1VT1BfcXVlcnlfcmVzZXJ2ZWQgMQo+ ID4gKwo+ID4gK3N0cnVjdCB4ZW5faW9tbXVfb3BfcXVlcnlfcmVzZXJ2ZWQgewo+ID4gKyAgICAv Kgo+ID4gKyAgICAgKiBJTi9PVVQgLSBPbiBlbnRyeSB0aGlzIGlzIHRoZSBudW1iZXIgb2YgZW50 cmllcyBhdmFpbGFibGUKPiA+ICsgICAgICogICAgICAgICAgaW4gdGhlIHJhbmdlcyBhcnJheSBi ZWxvdy4KPiA+ICsgICAgICogICAgICAgICAgT24gZXhpdCB0aGlzIGlzIHRoZSBhY3R1YWwgbnVt YmVyIG9mIHJlc2VydmVkIHJhbmdlcy4KPiA+ICsgICAgICovCj4gPiArICAgIHVuc2lnbmVkIGlu dCBucl9lbnRyaWVzOwo+ID4gKyAgICB1bnNpZ25lZCBpbnQgcGFkOwo+IAo+IHVpbnQzMl90Cj4g CgpPay4KCiAgUGF1bAoKPiBKYW4KCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fXwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW5w cm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8v eGVuLWRldmVs