From mboxrd@z Thu Jan 1 00:00:00 1970 From: Paul Durrant Subject: Re: [PATCH 5/7] public / x86: introduce __HYPERCALL_iommu_op Date: Thu, 7 Jun 2018 11:42:01 +0000 Message-ID: References: <20180212104714.1922-1-paul.durrant@citrix.com> <20180212104714.1922-6-paul.durrant@citrix.com> <5AABC5B402000078001B2C6B@prv-mh.provo.novell.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6]) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1fQtIs-0008BY-ES for xen-devel@lists.xenproject.org; Thu, 07 Jun 2018 11:42:06 +0000 In-Reply-To: <5AABC5B402000078001B2C6B@prv-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 , Andrew Cooper , "Tim (Xen.org)" , George Dunlap , Ian Jackson , "xen-devel@lists.xenproject.org" , Daniel De Graaf List-Id: xen-devel@lists.xenproject.org PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQo+IEZyb206IEphbiBCZXVsaWNoIFttYWlsdG86 SkJldWxpY2hAc3VzZS5jb21dCj4gU2VudDogMTYgTWFyY2ggMjAxOCAxMjoyNQo+IFRvOiBQYXVs IER1cnJhbnQgPFBhdWwuRHVycmFudEBjaXRyaXguY29tPgo+IENjOiBBbmRyZXcgQ29vcGVyIDxB bmRyZXcuQ29vcGVyM0BjaXRyaXguY29tPjsgV2VpIExpdQo+IDx3ZWkubGl1MkBjaXRyaXguY29t PjsgR2VvcmdlIER1bmxhcCA8R2VvcmdlLkR1bmxhcEBjaXRyaXguY29tPjsgSWFuCj4gSmFja3Nv biA8SWFuLkphY2tzb25AY2l0cml4LmNvbT47IFN0ZWZhbm8gU3RhYmVsbGluaQo+IDxzc3RhYmVs bGluaUBrZXJuZWwub3JnPjsgeGVuLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnOyBLb25yYWRS emVzenV0ZWsKPiBXaWxrIDxrb25yYWQud2lsa0BvcmFjbGUuY29tPjsgRGFuaWVsIERlIEdyYWFm IDxkZ2RlZ3JhQHR5Y2hvLm5zYS5nb3Y+Owo+IFRpbSAoWGVuLm9yZykgPHRpbUB4ZW4ub3JnPgo+ IFN1YmplY3Q6IFJlOiBbUEFUQ0ggNS83XSBwdWJsaWMgLyB4ODY6IGludHJvZHVjZSBfX0hZUEVS Q0FMTF9pb21tdV9vcAo+IAo+ID4+PiBPbiAxMi4wMi4xOCBhdCAxMTo0NywgPHBhdWwuZHVycmFu dEBjaXRyaXguY29tPiB3cm90ZToKPiA+IC0tLSBhL3hlbi9hcmNoL3g4Ni9NYWtlZmlsZQo+ID4g KysrIGIveGVuL2FyY2gveDg2L01ha2VmaWxlCj4gPiBAQCAtMzMsNiArMzMsNyBAQCBvYmotJChD T05GSUdfQ1JBU0hfREVCVUcpICs9IGdkYnN0dWIubwo+ID4gIG9iai15ICs9IGh5cGVyY2FsbC5v Cj4gPiAgb2JqLXkgKz0gaTM4Ny5vCj4gPiAgb2JqLXkgKz0gaTgyNTkubwo+ID4gK29iai15ICs9 IGlvbW11X29wLm8KPiAKPiBBcyBtZW50aW9uZWQgaW4gb3RoZXIgY29udGV4dHMsIEknZCBwcmVm ZXIgaWYgd2Ugc3RvcHBlZCB1c2luZwo+IHVuZGVyc2NvcmVzIGluIHBsYWNlcyB3aGVyZSBkYXNo ZXMgKG9yIG90aGVyIHNlcGFyYXRvcnMgbm90Cj4gdXNhYmxlIGluIEMgaWRlbnRpZmllcnMpIGFy ZSBmaW5lLgo+IAoKSSBkb24ndCBzZWUgYW55IGd1aWRhbmNlIGluIENPRElOR19TVFlMRSBvciBl bHNld2hlcmUsIGFuZCBhbHNvIHRoZSBtYWpvcml0eSBvZiB0aGUgY29kZWJhc2Ugc2VlbXMgdG8g cHJlZmVyIHVzaW5nIHVuZGVyc2NvcmVzIGluIG1vZHVsZSBuYW1lcy4gUGVyc29uYWxseSBJJ2Qg cHJlZmVyIG5ldyBjb2RlIHJlbWFpbiBjb25zaXN0ZW50LgoKPiA+IC0tLSAvZGV2L251bGwKPiA+ ICsrKyBiL3hlbi9hcmNoL3g4Ni9pb21tdV9vcC5jCj4gPiBAQCAtMCwwICsxLDE2OSBAQAo+ID4K PiArLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKgo+ICoqKioqKioqKioqKioqKioqKioqKgo+ID4gKyAqIHg4Ni9pb21tdV9vcC5jCj4gPiAr ICoKPiA+ICsgKiBQYXJhdmlydHVhbGlzZWQgSU9NTVUgZnVuY3Rpb25hbGl0eQo+ID4gKyAqCj4g PiArICogVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRl IGl0IGFuZC9vciBtb2RpZnkKPiA+ICsgKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBH ZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQo+ID4gKyAqIHRoZSBGcmVlIFNv ZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCj4g PiArICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KPiA+ICsgKgo+ID4gKyAq IFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUg dXNlZnVsLAo+ID4gKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRo ZSBpbXBsaWVkIHdhcnJhbnR5IG9mCj4gPiArICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1Mg Rk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQo+ID4gKyAqIEdOVSBHZW5lcmFsIFB1 YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCj4gPiArICoKPiA+ICsgKiBZb3Ugc2hvdWxk IGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQo+ ID4gKyAqIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5n bnUub3JnL2xpY2Vuc2VzLz4uCj4gPiArICoKPiA+ICsgKiBDb3B5cmlnaHQgKEMpIDIwMTggQ2l0 cml4IFN5c3RlbXMgSW5jCj4gPiArICovCj4gPiArCj4gPiArI2luY2x1ZGUgPHhlbi9ldmVudC5o Pgo+ID4gKyNpbmNsdWRlIDx4ZW4vZ3Vlc3RfYWNjZXNzLmg+Cj4gPiArI2luY2x1ZGUgPHhlbi9o eXBlcmNhbGwuaD4KPiA+ICsKPiA+ICtzdGF0aWMgYm9vbCBjYW5fY29udHJvbF9pb21tdSh2b2lk KQo+ID4gK3sKPiA+ICsgICAgc3RydWN0IGRvbWFpbiAqY3VycmQgPSBjdXJyZW50LT5kb21haW47 Cj4gPiArCj4gPiArICAgIC8qCj4gPiArICAgICAqIElPTU1VIG1hcHBpbmdzIGNhbm5vdCBiZSBt YW5pcHVsYXRlZCBpZjoKPiA+ICsgICAgICogLSB0aGUgSU9NTVUgaXMgbm90IGVuYWJsZWQgb3Is Cj4gPiArICAgICAqIC0gdGhlIElPTU1VIGlzIHBhc3NlZCB0aHJvdWdoIG9yLAo+IAo+ICJpcyBw YXNzZWQgdGhyb3VnaCIgaXNuJ3QgcmVhbGx5IGEgcHJvcGVyIGRlc2NyaXB0aW9uIG9mIHdoYXQK PiBpb21tdV9wYXNzdGhyb3VnaCBtZWFucywgSSdtIGFmcmFpZC4gVGhlIGRlc2NyaXB0aW9uIG9m IHRoZQo+IG9wdGlvbiBzYXlzICJDb250cm9sIHdoZXRoZXIgdG8gZGlzYWJsZSBETUEgcmVtYXBw aW5nIGZvcgo+IERvbTAuIiBQZXJoYXBzICJpcyBieXBhc3NlZCI/IEJ1dCB0aGVuIGl0IHdvdWxk IGJlIGJldHRlcgo+IHRvIHF1YWxpZnkgdGhlIGNoZWNrIHdpdGggaXNfaGFyZHdhcmVfZG9tYWlu KCksIGRlc3BpdGUgeW91Cj4gcmVzdHJpY3RpbmcgdGhpbmdzIHRvIERvbTAgZm9yIG5vdyBhbnl3 YXkuCj4gCgpJIHRoaW5rIEknbSBnb2luZyB0byBhZGQgYSBoeXBlcmNhbGwgZm9yIGEgZG9tYWlu IHRvIGVuYWJsZSBQViBJT01NVSBhdCBzdGFydCBvZiBkYXksIHNvIEknbGwgcmUtd29yayBhbGwg dGhpcyBpbiBhIHNlcGFyYXRlIHBhdGNoLgoKPiA+ICsgICAgICogLSBzaGFyZWQgRVBUIGNvbmZp Z3VyZWQgb3IsCj4gPiArICAgICAqIC0gWGVuIGlzIG1haW50YWluaW5nIGFuIGlkZW50aXR5IG1h cC4KPiAKPiBJcyB0aGlzIG1lYW50IHRvIGRlc2NyaWJlIC4uLgo+IAo+ID4gKyAgICAgKi8KPiA+ ICsgICAgaWYgKCAhaW9tbXVfZW5hYmxlZCB8fCBpb21tdV9wYXNzdGhyb3VnaCB8fAo+ID4gKyAg ICAgICAgIGlvbW11X3VzZV9oYXBfcHQoY3VycmQpIHx8IG5lZWRfaW9tbXUoY3VycmQpICkKPiAK PiAuLi4gbmVlZF9pb21tdSgpIGhlcmU/IEhvdyBpcyB0aGF0IGltcGx5aW5nIGFuIGlkZW50aXR5 IG1hcD8KPiAKPiA+ICsgICAgICAgIHJldHVybiBmYWxzZTsKPiA+ICsKPiA+ICsgICAgcmV0dXJu IHRydWU7Cj4gCj4gUGxlYXNlIG1ha2UgdGhpcyBhIHNpbmdlIHJldHVybiBzdGF0ZW1lbnQgKHdp dGggdGhlIGV4cHJlc3Npb24gYXMKPiBvcGVyYW5kKS4KPiAKPiA+ICtsb25nIGRvX2lvbW11X29w KFhFTl9HVUVTVF9IQU5ETEVfUEFSQU0oeGVuX2lvbW11X29wX3QpCj4gdW9wcywKPiA+ICsgICAg ICAgICAgICAgICAgIHVuc2lnbmVkIGludCBjb3VudCkKPiA+ICt7Cj4gPiArICAgIHVuc2lnbmVk IGludCBpOwo+ID4gKyAgICBpbnQgcmM7Cj4gPiArCj4gPiArICAgIHJjID0geHNtX2lvbW11X29w KFhTTV9QUklWLCBjdXJyZW50LT5kb21haW4pOwo+ID4gKyAgICBpZiAoIHJjICkKPiA+ICsgICAg ICAgIHJldHVybiByYzsKPiA+ICsKPiA+ICsgICAgaWYgKCAhY2FuX2NvbnRyb2xfaW9tbXUoKSAp Cj4gPiArICAgICAgICByZXR1cm4gLUVBQ0NFUzsKPiA+ICsKPiA+ICsgICAgZm9yICggaSA9IDA7 IGkgPCBjb3VudDsgaSsrICkKPiA+ICsgICAgewo+ID4gKyAgICAgICAgeGVuX2lvbW11X29wX3Qg b3A7Cj4gPiArCj4gPiArICAgICAgICBpZiAoICgoaSAmIDB4ZmYpID09IDB4ZmYpICYmIGh5cGVy Y2FsbF9wcmVlbXB0X2NoZWNrKCkgKQo+ID4gKyAgICAgICAgewo+ID4gKyAgICAgICAgICAgIHJj ID0gaTsKPiAKPiBGb3IgdGhpcyB0byBiZSBjb3JyZWN0IGZvciBsYXJnZSBlbm91Z2ggdmFsdWVz IG9mICJjb3VudCIsIHJjIG5lZWRzCj4gdG8gaGF2ZSBsb25nIHR5cGUuCgpZZXMsIGl0IGRvZXMg aW5kZWVkLgoKPiAKPiA+ICsgICAgICAgICAgICBicmVhazsKPiA+ICsgICAgICAgIH0KPiA+ICsK PiA+ICsgICAgICAgIGlmICggY29weV9mcm9tX2d1ZXN0X29mZnNldCgmb3AsIHVvcHMsIGksIDEp ICkKPiA+ICsgICAgICAgIHsKPiA+ICsgICAgICAgICAgICByYyA9IC1FRkFVTFQ7Cj4gPiArICAg ICAgICAgICAgYnJlYWs7Cj4gPiArICAgICAgICB9Cj4gPiArCj4gPiArICAgICAgICBpb21tdV9v cCgmb3ApOwo+ID4gKwo+ID4gKyAgICAgICAgaWYgKCBjb3B5X3RvX2d1ZXN0X29mZnNldCh1b3Bz LCBpLCAmb3AsIDEpICkKPiAKPiBfX2NvcHlfdG9fZ3Vlc3Rfb2Zmc2V0KCkKPiAKPiBBbHNvIGRv IHlvdSByZWFsbHkgbmVlZCB0byBjb3B5IGJhY2sgb3RoZXIgdGhhbiB0aGUgc3RhdHVzPwoKQXQg dGhpcyBzdGFnZSwgbm8uIEknbGwgcmVzdHJpY3QgaXQgaGVyZSBhbmQgaXQgY2FuIGV4cGFuZCBs YXRlciBpZiBuZWVkIGJlLgoKPiAKPiA+IC0tLSAvZGV2L251bGwKPiA+ICsrKyBiL3hlbi9pbmNs dWRlL3B1YmxpYy9pb21tdV9vcC5oCj4gPiBAQCAtMCwwICsxLDU1IEBACj4gPiArLyoKPiA+ICsg KiBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBl cnNvbiBvYnRhaW5pbmcgYQo+IGNvcHkKPiA+ICsgKiBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3Nv Y2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSAiU29mdHdhcmUiKSwKPiB0bwo+ID4gKyAq IGRlYWwgaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRo b3V0IGxpbWl0YXRpb24gdGhlCj4gPiArICogcmlnaHRzIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBt ZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwKPiBhbmQvb3IKPiA+ICsgKiBz ZWxsIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9t IHRoZQo+IFNvZnR3YXJlIGlzCj4gPiArICogZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRv IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczoKPiA+ICsgKgo+ID4gKyAqIFRoZSBhYm92ZSBjb3B5 cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVk Cj4gaW4KPiA+ICsgKiBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBT b2Z0d2FyZS4KPiA+ICsgKgo+ID4gKyAqIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCAiQVMgSVMi LCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWQo+IEtJTkQsIEVYUFJFU1MgT1IKPiA+ICsgKiBJTVBM SUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GCj4gTUVS Q0hBTlRBQklMSVRZLAo+ID4gKyAqIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFO RCBOT05JTkZSSU5HRU1FTlQuIElOIE5PCj4gRVZFTlQgU0hBTEwgVEhFCj4gPiArICogQVVUSE9S UyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwKPiBEQU1BR0VT IE9SIE9USEVSCj4gPiArICogTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05U UkFDVCwgVE9SVCBPUgo+IE9USEVSV0lTRSwgQVJJU0lORwo+ID4gKyAqIEZST00sIE9VVCBPRiBP UiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UKPiBPUiBPVEhFUgo+ ID4gKyAqIERFQUxJTkdTIElOIFRIRSBTT0ZUV0FSRS4KPiA+ICsgKgo+ID4gKyAqIENvcHlyaWdo dCAoQykgMjAxOCBDaXRyaXggU3lzdGVtcyBJbmMKPiA+ICsgKi8KPiA+ICsKPiA+ICsjaWZuZGVm IF9fWEVOX1BVQkxJQ19JT01NVV9PUF9IX18KPiA+ICsjZGVmaW5lIF9fWEVOX1BVQkxJQ19JT01N VV9PUF9IX18KPiAKPiBQbGVhc2UgY2FuIHlvdSBhdm9pZCBpbnRyb2R1Y2luZyBmdXJ0aGVyIG5h bWUgc3BhY2UgdmlvbGF0aW9ucwo+IGludG8gdGhlIHB1YmxpYyBoZWFkZXJzPwoKSSBhc3N1bWUg eW91IG1lYW4gdGhlIGxlYWRpbmcgJ19fJz8gQWdhaW4sIEkgY2hvc2UgdGhlIG5hbWUgYmFzZWQg b24gY29uc2lzdGVuY3kgd2l0aCBvdGhlciBjb2RlIGFuZCBJJ2QgcHJlZmVyIHRvIHJlbWFpbiBj b25zaXN0ZW50LiBDb3VsZCB5b3UgZXhwbGFpbiB3aHkgaGF2aW5nIGEgbGVhZGluZyAnX18nIGlz IHByb2JsZW1hdGljPwoKICBQYXVsCgo+IAo+ID4gKyNpbmNsdWRlICJ4ZW4uaCIKPiA+ICsKPiA+ ICtzdHJ1Y3QgeGVuX2lvbW11X29wIHsKPiA+ICsgICAgdWludDE2X3Qgb3A7Cj4gPiArICAgIHVp bnQxNl90IGZsYWdzOyAvKiBvcCBzcGVjaWZpYyBmbGFncyAqLwo+ID4gKyAgICBpbnQzMl90IHN0 YXR1czsgLyogb3AgY29tcGxldGlvbiBzdGF0dXM6ICovCj4gPiArICAgICAgICAgICAgICAgICAg ICAvKiAwIGZvciBzdWNjZXNzIG90aGVyd2lzZSwgbmVnYXRpdmUgZXJybm8gKi8KPiA+ICt9Owo+ IAo+IFBlZWtpbmcgYXQgcGF0Y2ggNiwgeW91IG5lZWQgdG8gYWRkIHRoZSB1bmlvbiBhbmQgYSBs YXJnZSBlbm91Z2gKPiBwbGFjZWhvbGRlciBoZXJlIHJpZ2h0IGF3YXksIHNvIHRoYXQgdGhlIHN0 cnVjdCBzaXplIHdvbid0IGNoYW5nZQo+IHdpdGggZnV0dXJlIGFkZGl0aW9ucy4KPiAKPiBKYW4K Cl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fClhlbi1kZXZl bCBtYWlsaW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBzOi8vbGlz dHMueGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby94ZW4tZGV2ZWw=