From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Xu, Quan" Subject: Re: [PATCH v5 03/10] IOMMU/MMU: enhance the call trees of IOMMU unmapping and mapping Date: Wed, 25 May 2016 15:34:33 +0000 Message-ID: <945CA011AD5F084CBEA3E851C0AB28894B8B5DBB@SHSMSX101.ccr.corp.intel.com> References: <1463558911-98187-1-git-send-email-quan.xu@intel.com> <1463558911-98187-4-git-send-email-quan.xu@intel.com> <57432D7802000078000EDE6D@prv-mh.provo.novell.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <57432D7802000078000EDE6D@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: "Tian, Kevin" , Keir Fraser , George Dunlap , Andrew Cooper , "dario.faggioli@citrix.com" , "xen-devel@lists.xen.org" , "Nakajima, Jun" List-Id: xen-devel@lists.xenproject.org T24gTWF5IDIzLCAyMDE2IDEwOjE5IFBNLCBKYW4gQmV1bGljaCA8SkJldWxpY2hAc3VzZS5jb20+ IHdyb3RlOgo+ID4+PiBPbiAxOC4wNS4xNiBhdCAxMDowOCwgPHF1YW4ueHVAaW50ZWwuY29tPiB3 cm90ZToKPiAKPiA+IC0tLSBhL3hlbi9hcmNoL3g4Ni9tbS5jCj4gPiArKysgYi94ZW4vYXJjaC94 ODYvbW0uYwo+ID4gQEAgLTI0NjMsMTEgKzI0NjMsMTIgQEAgc3RhdGljIGludCBfX3B1dF9wYWdl X3R5cGUoc3RydWN0IHBhZ2VfaW5mbwo+ID4gKnBhZ2UsICB9Cj4gPgo+ID4KPiA+IC1zdGF0aWMg aW50IF9fZ2V0X3BhZ2VfdHlwZShzdHJ1Y3QgcGFnZV9pbmZvICpwYWdlLCB1bnNpZ25lZCBsb25n IHR5cGUsCj4gPiAtICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IHByZWVtcHRpYmxlKQo+ ID4gK3N0YXRpYyBpbnQgX19tdXN0X2NoZWNrIF9fZ2V0X3BhZ2VfdHlwZShzdHJ1Y3QgcGFnZV9p bmZvICpwYWdlLAo+IAo+IFN1Y2ggYSBfX211c3RfY2hlY2sgaXMgcmVsYXRpdmVseSBwb2ludGxl c3Mgd2hlbiBhbGwgZXhpc3RpbmcgY2FsbGVycyBhbHJlYWR5Cj4gY2hlY2sgdGhlIHJldHVybiB2 YWx1ZSAoYW5kIHN1cmVseSBhbGwgY29kZSBpbnNpZGUgbW0uYyBrbm93cyBpdCBuZWVkcyB0byks IGFuZAo+IHlvdSBkb24ndCBhdCB0aGUgc2FtZSB0aW1lIG1ha2UgdGhlIG5vbi1zdGF0aWMgZnVu Y3Rpb25zIHByb3BhZ2F0aW5nIGl0cwo+IHJldHVybiB2YWx1ZSBhbHNvIF9fbXVzdF9jaGVjay4K Ckkgd2lsbCBkcm9wIHRoaXMgX19tdXN0X2NoZWNrIGFubm90YXRpb24uCgo+IEhlbmNlIEkgdGhp bmsgYmVzdCBpcyB0byBsaW1pdCB5b3VyIGVmZm9ydCB0byBJT01NVSBmdW5jdGlvbnMgZm9yIHRo aXMgcGF0Y2ggc2V0Lgo+CgpHb29kIGlkZWEuCiAKPiA+ICsgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgdW5zaWduZWQgbG9uZyB0eXBlLAo+ID4gKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgcHJlZW1wdGlibGUpCj4gPiAgewo+ID4gICAg ICB1bnNpZ25lZCBsb25nIG54LCB4LCB5ID0gcGFnZS0+dS5pbnVzZS50eXBlX2luZm87Cj4gPiAt ICAgIGludCByYyA9IDA7Cj4gPiArICAgIGludCByYyA9IDAsIHJldCA9IDA7Cj4gPgo+ID4gICAg ICBBU1NFUlQoISh0eXBlICYgfihQR1RfdHlwZV9tYXNrIHwgUEdUX3BhZV94ZW5fbDIpKSk7Cj4g Pgo+ID4gQEAgLTI1NzgsMTEgKzI1NzksMTEgQEAgc3RhdGljIGludCBfX2dldF9wYWdlX3R5cGUo c3RydWN0IHBhZ2VfaW5mbwo+ICpwYWdlLCB1bnNpZ25lZCBsb25nIHR5cGUsCj4gPiAgICAgICAg ICBpZiAoIGQgJiYgaXNfcHZfZG9tYWluKGQpICYmIHVubGlrZWx5KG5lZWRfaW9tbXUoZCkpICkK PiA+ICAgICAgICAgIHsKPiA+ICAgICAgICAgICAgICBpZiAoICh4ICYgUEdUX3R5cGVfbWFzaykg PT0gUEdUX3dyaXRhYmxlX3BhZ2UgKQo+ID4gLSAgICAgICAgICAgICAgICBpb21tdV91bm1hcF9w YWdlKGQsIG1mbl90b19nbWZuKGQsIHBhZ2VfdG9fbWZuKHBhZ2UpKSk7Cj4gPiArICAgICAgICAg ICAgICAgIHJldCA9IGlvbW11X3VubWFwX3BhZ2UoZCwgbWZuX3RvX2dtZm4oZCwKPiA+ICsgcGFn ZV90b19tZm4ocGFnZSkpKTsKPiA+ICAgICAgICAgICAgICBlbHNlIGlmICggdHlwZSA9PSBQR1Rf d3JpdGFibGVfcGFnZSApCj4gPiAtICAgICAgICAgICAgICAgIGlvbW11X21hcF9wYWdlKGQsIG1m bl90b19nbWZuKGQsIHBhZ2VfdG9fbWZuKHBhZ2UpKSwKPiA+IC0gICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgcGFnZV90b19tZm4ocGFnZSksCj4gPiAtICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIElPTU1VRl9yZWFkYWJsZXxJT01NVUZfd3JpdGFibGUpOwo+ID4gKyAgICAgICAg ICAgICAgICByZXQgPSBpb21tdV9tYXBfcGFnZShkLCBtZm5fdG9fZ21mbihkLCBwYWdlX3RvX21m bihwYWdlKSksCj4gPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZ2Vf dG9fbWZuKHBhZ2UpLAo+ID4gKwo+ID4gKyBJT01NVUZfcmVhZGFibGV8SU9NTVVGX3dyaXRhYmxl KTsKPiA+ICAgICAgICAgIH0KPiA+ICAgICAgfQo+ID4KPiA+IEBAIC0yNTk5LDYgKzI2MDAsOSBA QCBzdGF0aWMgaW50IF9fZ2V0X3BhZ2VfdHlwZShzdHJ1Y3QgcGFnZV9pbmZvCj4gKnBhZ2UsIHVu c2lnbmVkIGxvbmcgdHlwZSwKPiA+ICAgICAgaWYgKCAoeCAmIFBHVF9wYXJ0aWFsKSAmJiAhKG54 ICYgUEdUX3BhcnRpYWwpICkKPiA+ICAgICAgICAgIHB1dF9wYWdlKHBhZ2UpOwo+ID4KPiA+ICsg ICAgaWYgKCAhcmMgKQo+ID4gKyAgICAgICAgcmMgPSByZXQ7Cj4gCj4gSSBrbm93IEkndmUgc2Vl biB0aGlzIGEgY291cGxlIG9mIHRpbWUgYWxyZWFkeSwgYnV0IHdpdGggdGhlIHNwZWNpYWwgcHVy cG9zZSBvZgo+ICJyZXQiIEkgcmVhbGx5IHdvbmRlciB3aGV0aGVyIGEgbW9yZSBzcGVjaWZpYyBu YW1lIHdvdWxkbid0IGJlIHdhcnJhbnRlZCAtCj4gZS5nLiAiaW9tbXVfcmMiIG9yICJpb21tdV9y ZXQiLgoKCnJjIGlzIHJldHVybiB2YWx1ZSBmb3IgdGhpcyBmdW5jdGlvbiwgYW5kIG5vIGRpcmVj dGx5IGFzc29jaWF0aW9uIHdpdGggSU9NTVUgcmVsYXRlZCBjb2RlICggcmMgaXMgb25seSBmb3Ig YWxsb2NfcGFnZV90eXBlKCkgKS4KU28gdGhlIHJjIGNhbm5vdCBiZSAiaW9tbXVfcmMiLi4KCnJl dCBjYW4gYmUgImlvbW11X3JldCIsIGJ1dCBJIHRoaW5rIHRoZSBwYWlyICdyYycgLyAncmV0JyBt YXkgbG9vayBnb29kLgoKCj4gCj4gPiAtLS0gYS94ZW4vYXJjaC94ODYvbW0vcDJtLWVwdC5jCj4g PiArKysgYi94ZW4vYXJjaC94ODYvbW0vcDJtLWVwdC5jCj4gPiBAQCAtNjU4LDcgKzY1OCw3IEBA IGJvb2xfdCBlcHRfaGFuZGxlX21pc2NvbmZpZyh1aW50NjRfdCBncGEpCj4gPiAgICoKPiA+ICAg KiBSZXR1cm5zOiAwIGZvciBzdWNjZXNzLCAtZXJybm8gZm9yIGZhaWx1cmUKPiA+ICAgKi8KPiA+ IC1zdGF0aWMgaW50Cj4gPiArc3RhdGljIGludCBfX211c3RfY2hlY2sKPiA+ICBlcHRfc2V0X2Vu dHJ5KHN0cnVjdCBwMm1fZG9tYWluICpwMm0sIHVuc2lnbmVkIGxvbmcgZ2ZuLCBtZm5fdCBtZm4s Cj4gCj4gTm93IGFkZGluZyB0aGUgYW5ub3RhdGlvbiBoZXJlLCB3aXRob3V0IGFsc28gKGZpcnN0 KSBhZGRpbmcgaXQgdG8gdGhlIHAybQo+IG1ldGhvZCB3aGljaCB0aGlzIGdldHMgdXNlZCBmb3Ig KGFuZCB3aGljaCBpcyB0aGlzIGZ1bmN0aW9uJ3Mgc29sZSBwdXJwb3NlKSwgaXMKPiBub3QgdXNl ZnVsIGF0IGFsbC4gUGxlYXNlIHJlbWVtYmVyIC0gd2UgZG9uJ3Qgd2FudCB0aGlzIGFubm90YXRp b24gYmVjYXVzZSBpdAo+IGxvb2tzIGdvb2QsIGJ1dCBpbiBvcmRlciB0byBtYWtlIHN1cmUgZXJy b3JzIGRvbid0IGdldCB3cm9uZ2x5IGlnbm9yZWQuIFRoYXQncwo+IHdoeSwgZnJvbSB0aGUgYmVn aW5uaW5nLCBJIGhhdmUgYmVlbiB0ZWxsaW5nIHlvdSB0aGF0IGFkZGluZyBzdWNoIGFubm90YXRp b25zCj4gdG8gb3RoZXIgdGhhbiBuZXcgY29kZSBtZWFucyBkb2luZyBpdCB0b3AgZG93biAod2hp Y2ggeW91IGNsZWFybHkgZG9uJ3QgZG8KPiBoZXJlKS4KPiAKCkkgd2lsbCBkcm9wIHRoaXMgX19t dXN0X2NoZWNrIGFubm90YXRpb24uCgo+ID4gLS0tIGEveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gv aW9tbXUuYwo+ID4gKysrIGIveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvaW9tbXUuYwo+ID4gQEAg LTE3MSwyMCArMTcxLDMzIEBAIHZvaWQgX19od2RvbV9pbml0IGlvbW11X2h3ZG9tX2luaXQoc3Ry dWN0Cj4gZG9tYWluICpkKQo+ID4gICAgICB7Cj4gPiAgICAgICAgICBzdHJ1Y3QgcGFnZV9pbmZv ICpwYWdlOwo+ID4gICAgICAgICAgdW5zaWduZWQgaW50IGkgPSAwOwo+ID4gKyAgICAgICAgaW50 IHJjID0gMDsKPiA+ICsKPiA+ICAgICAgICAgIHBhZ2VfbGlzdF9mb3JfZWFjaCAoIHBhZ2UsICZk LT5wYWdlX2xpc3QgKQo+ID4gICAgICAgICAgewo+ID4gICAgICAgICAgICAgIHVuc2lnbmVkIGxv bmcgbWZuID0gcGFnZV90b19tZm4ocGFnZSk7Cj4gPiAgICAgICAgICAgICAgdW5zaWduZWQgbG9u ZyBnZm4gPSBtZm5fdG9fZ21mbihkLCBtZm4pOwo+ID4gICAgICAgICAgICAgIHVuc2lnbmVkIGlu dCBtYXBwaW5nID0gSU9NTVVGX3JlYWRhYmxlOwo+ID4gKyAgICAgICAgICAgIGludCByZXQ7Cj4g Pgo+ID4gICAgICAgICAgICAgIGlmICggKChwYWdlLT51LmludXNlLnR5cGVfaW5mbyAmIFBHVF9j b3VudF9tYXNrKSA9PSAwKSB8fAo+ID4gICAgICAgICAgICAgICAgICAgKChwYWdlLT51LmludXNl LnR5cGVfaW5mbyAmIFBHVF90eXBlX21hc2spCj4gPiAgICAgICAgICAgICAgICAgICAgPT0gUEdU X3dyaXRhYmxlX3BhZ2UpICkKPiA+ICAgICAgICAgICAgICAgICAgbWFwcGluZyB8PSBJT01NVUZf d3JpdGFibGU7Cj4gPiAtICAgICAgICAgICAgaGQtPnBsYXRmb3JtX29wcy0+bWFwX3BhZ2UoZCwg Z2ZuLCBtZm4sIG1hcHBpbmcpOwo+ID4gKwo+ID4gKyAgICAgICAgICAgIHJldCA9IGhkLT5wbGF0 Zm9ybV9vcHMtPm1hcF9wYWdlKGQsIGdmbiwgbWZuLCBtYXBwaW5nKTsKPiA+ICsKPiA+ICsgICAg ICAgICAgICBpZiAoIHVubGlrZWx5KHJldCkgKQo+ID4gKyAgICAgICAgICAgICAgICByYyA9IHJl dDsKPiAKPiBUaGlzIHNob3VsZCBiZSBnb29kIGVub3VnaCwgYnV0IEkgdGhpbmsgaXQgd291bGQg YmUgYmV0dGVyIGlmLCBqdXN0IGxpa2UKPiBlbHNld2hlcmUsIHlvdSByZXR1cm5lZCB0aGUgZmly c3QgZXJyb3IgaW5zdGVhZCBvZiB0aGUgbGFzdCBvbmUuCj4gCgpJIHdpbGwgYWxzbyBhcHBseSBp dCB0byB0aGlzIHNlcmllcy4KCgooSmFuLCBJIGtub3cgSXQgaXMgbm90IGFuIGVhc3kgd29yayB0 byByZXZpZXcgdGhlc2UgbGl0dGxlIHRoaW5ncy4gSSB2ZXJ5IGFwcHJlY2lhdGUgaXQuIFRoYW5r IHlvdSEhICkKUXVhbgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX18KWGVuLWRldmVsIG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVuLm9yZwpodHRw Oi8vbGlzdHMueGVuLm9yZy94ZW4tZGV2ZWwK