From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Xu, Quan" Subject: Re: [PATCH 1/2] IOMMU/MMU: Adjust top level functions for VT-d Device-TLB flush error. Date: Mon, 28 Mar 2016 03:33:07 +0000 Message-ID: <945CA011AD5F084CBEA3E851C0AB28894B86D176@SHSMSX101.ccr.corp.intel.com> References: <1458197676-60696-1-git-send-email-quan.xu@intel.com> <1458197676-60696-2-git-send-email-quan.xu@intel.com> <56EAF41E02000078000DE065@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: <56EAF41E02000078000DE065@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" , "Wu, Feng" , George Dunlap , Liu Jinsong , Dario Faggioli , "xen-devel@lists.xen.org" , "Nakajima, Jun" , Andrew Cooper , Keir Fraser List-Id: xen-devel@lists.xenproject.org T24gTWFyY2ggMTgsIDIwMTYgMToxNWFtLCA8SkJldWxpY2hAc3VzZS5jb20+IHdyb3RlOgo+ID4+ PiBPbiAxNy4wMy4xNiBhdCAwNzo1NCwgPHF1YW4ueHVAaW50ZWwuY29tPiB3cm90ZToKPiA+IEBA IC01MywxMSArNTUsMjEgQEAgc3RhdGljIGludCBkZXZpY2VfcG93ZXJfZG93bih2b2lkKQo+ID4K PiA+ICAgICAgaW9hcGljX3N1c3BlbmQoKTsKPiA+Cj4gPiAtICAgIGlvbW11X3N1c3BlbmQoKTsK PiA+ICsgICAgZXJyID0gaW9tbXVfc3VzcGVuZCgpOwo+ID4gKyAgICBpZiAoIGVyciApCj4gPiAr ICAgICAgICBnb3RvIGlvbW11X3N1c3BlbmRfZXJyb3I7Cj4gPgo+ID4gICAgICBsYXBpY19zdXNw ZW5kKCk7Cj4gPgo+ID4gICAgICByZXR1cm4gMDsKPiA+ICsKPiA+ICtpb21tdV9zdXNwZW5kX2Vy cm9yOgo+IAo+IExhYmVscyBpbmRlbnRlZCBieSBhdCBsZWFzdCBvbmUgc3BhY2UgcGxlYXNlLgo+ IAoKR29vZCwgSSB3YXNuJ3QgYXdhcmUgb2YgaXQuCgoKPiA+IC0tLSBhL3hlbi9hcmNoL3g4Ni9t bS9wMm0tZXB0LmMKPiA+ICsrKyBiL3hlbi9hcmNoL3g4Ni9tbS9wMm0tZXB0LmMKPiA+IEBAIC04 MzAsNyArODMwLDE1IEBAIG91dDoKPiA+ICAgICAgICAgIHsKPiA+ICAgICAgICAgICAgICBpZiAo IGlvbW11X2ZsYWdzICkKPiA+ICAgICAgICAgICAgICAgICAgZm9yICggaSA9IDA7IGkgPCAoMSA8 PCBvcmRlcik7IGkrKyApCj4gPiAtICAgICAgICAgICAgICAgICAgICBpb21tdV9tYXBfcGFnZShk LCBnZm4gKyBpLCBtZm5feChtZm4pICsgaSwKPiBpb21tdV9mbGFncyk7Cj4gPiArICAgICAgICAg ICAgICAgIHsKPiA+ICsgICAgICAgICAgICAgICAgICAgIHJjID0gaW9tbXVfbWFwX3BhZ2UoZCwg Z2ZuICsgaSwgbWZuX3gobWZuKSArIGksCj4gaW9tbXVfZmxhZ3MpOwo+ID4gKyAgICAgICAgICAg ICAgICAgICAgaWYgKCByYyApCj4gPiArICAgICAgICAgICAgICAgICAgICB7Cj4gPiArICAgICAg ICAgICAgICAgICAgICAgICAgd2hpbGUgKCBpLS0gPiAwICkKPiA+ICsgICAgICAgICAgICAgICAg ICAgICAgICAgICAgaW9tbXVfdW5tYXBfcGFnZShkLCBnZm4gKyBpKTsKPiA+ICsgICAgICAgICAg ICAgICAgICAgICAgICBicmVhazsKPiA+ICsgICAgICAgICAgICAgICAgICAgIH0KPiA+ICsgICAg ICAgICAgICAgICAgfQo+ID4gICAgICAgICAgICAgIGVsc2UKPiA+ICAgICAgICAgICAgICAgICAg Zm9yICggaSA9IDA7IGkgPCAoMSA8PCBvcmRlcik7IGkrKyApCj4gPiAgICAgICAgICAgICAgICAg ICAgICBpb21tdV91bm1hcF9wYWdlKGQsIGdmbiArIGkpOwo+IAo+IEVhcmxpZXIgb24gaW4gdGhl IFBWIG1tIGNvZGUgeW91IGFsc28gY2hlY2tlZCBpb21tdV91bm1hcF9wYWdlKCkncyByZXR1cm4K PiBjb2RlIC0gd2h5IG5vdCBoZXJlIChhbmQgYWxzbyBpbiBwMm0tcHQuYyk/Cj4gCj4gQWxzbyBJ J20gcXVpdGUgdW5oYXBweSBhYm91dCB0aGUgaW5jb25zaXN0ZW50IHN0YXRlIHlvdSBsZWF2ZSB0 aGluZ3MKPiBpbjogWW91IHVubWFwIGZyb20gdGhlIElPTU1VLCByZXR1cm4gYW4gZXJyb3IsIGJ1 dCBsZWF2ZSB0aGUgRVBUIGVudHJ5IGluCj4gcGxhY2UuCj4gCgpBcyBJIG1lbnRpb25lZCBmb3Ig dGhlIGFic3RyYWN0IG1vZGVsLAogICAgIEZvciBpb21tdV97LHVufW1hcF9wYWdlKCksIHdlJ2Qg YmV0dGVyIGZpeCBpdCBhcyBhIG5vcm1hbCBlcnJvciwgYXMgdGhlIGVycm9yIGlzIG5vdCBvbmx5 IGZyb20gaW9tbXUgZmx1c2gsIC5lLmcsICctRU5PTUVNJy4KICAgICBTbywgd2UgbmVlZCB0byB7 LHVufW1hcCBmcm9tIHRoZSBJT01NVSwgcmV0dXJuIGFuIGVycm9yLCBhbmQgcm9sbCBiYWNrIHRo ZSBmYWlsZWQgb3BlcmF0aW9uLiAKCkZvciBpb21tdV91bm1hcF9wYWdlLCBpdCBpcyBzdGlsbCB1 bmRlciBkaXNjdXNzaW9uIGluIGFub3RoZXIgdGhyZWFkLiBJIHRoaW5rIHdlIGNvdWxkIGhvbGQg aXQgb24sIHdhaXRpbmcgZm9yIGFub3RoZXIgZGlzY3Vzc2lvbi4KCgo+ID4gLS0tIGEveGVuL2Nv bW1vbi9ncmFudF90YWJsZS5jCj4gPiArKysgYi94ZW4vY29tbW9uL2dyYW50X3RhYmxlLmMKPiA+ IEBAIC05MzIsOCArOTMyLDkgQEAgX19nbnR0YWJfbWFwX2dyYW50X3JlZigKPiA+ICAgICAgICAg ICAgICB7Cj4gPiAgICAgICAgICAgICAgICAgIG5yX2dldHMrKzsKPiA+ICAgICAgICAgICAgICAg ICAgKHZvaWQpZ2V0X3BhZ2UocGcsIHJkKTsKPiA+IC0gICAgICAgICAgICAgICAgaWYgKCAhKG9w LT5mbGFncyAmIEdOVE1BUF9yZWFkb25seSkgKQo+ID4gLSAgICAgICAgICAgICAgICAgICAgZ2V0 X3BhZ2VfdHlwZShwZywgUEdUX3dyaXRhYmxlX3BhZ2UpOwo+ID4gKyAgICAgICAgICAgICAgICBp ZiAoICEob3AtPmZsYWdzICYgR05UTUFQX3JlYWRvbmx5KSAmJgo+ID4gKyAgICAgICAgICAgICAg ICAgICAgICFnZXRfcGFnZV90eXBlKHBnLCBQR1Rfd3JpdGFibGVfcGFnZSkgKQo+ID4gKyAgICAg ICAgICAgICAgICAgICAgICAgIGdvdG8gY291bGRfbm90X3BpbjsKPiAKPiBUaGlzIG5lZWRzIGV4 cGxhbmF0aW9uLCBhcyBpdCBkb2Vzbid0IGxvb2sgcmVsYXRlZCB0byB3aGF0IHlvdXIgYWN0dWFs IGdvYWwgaXM6IElmCj4gYW4gZXJyb3Igd2FzIHBvc3NpYmxlIGhlcmUsIEkgdGhpbmsgdGhpcyB3 b3VsZCBiZSBhIHNlY3VyaXR5IGlzc3VlLiBIb3dldmVyLCBhcwo+IGFsc28ga2luZCBvZiBkb2N1 bWVudGVkIGJ5IHRoZSBleHBsaWNpdGx5IGlnbm9yZWQgcmV0dXJuIHZhbHVlIGZyb20gZ2V0X3Bh Z2UoKSwKPiBpdCBpcyBteSB1bmRlcnN0YW5kaW5nIHRoZXJlIGhlcmUgd2Ugb25seSBvYnRhaW4g YW4gX2V4dHJhXyByZWZlcmVuY2UuCj4gCgpGb3IgdGhpcyBwb2ludCwgSSBpbmZlcnJlZCBmcm9t OgptYXBfdmNwdV9pbmZvKCkKewouLi4KICAgIGlmICggIWdldF9wYWdlX3R5cGUocGFnZSwgUEdU X3dyaXRhYmxlX3BhZ2UpICkKICAgIHsKICAgICAgICBwdXRfcGFnZShwYWdlKTsKICAgICAgICBy ZXR1cm4gLUVJTlZBTDsKICAgIH0KLi4uCn0KLCB0aGVuIGZvciBnZXRfcGFnZV90eXBlKCksIEkg dGhpbmsgdGhlIHJldHVybiB2YWx1ZToKICAgICAwIC0tIGVycm9yLCAKICAgICAxLS0gcmlnaHQu CgpTbyBpZiBnZXRfcGFnZV90eXBlKCkgaXMgZmFpbGVkLCB3ZSBzaG91bGQgZ290byBjb3VsZF9u b3RfcGluLgoKYnR3LCB0aGVyZSBpcyBhbm90aGVyIGlzc3VlIGluIHRoZSBjYWxsIHBhdGg6CiAg ICBpb21tdV97LHVufW1hcF9wYWdlKCkgLS0gX19nZXRfcGFnZV90eXBlKCkgLS0gZ2V0X3BhZ2Vf dHlwZSgpLS0tCgoKSSB0cmllZCB0byByZXR1cm4gaW9tbXVfeyx1bn1tYXBfcGFnZSgpIGVycm9y IGNvZGUgaW4gX19nZXRfcGFnZV90eXBlKCksIGlzIGl0IHJpZ2h0PwoKPiA+IC0tLSBhL3hlbi9j b21tb24vbWVtb3J5LmMKPiA+ICsrKyBiL3hlbi9jb21tb24vbWVtb3J5LmMKPiA+IEBAIC02Nzgs OCArNjc4LDkgQEAgc3RhdGljIGludCB4ZW5tZW1fYWRkX3RvX3BoeXNtYXAoc3RydWN0IGRvbWFp bgo+ICpkLAo+ID4gICAgICBpZiAoIG5lZWRfaW9tbXUoZCkgKQo+ID4gICAgICB7Cj4gPiAgICAg ICAgICB0aGlzX2NwdShpb21tdV9kb250X2ZsdXNoX2lvdGxiKSA9IDA7Cj4gPiAtICAgICAgICBp b21tdV9pb3RsYl9mbHVzaChkLCB4YXRwLT5pZHggLSBkb25lLCBkb25lKTsKPiA+IC0gICAgICAg IGlvbW11X2lvdGxiX2ZsdXNoKGQsIHhhdHAtPmdwZm4gLSBkb25lLCBkb25lKTsKPiA+ICsgICAg ICAgIHJjID0gaW9tbXVfaW90bGJfZmx1c2goZCwgeGF0cC0+aWR4IC0gZG9uZSwgZG9uZSk7Cj4g PiArICAgICAgICBpZiAoICFyYyApCj4gPiArICAgICAgICAgICAgcmMgPSBpb21tdV9pb3RsYl9m bHVzaChkLCB4YXRwLT5ncGZuIC0gZG9uZSwgZG9uZSk7Cj4gPiAgICAgIH0KPiAKPiBBbmQgdGhl IHBhdHRlcm4gcmVwZWF0cyAtIHlvdSBub3cgcmV0dXJuIGFuIGVycm9yLCBidXQgeW91IGRvbid0 IHJvbGwgYmFjayB0aGUKPiBub3cgZmFpbGVkIG9wZXJhdGlvbi4gQnV0IHdhaXQgLSBtYXliZSB0 aGF0IGludGVuZGVkOgo+IEFyZSB5b3UgbWVhbmluZyB0byBjcmFzaCB0aGUgZ3Vlc3QgaW4gc3Vj aCBjYXNlcyAoc29tZXdoZXJlIGRlZXAgaW4gdGhlIGZsdXNoCj4gY29kZSk/IElmIHNvLCBJIHRo aW5rIHRoYXQncyBmaW5lLCBidXQgeW91IGFic29sdXRlbHkgd291bGQgbmVlZCB0byBzYXkgc28g aW4gdGhlCj4gY29tbWl0IG1lc3NhZ2UuCj4gCgpZZXMsIEkgc2hvdWxkIGVuaGFuY2UgdGhlIGNv bW1pdCBtZXNzYWdlLgoKPiA+IC0tLSBhL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL3g4Ni9pb21t dS5jCj4gPiArKysgYi94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC94ODYvaW9tbXUuYwo+ID4gQEAg LTEwNCw3ICsxMDQsMTEgQEAgaW50IGFyY2hfaW9tbXVfcG9wdWxhdGVfcGFnZV90YWJsZShzdHJ1 Y3QKPiBkb21haW4gKmQpCj4gPiAgICAgIHRoaXNfY3B1KGlvbW11X2RvbnRfZmx1c2hfaW90bGIp ID0gMDsKPiA+Cj4gPiAgICAgIGlmICggIXJjICkKPiA+IC0gICAgICAgIGlvbW11X2lvdGxiX2Zs dXNoX2FsbChkKTsKPiA+ICsgICAgewo+ID4gKyAgICAgICAgcmMgPSBpb21tdV9pb3RsYl9mbHVz aF9hbGwoZCk7Cj4gPiArICAgICAgICBpZiAoIHJjICkKPiA+ICsgICAgICAgICAgICBpb21tdV90 ZWFyZG93bihkKTsKPiA+ICsgICAgfQo+ID4gICAgICBlbHNlIGlmICggcmMgIT0gLUVSRVNUQVJU ICkKPiA+ICAgICAgICAgIGlvbW11X3RlYXJkb3duKGQpOwo+IAo+IFdoeSBjYW4ndCB5b3UganVz dCB1c2UgdGhlIGV4aXN0aW5nIGNhbGwgdG8gaW9tbXVfdGVhcmRvd24oKSwgYnkgc2ltcGx5IGRl bGV0aW5nCj4gdGhlICJlbHNlIj8KPiAKCkp1c3QgY2hlY2sgaXQsIGNvdWxkIEkgbW9kaWZ5IGl0 IGFzIGJlbG93OgotLS0gYS94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC94ODYvaW9tbXUuYworKysg Yi94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC94ODYvaW9tbXUuYwpAQCAtMTA1LDcgKzEwNSw4IEBA IGludCBhcmNoX2lvbW11X3BvcHVsYXRlX3BhZ2VfdGFibGUoc3RydWN0IGRvbWFpbiAqZCkKCiAg ICAgaWYgKCAhcmMgKQogICAgICAgICBpb21tdV9pb3RsYl9mbHVzaF9hbGwoZCk7Ci0gICAgZWxz ZSBpZiAoIHJjICE9IC1FUkVTVEFSVCApCisKKyAgICBpZiAoIHJjICE9IC1FUkVTVEFSVCApCiAg ICAgICAgIGlvbW11X3RlYXJkb3duKGQpOwoKClF1YW4KCl9fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fClhlbi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVuLWRldmVs QGxpc3RzLnhlbi5vcmcKaHR0cDovL2xpc3RzLnhlbi5vcmcveGVuLWRldmVsCg==