From mboxrd@z Thu Jan 1 00:00:00 1970 From: Paul Durrant Subject: Re: [PATCH v6 10/14] mm / iommu: split need_iommu() into has_iommu_pt() and need_iommu_pt_sync() Date: Tue, 11 Sep 2018 15:40:03 +0000 Message-ID: <6fdadeea76e944fcbdcf9f2b0a43025a@AMSPEX02CL03.citrite.net> References: <20180823094711.21376-1-paul.durrant@citrix.com> <20180823094711.21376-11-paul.durrant@citrix.com> <5B97D1A902000078001E75A2@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 1fzlBu-0001jp-In for xen-devel@lists.xenproject.org; Tue, 11 Sep 2018 16:07:02 +0000 In-Reply-To: <5B97D1A902000078001E75A2@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: Kevin Tian , Stefano Stabellini , Wei Liu , Suravee Suthikulpanit , Razvan Cojocaru , Konrad Rzeszutek Wilk , Andrew Cooper , "Tim (Xen.org)" , George Dunlap , Julien Grall , Tamas K Lengyel , Jun Nakajima , xen-devel , Ian Jackson , Brian Woods List-Id: xen-devel@lists.xenproject.org PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiBGcm9tOiBYZW4tZGV2ZWwgW21haWx0bzp4 ZW4tZGV2ZWwtYm91bmNlc0BsaXN0cy54ZW5wcm9qZWN0Lm9yZ10gT24gQmVoYWxmDQo+IE9mIEph biBCZXVsaWNoDQo+IFNlbnQ6IDExIFNlcHRlbWJlciAyMDE4IDE1OjMxDQo+IFRvOiBQYXVsIER1 cnJhbnQgPFBhdWwuRHVycmFudEBjaXRyaXguY29tPg0KPiBDYzogS2V2aW4gVGlhbiA8a2V2aW4u dGlhbkBpbnRlbC5jb20+OyBTdGVmYW5vIFN0YWJlbGxpbmkNCj4gPHNzdGFiZWxsaW5pQGtlcm5l bC5vcmc+OyBXZWkgTGl1IDx3ZWkubGl1MkBjaXRyaXguY29tPjsgSnVuIE5ha2FqaW1hDQo+IDxq dW4ubmFrYWppbWFAaW50ZWwuY29tPjsgUmF6dmFuIENvam9jYXJ1IDxyY29qb2NhcnVAYml0ZGVm ZW5kZXIuY29tPjsNCj4gS29ucmFkIFJ6ZXN6dXRlayBXaWxrIDxrb25yYWQud2lsa0BvcmFjbGUu Y29tPjsgR2VvcmdlIER1bmxhcA0KPiA8R2VvcmdlLkR1bmxhcEBjaXRyaXguY29tPjsgQW5kcmV3 IENvb3Blcg0KPiA8QW5kcmV3LkNvb3BlcjNAY2l0cml4LmNvbT47IElhbiBKYWNrc29uIDxJYW4u SmFja3NvbkBjaXRyaXguY29tPjsgVGltDQo+IChYZW4ub3JnKSA8dGltQHhlbi5vcmc+OyBKdWxp ZW4gR3JhbGwgPGp1bGllbi5ncmFsbEBhcm0uY29tPjsgVGFtYXMgSw0KPiBMZW5neWVsIDx0YW1h c0B0a2xlbmd5ZWwuY29tPjsgU3VyYXZlZSBTdXRoaWt1bHBhbml0DQo+IDxzdXJhdmVlLnN1dGhp a3VscGFuaXRAYW1kLmNvbT47IHhlbi1kZXZlbCA8eGVuLQ0KPiBkZXZlbEBsaXN0cy54ZW5wcm9q ZWN0Lm9yZz47IEJyaWFuIFdvb2RzIDxicmlhbi53b29kc0BhbWQuY29tPg0KPiBTdWJqZWN0OiBS ZTogW1hlbi1kZXZlbF0gW1BBVENIIHY2IDEwLzE0XSBtbSAvIGlvbW11OiBzcGxpdCBuZWVkX2lv bW11KCkNCj4gaW50byBoYXNfaW9tbXVfcHQoKSBhbmQgbmVlZF9pb21tdV9wdF9zeW5jKCkNCj4g DQo+ID4+PiBPbiAyMy4wOC4xOCBhdCAxMTo0NywgPHBhdWwuZHVycmFudEBjaXRyaXguY29tPiB3 cm90ZToNCj4gPiAtLS0gYS94ZW4vYXJjaC94ODYvaHZtL210cnIuYw0KPiA+ICsrKyBiL3hlbi9h cmNoL3g4Ni9odm0vbXRyci5jDQo+ID4gQEAgLTc5Myw3ICs3OTMsOCBAQCBIVk1fUkVHSVNURVJf U0FWRV9SRVNUT1JFKE1UUlIsDQo+IGh2bV9zYXZlX210cnJfbXNyLCBodm1fbG9hZF9tdHJyX21z ciwNCj4gPg0KPiA+ICB2b2lkIG1lbW9yeV90eXBlX2NoYW5nZWQoc3RydWN0IGRvbWFpbiAqZCkN Cj4gPiAgew0KPiA+IC0gICAgaWYgKCBuZWVkX2lvbW11KGQpICYmIGQtPnZjcHUgJiYgZC0+dmNw dVswXSApDQo+ID4gKyAgICBpZiAoIChuZWVkX2lvbW11X3B0X3N5bmMoZCkgfHwgaW9tbXVfdXNl X2hhcF9wdChkKSkgJiYNCj4gPiArICAgICAgICAgZC0+dmNwdSAmJiBkLT52Y3B1WzBdICkNCj4g PiAgICAgIHsNCj4gPiAgICAgICAgICBwMm1fbWVtb3J5X3R5cGVfY2hhbmdlZChkKTsNCj4gPiAg ICAgICAgICBmbHVzaF9hbGwoRkxVU0hfQ0FDSEUpOw0KPiANCj4gSG93IGRvZXMgbmVlZF9pb21t dV9wdF9zeW5jKCkgY29tZSBpbnRvIHBsYXkgaGVyZT8gVG8gbWUsDQo+IGhhc19pb21tdV9wdCgp IHdvdWxkIHNlZW0gdG8gYmUgYSBiZXR0ZXIgbWF0Y2guDQoNCk9rLg0KDQo+IFRoZSBxdWVzdGlv bg0KPiBoZXJlIHNvbGVseSBpcyAoaWlyYykgd2hldGhlciBtZW1vcnkgdHlwZXMgdGFrZSBhbnkg ZWZmZWN0IGluIHRoZQ0KPiBmaXJzdCBwbGFjZSAob3IgZWxzZSB3ZSBjYW4gc2tpcCBhZGp1c3Rp bmcgdGhlbSksIHdoaWNoIGluIHR1cm4NCj4gc29sZWx5IGRlcGVuZHMgb24gd2hldGhlciB0aGVy ZSBhcmUgYW55IHBhc3MtdGhyb3VnaCBkZXZpY2VzDQo+IGluIHRoZSBkb21haW4uIFRoaXMgaXMg YWxvbmcgdGhlIGxpbmVzIG9mIC4uLg0KPiANCj4gPiBAQCAtODQxLDcgKzg0Miw3IEBAIGludCBl cHRlX2dldF9lbnRyeV9lbXQoc3RydWN0IGRvbWFpbiAqZCwNCj4gdW5zaWduZWQgbG9uZyBnZm4s IG1mbl90IG1mbiwNCj4gPiAgICAgICAgICByZXR1cm4gTVRSUl9UWVBFX1VOQ0FDSEFCTEU7DQo+ ID4gICAgICB9DQo+ID4NCj4gPiAtICAgIGlmICggIW5lZWRfaW9tbXUoZCkgJiYgIWNhY2hlX2Zs dXNoX3Blcm1pdHRlZChkKSApDQo+ID4gKyAgICBpZiAoICFoYXNfaW9tbXVfcHQoZCkgJiYgIWNh Y2hlX2ZsdXNoX3Blcm1pdHRlZChkKSApDQo+ID4gICAgICB7DQo+ID4gICAgICAgICAgKmlwYXQg PSAxOw0KPiA+ICAgICAgICAgIHJldHVybiBNVFJSX1RZUEVfV1JCQUNLOw0KPiANCj4gLi4uIHRo aXMuDQo+IA0KPiA+IC0tLSBhL3hlbi9hcmNoL3g4Ni94ODZfNjQvbW0uYw0KPiA+ICsrKyBiL3hl bi9hcmNoL3g4Ni94ODZfNjQvbW0uYw0KPiA+IEBAIC0xNDI2LDcgKzE0MjYsOCBAQCBpbnQgbWVt b3J5X2FkZCh1bnNpZ25lZCBsb25nIHNwZm4sIHVuc2lnbmVkDQo+IGxvbmcgZXBmbiwgdW5zaWdu ZWQgaW50IHB4bSkNCj4gPiAgICAgIGlmICggcmV0ICkNCj4gPiAgICAgICAgICBnb3RvIGRlc3Ry b3lfbTJwOw0KPiA+DQo+ID4gLSAgICBpZiAoIGlvbW11X2VuYWJsZWQgJiYgIWlvbW11X3Bhc3N0 aHJvdWdoICYmDQo+ICFuZWVkX2lvbW11KGhhcmR3YXJlX2RvbWFpbikgKQ0KPiA+ICsgICAgaWYg KCBpb21tdV9lbmFibGVkICYmICFpb21tdV9wYXNzdGhyb3VnaCAmJg0KPiA+ICsgICAgICAgICAh bmVlZF9pb21tdV9wdF9zeW5jKGhhcmR3YXJlX2RvbWFpbikgKQ0KPiA+ICAgICAgew0KPiA+ICAg ICAgICAgIGZvciAoIGkgPSBzcGZuOyBpIDwgZXBmbjsgaSsrICkNCj4gPiAgICAgICAgICAgICAg aWYgKCBpb21tdV9tYXBfcGFnZShoYXJkd2FyZV9kb21haW4sIF9iZm4oaSksIF9tZm4oaSksDQo+ IA0KPiBJJ20gY29uZnVzZWQgLSB0aGUgY29uZGl0aW9uIHlvdSBjaGFuZ2UgbG9va3MgdG8gYmUg aW52ZXJ0ZWQuIFdvdWxkbid0DQo+IHdlIGJldHRlciBmaXggdGhpcz8NCg0KSSBkb24ndCB0aGlu ayBpdCBpcyBpbnZlcnRlZC4gSSB0aGluayB0aGlzIGlzIHRvIGFkZCBuZXcgaG90cGx1Z2dlZCBt ZW1vcnkgdG8gdGhlIDE6MSBtYXAgaW4gdGhlIGNhc2UgdGhhdCBkb20wIGlzIG5vdCBpbiBzdHJp Y3QgbW9kZS4gSSBjb3VsZCBiZSB3cm9uZy4gR2VvcmdlPw0KDQo+IA0KPiBBbmQgdGhlbiBJIGFn YWluIHdvbmRlciB3aGV0aGVyIHlvdSd2ZSBjaG9zZW4gdGhlIHJpZ2h0IHByZWRpY2F0ZToNCj4g V2hlcmUgd291bGQgdGhlIGVxdWl2YWxlbnQgbWFwcGluZ3MgY29tZSBmcm9tIGluIHRoZSBvcHBv c2l0ZSBjYXNlPw0KPiANCg0KSWYgZG9tMCBpcyBpbiBzdHJpY3QgbW9kZSB0aGVuIEkgYXNzdW1l IHRoYXQgdGhlIHN5bmNocm9uaXphdGlvbiBpcyBoYW5kbGVkIHdoZW4gdGhlIGNhbGxzIGFyZSBt YWRlIHRvIGFkZCBtZW1vcnkgaW50byB0aGUgcDJtICh3aGljaCBJSVJDIGhhcHBlbnMgZXZlbiBm b3IgUFYgZ3Vlc3RzKS4gTXkgYWltIGZvciB0aGlzIHBhdGNoIGlzIHRvIGF2b2lkIGFueSB2aXNp YmxlIGZ1bmN0aW9uYWwgY2hhbmdlLg0KDQo+ID4gLS0tIGEveGVuL2NvbW1vbi9tZW1vcnkuYw0K PiA+ICsrKyBiL3hlbi9jb21tb24vbWVtb3J5LmMNCj4gPiBAQCAtODA1LDggKzgwNSw4IEBAIGlu dCB4ZW5tZW1fYWRkX3RvX3BoeXNtYXAoc3RydWN0IGRvbWFpbiAqZCwNCj4gc3RydWN0IHhlbl9h ZGRfdG9fcGh5c21hcCAqeGF0cCwNCj4gPiAgICAgIHhhdHAtPnNpemUgLT0gc3RhcnQ7DQo+ID4N Cj4gPiAgI2lmZGVmIENPTkZJR19IQVNfUEFTU1RIUk9VR0gNCj4gPiAtICAgIGlmICggbmVlZF9p b21tdShkKSApDQo+ID4gLSAgICAgICAgdGhpc19jcHUoaW9tbXVfZG9udF9mbHVzaF9pb3RsYikg PSAxOw0KPiA+ICsgICAgaWYgKCBuZWVkX2lvbW11X3B0X3N5bmMoZCkgfHwgaW9tbXVfdXNlX2hh cF9wdChkKSApDQo+ID4gKyAgICAgICB0aGlzX2NwdShpb21tdV9kb250X2ZsdXNoX2lvdGxiKSA9 IDE7DQo+ID4gICNlbmRpZg0KPiANCj4gUmF0aGVyIHRoYW4gbWFraW5nIHRoZSBjb25kaXRpb25h bCBtb3JlIGNvbXBsaWNhdGVkLCBwZXJoYXBzDQo+IHNpbXBseSBkcm9wIGl0IChhbmQgbW92ZSB0 aGUgcmVzZXQtdG8tZmFsc2UgY29kZSBvdXQgb2YgLi4uDQo+IA0KPiA+IEBAIC04MjgsNyArODI4 LDcgQEAgaW50IHhlbm1lbV9hZGRfdG9fcGh5c21hcChzdHJ1Y3QgZG9tYWluICpkLA0KPiBzdHJ1 Y3QgeGVuX2FkZF90b19waHlzbWFwICp4YXRwLA0KPiA+ICAgICAgfQ0KPiA+DQo+ID4gICNpZmRl ZiBDT05GSUdfSEFTX1BBU1NUSFJPVUdIDQo+ID4gLSAgICBpZiAoIG5lZWRfaW9tbXUoZCkgKQ0K PiA+ICsgICAgaWYgKCBuZWVkX2lvbW11X3B0X3N5bmMoZCkgfHwgaW9tbXVfdXNlX2hhcF9wdChk KSApDQo+ID4gICAgICB7DQo+ID4gICAgICAgICAgaW50IHJldDsNCj4gDQo+IC4uLiB0aGlzIGlm KCkpPw0KPiANCj4gQWxzbyBpdCBsb29rcyB0byBtZSBhcyBpZiBoZXJlIHlvdSd2ZSBnb3QgY29u ZnVzZWQgYnkgdGhlIG1lYW5pbmcNCj4geW91J3ZlIGFzc2lnbmVkIHRvIG5lZWRfaW9tbXVfcHRf c3luYygpOiBBY2NvcmRpbmcgdG8gdGhlDQo+IGRlc2NyaXB0aW9uLCBpdCBpcyBhYm91dCBzeW5j LWluZyBvZiBwYWdlIHRhYmxlcy4gSGVyZSwgaG93ZXZlciwNCj4gd2UncmUgY2hlY2tpbmcgd2hl dGhlciB0byBmbHVzaCBUTEJzLg0KPiANCg0KWWVzLCBJIG1heSBiZSBjb25mdXNlZCBoZXJlIGJ1 dCBpdCB3b3VsZCBzZWVtIHRvIG1lIHRoYXQgZmx1c2hpbmcgdGhlIElPVExCIHdvdWxkIGJlIG5l Y2Vzc2FyeSBldmVuIGluIHRoZSBjYXNlIHdoZXJlIHRoZSBwYWdlIHRhYmxlcyBhcmUgc2hhcmVk LiBJJ2xsIGNoZWNrIHRoZSBsb2dpYyBhZ2Fpbi4NCg0KPiA+IEBAIC0xNzksOCArMTc5LDEwIEBA IHZvaWQgX19od2RvbV9pbml0IGlvbW11X2h3ZG9tX2luaXQoc3RydWN0DQo+IGRvbWFpbiAqZCkN Cj4gPiAgICAgICAgICByZXR1cm47DQo+ID4NCj4gPiAgICAgIHJlZ2lzdGVyX2tleWhhbmRsZXIo J28nLCAmaW9tbXVfZHVtcF9wMm1fdGFibGUsICJkdW1wIGlvbW11DQo+IHAybSB0YWJsZSIsIDAp Ow0KPiA+IC0gICAgZC0+bmVlZF9pb21tdSA9ICEhaW9tbXVfZG9tMF9zdHJpY3Q7DQo+ID4gLSAg ICBpZiAoIG5lZWRfaW9tbXUoZCkgJiYgIWlvbW11X3VzZV9oYXBfcHQoZCkgKQ0KPiA+ICsNCj4g PiArICAgIGhkLT5zdGF0dXMgPSBJT01NVV9TVEFUVVNfaW5pdGlhbGl6aW5nOw0KPiA+ICsgICAg aGQtPm5lZWRfc3luYyA9ICEhaW9tbXVfZG9tMF9zdHJpY3QgJiYgIWlvbW11X3VzZV9oYXBfcHQo ZCk7DQo+IA0KPiBQb2ludGxlc3MgISEgYWZhaWN0Lg0KPiANCg0KT2ssIEknbGwgZHJvcCBpdC4N Cg0KPiA+ICBpbnQgaW9tbXVfY29uc3RydWN0KHN0cnVjdCBkb21haW4gKmQpDQo+ID4gIHsNCj4g PiAtICAgIGlmICggbmVlZF9pb21tdShkKSA+IDAgKQ0KPiA+ICsgICAgc3RydWN0IGRvbWFpbl9p b21tdSAqaGQgPSBkb21faW9tbXUoZCk7DQo+ID4gKw0KPiA+ICsgICAgaWYgKCBoZC0+c3RhdHVz ID09IElPTU1VX1NUQVRVU19pbml0aWFsaXplZCApDQo+ID4gICAgICAgICAgcmV0dXJuIDA7DQo+ ID4NCj4gPiAtICAgIGlmICggIWlvbW11X3VzZV9oYXBfcHQoZCkgKQ0KPiA+ICsgICAgaWYgKCAh aW9tbXVfdXNlX2hhcF9wdChkKSAmJiBoZC0+c3RhdHVzIDwNCj4gSU9NTVVfU1RBVFVTX2luaXRp YWxpemVkICkNCj4gDQo+IElzbid0IHRoZSBhZGRpdGlvbiBoZXJlIHJlZHVuZGFudCB3aXRoIHRo ZSBlYXJsaWVyIGlmKCk/DQo+IA0KDQpZZXMsIGl0IGRvZXMgYXBwZWFyIHRvIGJlLg0KDQo+ID4g QEAgLTg4OSw5ICs4ODYsMTEgQEAgdm9pZCB3YXRjaGRvZ19kb21haW5fZGVzdHJveShzdHJ1Y3Qg ZG9tYWluDQo+ICpkKTsNCj4gPiAgI2RlZmluZSBpc19waW5uZWRfdmNwdSh2KSAoKHYpLT5kb21h aW4tPmlzX3Bpbm5lZCB8fCBcDQo+ID4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNwdW1h c2tfd2VpZ2h0KCh2KS0+Y3B1X2hhcmRfYWZmaW5pdHkpID09IDEpDQo+ID4gICNpZmRlZiBDT05G SUdfSEFTX1BBU1NUSFJPVUdIDQo+ID4gLSNkZWZpbmUgbmVlZF9pb21tdShkKSAgICAoKGQpLT5u ZWVkX2lvbW11KQ0KPiA+ICsjZGVmaW5lIGhhc19pb21tdV9wdChkKSAoZG9tX2lvbW11KGQpLT5z dGF0dXMgIT0NCj4gSU9NTVVfU1RBVFVTX2Rpc2FibGVkKQ0KPiA+ICsjZGVmaW5lIG5lZWRfaW9t bXVfcHRfc3luYyhkKSAoZG9tX2lvbW11KGQpLT5uZWVkX3N5bmMpDQo+ID4gICNlbHNlDQo+ID4g LSNkZWZpbmUgbmVlZF9pb21tdShkKSAgICAoMCkNCj4gPiArI2RlZmluZSBoYXNfaW9tbXVfcHQo ZCkgKDApDQo+ID4gKyNkZWZpbmUgbmVlZF9pb21tdV9wdF9zeW5jKGQpICgwKQ0KPiANCj4gUGxl YXNlIHVzZSBmYWxzZSBoZXJlIChhbmQgbm8gbmVlZCBmb3IgdGhlIHBhcmVudGhlc2VzKS4NCj4g DQoNCk9rLg0KDQogIFBhdWwNCg0KPiBKYW4NCj4gDQo+IA0KPiBfX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fXw0KPiBYZW4tZGV2ZWwgbWFpbGluZyBsaXN0DQo+ IFhlbi1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZw0KPiBodHRwczovL2xpc3RzLnhlbnByb2pl Y3Qub3JnL21haWxtYW4vbGlzdGluZm8veGVuLWRldmVsDQpfX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fXwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZl bEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2plY3Qub3JnL21haWxt YW4vbGlzdGluZm8veGVuLWRldmVs