From mboxrd@z Thu Jan 1 00:00:00 1970 From: Paul Durrant Subject: Re: [PATCH v5 09/15] vtd: add lookup_page method to iommu_ops Date: Tue, 7 Aug 2018 08:21:46 +0000 Message-ID: <0a4bee6dd58242f39e71c8e9bf2f89e0@AMSPEX02CL03.citrite.net> References: <20180803172220.1657-1-paul.durrant@citrix.com> <20180803172220.1657-10-paul.durrant@citrix.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 1fmxFf-0001O5-Vw for xen-devel@lists.xenproject.org; Tue, 07 Aug 2018 08:22:00 +0000 In-Reply-To: Content-Language: en-US List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" To: Kevin Tian , "xen-devel@lists.xenproject.org" Cc: George Dunlap , Jan Beulich List-Id: xen-devel@lists.xenproject.org PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQo+IEZyb206IFRpYW4sIEtldmluIFttYWlsdG86 a2V2aW4udGlhbkBpbnRlbC5jb21dCj4gU2VudDogMDcgQXVndXN0IDIwMTggMDQ6MjUKPiBUbzog UGF1bCBEdXJyYW50IDxQYXVsLkR1cnJhbnRAY2l0cml4LmNvbT47IHhlbi1kZXZlbEBsaXN0cy54 ZW5wcm9qZWN0Lm9yZwo+IENjOiBKYW4gQmV1bGljaCA8amJldWxpY2hAc3VzZS5jb20+OyBHZW9y Z2UgRHVubGFwCj4gPEdlb3JnZS5EdW5sYXBAY2l0cml4LmNvbT4KPiBTdWJqZWN0OiBSRTogW1BB VENIIHY1IDA5LzE1XSB2dGQ6IGFkZCBsb29rdXBfcGFnZSBtZXRob2QgdG8gaW9tbXVfb3BzCj4g Cj4gPiBGcm9tOiBQYXVsIER1cnJhbnQgW21haWx0bzpwYXVsLmR1cnJhbnRAY2l0cml4LmNvbV0K PiA+IFNlbnQ6IFNhdHVyZGF5LCBBdWd1c3QgNCwgMjAxOCAxOjIyIEFNCj4gPgo+ID4gVGhpcyBw YXRjaCBhZGRzIGEgbmV3IG1ldGhvZCB0byB0aGUgVlQtZCBJT01NVSBpbXBsZW1lbnRhdGlvbiB0 byBmaW5kCj4gPiB0aGUKPiA+IE1GTiBjdXJyZW50bHkgbWFwcGVkIGJ5IHRoZSBzcGVjaWZpZWQg QkZOIGFsb25nIHdpdGggYSB3cmFwcGVyIGZ1bmN0aW9uCj4gPiBpbgo+ID4gZ2VuZXJpYyBJT01N VSBjb2RlIHRvIGNhbGwgdGhlIGltcGxlbWVudGF0aW9uIGlmIGl0IGV4aXN0cy4KPiA+Cj4gPiBU aGlzIGZ1bmN0aW9uYWxpdHkgd2lsbCBiZSB1c2VkIGJ5IGEgc3Vic2VxdWVudCBwYXRjaC4KPiA+ Cj4gPiBTaWduZWQtb2ZmLWJ5OiBQYXVsIER1cnJhbnQgPHBhdWwuZHVycmFudEBjaXRyaXguY29t Pgo+ID4gUmV2aWV3ZWQtYnk6IFdlaSBMaXUgPHdlaS5saXUyQGNpdHJpeC5jb20+Cj4gPiAtLS0K PiA+IENjOiBLZXZpbiBUaWFuIDxrZXZpbi50aWFuQGludGVsLmNvbT4KPiA+IENjOiBKYW4gQmV1 bGljaCA8amJldWxpY2hAc3VzZS5jb20+Cj4gPiBDYzogR2VvcmdlIER1bmxhcCA8Z2VvcmdlLmR1 bmxhcEBjaXRyaXguY29tPgo+ID4KPiA+IHYzOgo+ID4gIC0gQWRkcmVzc2VkIGNvbW1lbnRzIGZy b20gR2VvcmdlLgo+ID4KPiA+IHYyOgo+ID4gIC0gQWRkcmVzc2VkIHNvbWUgY29tbWVudHMgZnJv bSBKYW4uCj4gPiAtLS0KPiA+ICB4ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9pb21tdS5jICAgICB8 IDExICsrKysrKysrKysrCj4gPiAgeGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvdnRkL2lvbW11LmMg fCAzNAo+ID4gKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwo+ID4gIHhlbi9kcml2 ZXJzL3Bhc3N0aHJvdWdoL3Z0ZC9pb21tdS5oIHwgIDMgKysrCj4gPiAgeGVuL2luY2x1ZGUveGVu L2lvbW11LmggICAgICAgICAgICAgfCAgNCArKysrCj4gPiAgNCBmaWxlcyBjaGFuZ2VkLCA1MiBp bnNlcnRpb25zKCspCj4gPgo+ID4gZGlmZiAtLWdpdCBhL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdo L2lvbW11LmMKPiA+IGIveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvaW9tbXUuYwo+ID4gaW5kZXgg YjEwYTM3ZTVkNy4uOWI3YmFjYTkzZiAxMDA2NDQKPiA+IC0tLSBhL3hlbi9kcml2ZXJzL3Bhc3N0 aHJvdWdoL2lvbW11LmMKPiA+ICsrKyBiL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL2lvbW11LmMK PiA+IEBAIC0zMDUsNiArMzA1LDE3IEBAIGludCBpb21tdV91bm1hcF9wYWdlKHN0cnVjdCBkb21h aW4gKmQsIGJmbl90Cj4gPiBiZm4pCj4gPiAgICAgIHJldHVybiByYzsKPiA+ICB9Cj4gPgo+ID4g K2ludCBpb21tdV9sb29rdXBfcGFnZShzdHJ1Y3QgZG9tYWluICpkLCBiZm5fdCBiZm4sIG1mbl90 ICptZm4sCj4gPiArICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCAqZmxhZ3MpCj4g PiArewo+ID4gKyAgICBjb25zdCBzdHJ1Y3QgZG9tYWluX2lvbW11ICpoZCA9IGRvbV9pb21tdShk KTsKPiA+ICsKPiA+ICsgICAgaWYgKCAhaW9tbXVfZW5hYmxlZCB8fCAhaGQtPnBsYXRmb3JtX29w cyApCj4gPiArICAgICAgICByZXR1cm4gLUVPUE5PVFNVUFA7Cj4gPiArCj4gPiArICAgIHJldHVy biBoZC0+cGxhdGZvcm1fb3BzLT5sb29rdXBfcGFnZShkLCBiZm4sIG1mbiwgZmxhZ3MpOwo+ID4g K30KPiA+ICsKPiA+ICBzdGF0aWMgdm9pZCBpb21tdV9mcmVlX3BhZ2V0YWJsZXModW5zaWduZWQg bG9uZyB1bnVzZWQpCj4gPiAgewo+ID4gICAgICBkbyB7Cj4gPiBkaWZmIC0tZ2l0IGEveGVuL2Ry aXZlcnMvcGFzc3Rocm91Z2gvdnRkL2lvbW11LmMKPiA+IGIveGVuL2RyaXZlcnMvcGFzc3Rocm91 Z2gvdnRkL2lvbW11LmMKPiA+IGluZGV4IDI4MmUyMjc0MTQuLjhjZDNiNTlhYTAgMTAwNjQ0Cj4g PiAtLS0gYS94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC92dGQvaW9tbXUuYwo+ID4gKysrIGIveGVu L2RyaXZlcnMvcGFzc3Rocm91Z2gvdnRkL2lvbW11LmMKPiA+IEBAIC0xODMwLDYgKzE4MzAsMzkg QEAgc3RhdGljIGludCBfX211c3RfY2hlY2sKPiA+IGludGVsX2lvbW11X3VubWFwX3BhZ2Uoc3Ry dWN0IGRvbWFpbiAqZCwKPiA+ICAgICAgcmV0dXJuIGRtYV9wdGVfY2xlYXJfb25lKGQsIGJmbl90 b19iYWRkcihiZm4pKTsKPiA+ICB9Cj4gPgo+ID4gK3N0YXRpYyBpbnQgaW50ZWxfaW9tbXVfbG9v a3VwX3BhZ2Uoc3RydWN0IGRvbWFpbiAqZCwgYmZuX3QgYmZuLCBtZm5fdAo+ID4gKm1mbiwKPiA+ ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCAqZmxhZ3Mp Cj4gCj4gTm90IGxvb2tpbmcgYXQgbGF0ZXIgcGF0Y2hlcyB5ZXQuLi4gYnV0IGluIGNvbmNlcHQg YmZuIGFkZHJlc3MKPiBzcGFjZSBpcyBwZXIgZGV2aWNlIGluc3RlYWQgb2YgcGVyIGRvbWFpbi4K Ck5vdCBpbiB0aGlzIGNhc2UuIFhlbiBoYXMgYWx3YXlzIG1haW50YWluZWQgYSBzaW5nbGUgSU9N TVUgYWRkcmVzcyBwZXIgdmlydHVhbCBtYWNoaW5lLiBUaGF0IGlzIHdoYXQgQkZOIHJlZmVycyB0 by4KCiAgUGF1bAoKPiBJbiBkZWZhdWx0IHNpdHVhdGlvbgo+ICh3L28gcHZJT01NVSBleHBvc2Vk KSwgYWxsIGRldmljZXMgYXNzaWduZWQgdG8gZG9tMCBzaGFyZQo+IHRoZSBzYW1lIGFkZHJlc3Mg c3BhY2UgKGJmbj1wZm4pIHdoaWNoIGlzIGN1cnJlbnRseSBsaW5rZWQKPiBmcm9tIGRvbWFpbiBz dHJ1Y3R1cmUuIFRoZW4gd2l0aCBwdklPTU1VIGV4cG9zZWQsIGRvbTAKPiBzdGFydHMgdG8gbWFu YWdlIGluZGl2aWR1YWwgcGZuIGFkZHJlc3Mgc3BhY2UgKGNhbGxlZCBJT1ZBCj4gYWRkcmVzcyBz cGFjZSB3aXRoaW4gZG9tMCkgcGVyIGFzc2lnbmVkIGRldmljZS4gSW4gdGhhdCBjYXNlCj4gbG9v a3VwIHNob3VsZCBhY2NlcHQgYSBiZGYgbnVtYmVyIGFuZCB0aGVuIGZpbmQgdGhlIHJpZ2h0Cj4g cGFnZSB0YWJsZS4uLgo+IAoKTm8uIFRoYXQgaXMgb3Zlci1jb21wbGljYXRpbmcgdGhpbmdzIGFu ZCB3b3VsZCBwcm9iYWJseSBpbnZvbHZlIHJlLXdyaXRpbmcgbW9zdCBvZiB0aGUgSU9NTVUgY29k ZSBpbiBYZW4gQUZBSUNULgoKPiA+ICt7Cj4gPiArICAgIHN0cnVjdCBkb21haW5faW9tbXUgKmhk ID0gZG9tX2lvbW11KGQpOwo+ID4gKyAgICBzdHJ1Y3QgZG1hX3B0ZSAqcGFnZSA9IE5VTEwsICpw dGUgPSBOVUxMLCB2YWw7Cj4gPiArICAgIHU2NCBwZ19tYWRkcjsKPiA+ICsKPiA+ICsgICAgc3Bp bl9sb2NrKCZoZC0+YXJjaC5tYXBwaW5nX2xvY2spOwo+ID4gKwo+ID4gKyAgICBwZ19tYWRkciA9 IGFkZHJfdG9fZG1hX3BhZ2VfbWFkZHIoZCwgYmZuX3RvX2JhZGRyKGJmbiksIDApOwo+ID4gKyAg ICBpZiAoIHBnX21hZGRyID09IDAgKQo+ID4gKyAgICB7Cj4gPiArICAgICAgICBzcGluX3VubG9j aygmaGQtPmFyY2gubWFwcGluZ19sb2NrKTsKPiA+ICsgICAgICAgIHJldHVybiAtRU5PTUVNOwo+ ID4gKyAgICB9Cj4gPiArCj4gPiArICAgIHBhZ2UgPSBtYXBfdnRkX2RvbWFpbl9wYWdlKHBnX21h ZGRyKTsKPiA+ICsgICAgcHRlID0gcGFnZSArIChiZm5feChiZm4pICYgTEVWRUxfTUFTSyk7Cj4g PiArICAgIHZhbCA9ICpwdGU7Cj4gPiArCj4gPiArICAgIHVubWFwX3Z0ZF9kb21haW5fcGFnZShw YWdlKTsKPiA+ICsgICAgc3Bpbl91bmxvY2soJmhkLT5hcmNoLm1hcHBpbmdfbG9jayk7Cj4gPiAr Cj4gPiArICAgIGlmICggIWRtYV9wdGVfcHJlc2VudCh2YWwpICkKPiA+ICsgICAgICAgIHJldHVy biAtRU5PRU5UOwo+ID4gKwo+ID4gKyAgICAqbWZuID0gbWFkZHJfdG9fbWZuKGRtYV9wdGVfYWRk cih2YWwpKTsKPiA+ICsgICAgKmZsYWdzID0gZG1hX3B0ZV9yZWFkKHZhbCkgPyBJT01NVUZfcmVh ZGFibGUgOiAwOwo+ID4gKyAgICAqZmxhZ3MgfD0gZG1hX3B0ZV93cml0ZSh2YWwpID8gSU9NTVVG X3dyaXRhYmxlIDogMDsKPiA+ICsKPiA+ICsgICAgcmV0dXJuIDA7Cj4gPiArfQo+ID4gKwo+ID4g IGludCBpb21tdV9wdGVfZmx1c2goc3RydWN0IGRvbWFpbiAqZCwgdWludDY0X3QgYmZuLCB1aW50 NjRfdCAqcHRlLAo+ID4gICAgICAgICAgICAgICAgICAgICAgaW50IG9yZGVyLCBpbnQgcHJlc2Vu dCkKPiA+ICB7Cj4gPiBAQCAtMjY2MSw2ICsyNjk0LDcgQEAgY29uc3Qgc3RydWN0IGlvbW11X29w cyBpbnRlbF9pb21tdV9vcHMgPSB7Cj4gPiAgICAgIC50ZWFyZG93biA9IGlvbW11X2RvbWFpbl90 ZWFyZG93biwKPiA+ICAgICAgLm1hcF9wYWdlID0gaW50ZWxfaW9tbXVfbWFwX3BhZ2UsCj4gPiAg ICAgIC51bm1hcF9wYWdlID0gaW50ZWxfaW9tbXVfdW5tYXBfcGFnZSwKPiA+ICsgICAgLmxvb2t1 cF9wYWdlID0gaW50ZWxfaW9tbXVfbG9va3VwX3BhZ2UsCj4gPiAgICAgIC5mcmVlX3BhZ2VfdGFi bGUgPSBpb21tdV9mcmVlX3BhZ2VfdGFibGUsCj4gPiAgICAgIC5yZWFzc2lnbl9kZXZpY2UgPSBy ZWFzc2lnbl9kZXZpY2Vfb3duZXJzaGlwLAo+ID4gICAgICAuZ2V0X2RldmljZV9ncm91cF9pZCA9 IGludGVsX2lvbW11X2dyb3VwX2lkLAo+ID4gZGlmZiAtLWdpdCBhL3hlbi9kcml2ZXJzL3Bhc3N0 aHJvdWdoL3Z0ZC9pb21tdS5oCj4gPiBiL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL3Z0ZC9pb21t dS5oCj4gPiBpbmRleCA3MmMxYTJlM2NkLi40N2JkZmNiNWVhIDEwMDY0NAo+ID4gLS0tIGEveGVu L2RyaXZlcnMvcGFzc3Rocm91Z2gvdnRkL2lvbW11LmgKPiA+ICsrKyBiL3hlbi9kcml2ZXJzL3Bh c3N0aHJvdWdoL3Z0ZC9pb21tdS5oCj4gPiBAQCAtMjcyLDYgKzI3Miw5IEBAIHN0cnVjdCBkbWFf cHRlIHsKPiA+ICAjZGVmaW5lIGRtYV9zZXRfcHRlX3Byb3QocCwgcHJvdCkgZG8geyBcCj4gPiAg ICAgICAgICAocCkudmFsID0gKChwKS52YWwgJiB+RE1BX1BURV9QUk9UKSB8ICgocHJvdCkgJiBE TUFfUFRFX1BST1QpOyBcCj4gPiAgICAgIH0gd2hpbGUgKDApCj4gPiArI2RlZmluZSBkbWFfcHRl X3Byb3QocCkgKChwKS52YWwgJiBETUFfUFRFX1BST1QpCj4gPiArI2RlZmluZSBkbWFfcHRlX3Jl YWQocCkgKGRtYV9wdGVfcHJvdChwKSAmIERNQV9QVEVfUkVBRCkKPiA+ICsjZGVmaW5lIGRtYV9w dGVfd3JpdGUocCkgKGRtYV9wdGVfcHJvdChwKSAmIERNQV9QVEVfV1JJVEUpCj4gPiAgI2RlZmlu ZSBkbWFfcHRlX2FkZHIocCkgKChwKS52YWwgJiBQQUREUl9NQVNLICYgUEFHRV9NQVNLXzRLKQo+ ID4gICNkZWZpbmUgZG1hX3NldF9wdGVfYWRkcihwLCBhZGRyKSBkbyB7XAo+ID4gICAgICAgICAg ICAgIChwKS52YWwgfD0gKChhZGRyKSAmIFBBR0VfTUFTS180Syk7IH0gd2hpbGUgKDApCj4gPiBk aWZmIC0tZ2l0IGEveGVuL2luY2x1ZGUveGVuL2lvbW11LmggYi94ZW4vaW5jbHVkZS94ZW4vaW9t bXUuaAo+ID4gaW5kZXggY2MwYmU4MWI0ZS4uN2M1ZDQ2ZGY4MSAxMDA2NDQKPiA+IC0tLSBhL3hl bi9pbmNsdWRlL3hlbi9pb21tdS5oCj4gPiArKysgYi94ZW4vaW5jbHVkZS94ZW4vaW9tbXUuaAo+ ID4gQEAgLTEwMCw2ICsxMDAsOCBAQCB2b2lkIGlvbW11X3RlYXJkb3duKHN0cnVjdCBkb21haW4g KmQpOwo+ID4gIGludCBfX211c3RfY2hlY2sgaW9tbXVfbWFwX3BhZ2Uoc3RydWN0IGRvbWFpbiAq ZCwgYmZuX3QgYmZuLAo+ID4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWZuX3Qg bWZuLCB1bnNpZ25lZCBpbnQgZmxhZ3MpOwo+ID4gIGludCBfX211c3RfY2hlY2sgaW9tbXVfdW5t YXBfcGFnZShzdHJ1Y3QgZG9tYWluICpkLCBiZm5fdCBiZm4pOwo+ID4gK2ludCBfX211c3RfY2hl Y2sgaW9tbXVfbG9va3VwX3BhZ2Uoc3RydWN0IGRvbWFpbiAqZCwgYmZuX3QgYmZuLAo+ID4gbWZu X3QgKm1mbiwKPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVk IGludCAqZmxhZ3MpOwo+ID4KPiA+ICBlbnVtIGlvbW11X2ZlYXR1cmUKPiA+ICB7Cj4gPiBAQCAt MTk4LDYgKzIwMCw4IEBAIHN0cnVjdCBpb21tdV9vcHMgewo+ID4gICAgICBpbnQgX19tdXN0X2No ZWNrICgqbWFwX3BhZ2UpKHN0cnVjdCBkb21haW4gKmQsIGJmbl90IGJmbiwgbWZuX3QKPiBtZm4s Cj4gPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50IGZsYWdz KTsKPiA+ICAgICAgaW50IF9fbXVzdF9jaGVjayAoKnVubWFwX3BhZ2UpKHN0cnVjdCBkb21haW4g KmQsIGJmbl90IGJmbik7Cj4gPiArICAgIGludCBfX211c3RfY2hlY2sgKCpsb29rdXBfcGFnZSko c3RydWN0IGRvbWFpbiAqZCwgYmZuX3QgYmZuLCBtZm5fdAo+ID4gKm1mbiwKPiA+ICsgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgKmZsYWdzKTsKPiA+ICAg ICAgdm9pZCAoKmZyZWVfcGFnZV90YWJsZSkoc3RydWN0IHBhZ2VfaW5mbyAqKTsKPiA+ICAjaWZk ZWYgQ09ORklHX1g4Ngo+ID4gICAgICB2b2lkICgqdXBkYXRlX2lyZV9mcm9tX2FwaWMpKHVuc2ln bmVkIGludCBhcGljLCB1bnNpZ25lZCBpbnQgcmVnLAo+ID4gdW5zaWduZWQgaW50IHZhbHVlKTsK PiA+IC0tCj4gPiAyLjExLjAKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fXwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW5wcm9q ZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8veGVu LWRldmVs