From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Jan Beulich" Subject: Re: [PATCH 2/2] IOMMU/MMU: Adjust low level functions for VT-d Device-TLB flush error. Date: Tue, 29 Mar 2016 01:36:35 -0600 Message-ID: <56FA4CA302000078000E0B5E@prv-mh.provo.novell.com> References: <1458197676-60696-1-git-send-email-quan.xu@intel.com> <1458197676-60696-3-git-send-email-quan.xu@intel.com> <56EBE46102000078000DE46B@prv-mh.provo.novell.com> <945CA011AD5F084CBEA3E851C0AB28894B86C482@SHSMSX101.ccr.corp.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <945CA011AD5F084CBEA3E851C0AB28894B86C482@SHSMSX101.ccr.corp.intel.com> Content-Disposition: inline List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: Quan Xu Cc: Kevin Tian , Feng Wu , Jun Nakajima , George Dunlap , Andrew Cooper , DarioFaggioli , "xen-devel@lists.xen.org" , Julien Grall , Stefano Stabellini , Suravee Suthikulpanit , Keir Fraser List-Id: xen-devel@lists.xenproject.org Pj4+IE9uIDI1LjAzLjE2IGF0IDEwOjI3LCA8cXVhbi54dUBpbnRlbC5jb20+IHdyb3RlOgo+IE9u IE1hcmNoIDE4LCAyMDE2IDY6MjBwbSwgPEpCZXVsaWNoQHN1c2UuY29tPiB3cm90ZToKPj4gPj4+ IE9uIDE3LjAzLjE2IGF0IDA3OjU0LCA8cXVhbi54dUBpbnRlbC5jb20+IHdyb3RlOgo+PiA+IC0t LSBhL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL2lvbW11LmMKPj4gPiArKysgYi94ZW4vZHJpdmVy cy9wYXNzdGhyb3VnaC9pb21tdS5jCj4+ID4gQEAgLTE4Miw3ICsxODIsMTEgQEAgdm9pZCBfX2h3 ZG9tX2luaXQgaW9tbXVfaHdkb21faW5pdChzdHJ1Y3QKPj4gZG9tYWluICpkKQo+PiA+ICAgICAg ICAgICAgICAgICAgICgocGFnZS0+dS5pbnVzZS50eXBlX2luZm8gJiBQR1RfdHlwZV9tYXNrKQo+ PiA+ICAgICAgICAgICAgICAgICAgICA9PSBQR1Rfd3JpdGFibGVfcGFnZSkgKQo+PiA+ICAgICAg ICAgICAgICAgICAgbWFwcGluZyB8PSBJT01NVUZfd3JpdGFibGU7Cj4+ID4gLSAgICAgICAgICAg IGhkLT5wbGF0Zm9ybV9vcHMtPm1hcF9wYWdlKGQsIGdmbiwgbWZuLCBtYXBwaW5nKTsKPj4gPiAr ICAgICAgICAgICAgaWYgKCBoZC0+cGxhdGZvcm1fb3BzLT5tYXBfcGFnZShkLCBnZm4sIG1mbiwg bWFwcGluZykgKQo+PiA+ICsgICAgICAgICAgICAgICAgcHJpbnRrKFhFTkxPR19HX0VSUgo+PiA+ ICsgICAgICAgICAgICAgICAgICAgICAgICJJT01NVTogTWFwIHBhZ2UgZ2ZuOiAweCVseChtZm46 IDB4JWx4KQo+PiBmYWlsZWQuXG4iLAo+PiA+ICsgICAgICAgICAgICAgICAgICAgICAgIGdmbiwg bWZuKTsKPj4gPiArCj4+IAo+PiBQcmludGluZyBvbmUgbWVzc2FnZSBoZXJlIGlzIGNlcnRhaW5s eSBuZWNlc3NhcnksIGJ1dCB3aGF0IGlmIHRoZSBmYWlsdXJlIAo+IHJlcGVhdHMKPj4gZm9yIHZl cnkgbWFueSBwYWdlcz8gCj4gCj4gWWVzLCB0byBtZSwgaXQgaXMgb2ssIGJ1dCBJIGFtIG9wZW4g dG8geW91ciBzdWdnZXN0aW9uLgo+IAo+PiBBbHNvICUjbHggaW5zdGVhZCBvZiAweCVseCBwbGVh c2UsIGFuZCBhIGJsYW5rIGJlZm9yZSB0aGUKPj4gb3BlbmluZyBwYXJlbnRoZXNpcy4KPj4gCj4g T0ssIGp1c3QgY2hlY2sgaXQ6Cj4gCj4gLi4KPiAiSU9NTVU6IE1hcCBwYWdlIGdmbjogJSNseCAo bWZuOiAlI2x4KSBmYWlsZWQuXG4iCj4gLi4KPiAKPiBSaWdodD8KCkFsbW9zdDogR2VuZXJhbGx5 IG5vIGZ1bGwgc3RvcCBpbiBsb2cgbWVzc2FnZXMgcGxlYXNlLiBBbmQgSSB0aGluawp0aGUgd29y ZCAicGFnZSIgaXMgcmVkdW5kYW50IGhlcmUuIEFzIHJ1bGUgb2YgdGh1bWI6IExvZwptZXNzYWdl cyBzaG91bGQgZ2l2ZSBhcyBtdWNoIGFzIHBvc3NpYmxlIHVzZWZ1bCBpbmZvcm1hdGlvbiAod2hp Y2gKaW5jbHVkZXMgdGhlIHJlcXVpcmVtZW50IGZvciBkaXN0aW5jdCBvbmVzIHRvIGJlIGRpc3Rp bmd1aXNoYWJsZSBpbgpyZXN1bHRpbmcgbG9ncykgd2l0aCBhcyBsaXR0bGUgYXMgcG9zc2libGUg dmVyYm9zaXR5LgoKPj4gPiBAQCAtNTU0LDExICs1NTUsMjQgQEAgc3RhdGljIHZvaWQgaW9tbXVf Zmx1c2hfYWxsKHZvaWQpCj4+ID4gICAgICAgICAgaW9tbXUgPSBkcmhkLT5pb21tdTsKPj4gPiAg ICAgICAgICBpb21tdV9mbHVzaF9jb250ZXh0X2dsb2JhbChpb21tdSwgMCk7Cj4+ID4gICAgICAg ICAgZmx1c2hfZGV2X2lvdGxiID0gZmluZF9hdHNfZGV2X2RyaGQoaW9tbXUpID8gMSA6IDA7Cj4+ ID4gLSAgICAgICAgaW9tbXVfZmx1c2hfaW90bGJfZ2xvYmFsKGlvbW11LCAwLCBmbHVzaF9kZXZf aW90bGIpOwo+PiA+ICsgICAgICAgIHJjID0gaW9tbXVfZmx1c2hfaW90bGJfZ2xvYmFsKGlvbW11 LCAwLCBmbHVzaF9kZXZfaW90bGIpOwo+PiA+ICsKPj4gPiArICAgICAgICBpZiAoIHJjID4gMCAp Cj4+ID4gKyAgICAgICAgewo+PiA+ICsgICAgICAgICAgICBpb21tdV9mbHVzaF93cml0ZV9idWZm ZXIoaW9tbXUpOwo+PiAKPj4gV2h5IGlzIHRoaXMgbmVlZGVkIGFsbCBvZiB0aGUgc3VkZGVuPwo+ IAo+IEFzIHRoZXJlIG1heSBiZSBtdWx0aXBsZSBJT01NVXMuIC5lLmcsIHRoZXJlIGFyZSAyIElP TU1VcyBpbiBteSBtYWNoaW5lLCBhbmQgCj4gSSBjYW4gZmluZCB0aGUgZm9sbG93aW5nIGxvZyBt ZXNzYWdlOgo+ICIiIgo+IChYRU4pIEludGVsIFZULWQgaW9tbXUgMCBzdXBwb3J0ZWQgcGFnZSBz aXplczogNGtCLCAyTUIsIDFHQi4KPiAoWEVOKSBJbnRlbCBWVC1kIGlvbW11IDEgc3VwcG9ydGVk IHBhZ2Ugc2l6ZXM6IDRrQiwgMk1CLCAxR0IuCj4gIiIiCj4gX19paXVjX18sIGlvbW11X2ZsdXNo X3dyaXRlX2J1ZmZlcigpIGlzIHBlciBJT01NVSwgc28gSXQgc2hvdWxkIGJlIGNhbGxlZCB0byAK PiBmbHVzaCBldmVyeSBJT01NVS4KCkZvciBvbmUgd2hhdCB5b3Ugc2F5IHN1Z2dlc3RzIHRoYXQg cmlnaHQgbm93IHRoaXMgaXMgYmVpbmcgZG9uZQpmb3Igc29tZSAob25lPykgSU9NTVUocyksIHdo aWNoIEkgZG9uJ3Qgc2VlIGJlaW5nIHRoZSBjYXNlLiBBbmQKdGhlbiB3aGF0IHlvdSBzYXkgX3N0 aWxsXyBkb2Vzbid0IHNheSBfd2h5XyB0aGlzIGlzIG5vdyBuZWVkZWQgYWxsCm9mIHRoZSBzdWRk ZW4uIElmLCBpbiB0aGUgY291cnNlIG9mIGRvaW5nIHlvdXIgcmUtd29yayBoZXJlLCB5b3UKZmlu ZCBwcmUtZXhpc3RpbmcgaXNzdWVzIHdpdGggdGhlIGNvZGUsIHBsZWFzZSBzcGxpdCB0aGUgbmVj ZXNzYXJ5CmZpeGVzIG91dCBvZiB5b3VyIHJlLXdvcmsgYW5kIHN1Ym1pdCB0aGVtIHNlcGFyYXRl bHkgd2l0aCBwcm9wZXIKZXhwbGFuYXRpb25zIGluIHRoZWlyIGNvbW1pdCBtZXNzYWdlcy4KCj4+ ID4gKyAgICAgICAgICAgIHJjID0gMDsKPj4gPiArICAgICAgICB9Cj4+ID4gKyAgICAgICAgZWxz ZSBpZiAoIHJjIDwgMCApCj4+ID4gKyAgICAgICAgewo+PiA+ICsgICAgICAgICAgICBwcmludGso WEVOTE9HX0dfRVJSICJJT01NVTogSU9NTVUgZmx1c2ggYWxsIGZhaWxlZC5cbiIpOwo+PiA+ICsg ICAgICAgICAgICBicmVhazsKPj4gPiArICAgICAgICB9Cj4+IAo+PiBJcyBhIGxvZyBtZXNzYWdl IHJlYWxseSBhZHZpc2FibGUgaGVyZT8KPj4gCj4gCj4gVG8gbWUsIEl0IGxvb2tzIHRyaWNreSB0 b28uIEkgd2FzIHN0cnVnZ2xpbmcgdG8gbWFrZSBkZWNpc2lvbi4gRm9yIHNjaGVtZSBCLCAKPiBJ IHdvdWxkIHRyeSB0byBkbyBhcyBiZWxvdzoKPiAKPiBpZiAoIGlvbW11X2ZsdXNoX2FsbCgpICkK PiAgICAgcHJpbnRrKCIuLi4gbm5uIC4uLiIpOwo+IAo+IGJ1dCB0aGVyZSBhcmUgNCBmdW5jdGlv biBjYWxscywgaWYgc28sIHRvIG1lLCBpdCBsb29rcyByZWR1bmRhbnQuCj4gCj4gT3IsIGNvdWxk IEkgaWdub3JlIHRoZSBwcmludCBvdXQgZm9yIGlvbW11X2ZsdXNoX2FsbCgpIGZhaWxlZD8KCkRp cmVjdGluZyB0aGUgcXVlc3Rpb24gYmFjayBpcyBub3QgaGVscGZ1bDogWW91IHNob3VsZCBrbm93 IGJldHRlcgp0aGFuIG1lIHdoeSB5b3UgaGFkIGFkZGVkIGEgbG9nIG1lc3NhZ2UgdGhlcmUgaW4g dGhlIGZpcnN0IHBsYWNlLgpBbmQgaXQgaXMgdGhpcyAid2h5IiB3aGljaCBpcyB0byBqdWRnZSBh Ym91dCB3aGV0aGVyIGl0IHNob3VsZCBzdGF5CnRoZXJlLCBtb3ZlIGVsc2V3aGVyZSwgb3IgZ2V0 IGRyb3BwZWQgYWx0b2dldGhlci4KCj4+ID4gQEAgLTYyMiw3ICs2NDAsNyBAQCBzdGF0aWMgdm9p ZCBkbWFfcHRlX2NsZWFyX29uZShzdHJ1Y3QgZG9tYWluCj4+ICpkb21haW4sIHU2NCBhZGRyKQo+ PiA+ICAgICAgaWYgKCBwZ19tYWRkciA9PSAwICkKPj4gPiAgICAgIHsKPj4gPiAgICAgICAgICBz cGluX3VubG9jaygmaGQtPmFyY2gubWFwcGluZ19sb2NrKTsKPj4gPiAtICAgICAgICByZXR1cm47 Cj4+ID4gKyAgICAgICAgcmV0dXJuIC1FTk9NRU07Cj4+ID4gICAgICB9Cj4+IAo+PiBhZGRyX3Rv X2RtYV9wYWdlX21hZGRyKCkgZ2V0cyBjYWxsZWQgd2l0aCAiYWxsb2MiIGJlaW5nIGZhbHNlLCBz byB0aGVyZSBjYW4ndAo+PiBiZSBhbnkgbWVtb3J5IGFsbG9jYXRpb24gZmFpbHVyZSBoZXJlLiBU aGVyZSBzaW1wbHkgaXMgbm90aGluZyB0byBkbyBpbiB0aGlzCj4+IGNhc2UuCj4+IAo+IAo+IEkg Y29weSBpdCBmcm9tIGlvbW11X21hcF9wYWdlKCkuCj4gCj4gR29vZCwgdGhlbiB0aGUgZXJyb3Ig b2YgaW9tbXVfdW5tYXBfcGFnZSgpIGxvb2tzIG9ubHkgZnJvbSBmbHVzaCAodGhlIGNyYXNoIAo+ IGlzIGF0IGxlYXN0IG9idmlvdXMpLCB0aGVuIGVycm9yIGhhbmRsaW5nIGNhbiBiZSBsaWdodGVy IHdlaWdodC0tCj4gV2UgbWF5IHJldHVybiBhbiBlcnJvciwgYnV0IGRvbid0IHJvbGwgYmFjayB0 aGUgZmFpbGVkIG9wZXJhdGlvbi4KPiBSaWdodD8KCkkgZG9uJ3QgdGhpbmsgc28sIGFuZCBJIGNh biBvbmx5IHJlLWl0ZXJhdGU6IFRoZXJlIGNhbid0IGJlIGFueSBlcnJvcgpoZXJlLCBzbyB0aGVy ZSdzIG5vIGVycm9yIGNvZGUgdG8gZm9yd2FyZCB1cCB0aGUgY2FsbCB0cmVlLiBJT1cgdGhlCiJw Z19tYWRkciA9PSAwIiBjYXNlIHNpbXBseSBtZWFucyAibm90aGluZyB0byBkbyIgaGVyZS4KCj4+ ID4gLXZvaWQgbWVfd2lmaV9xdWlyayhzdHJ1Y3QgZG9tYWluICpkb21haW4sIHU4IGJ1cywgdTgg ZGV2Zm4sIGludCBtYXApCj4+ID4gK2ludCBtZV93aWZpX3F1aXJrKHN0cnVjdCBkb21haW4gKmRv bWFpbiwgdTggYnVzLCB1OCBkZXZmbiwgaW50IG1hcCkKPj4gPiAgewo+PiA+ICAgICAgdTMyIGlk Owo+PiA+ICsgICAgaW50IHJjID0gMDsKPj4gPgo+PiA+ICAgICAgaWQgPSBwY2lfY29uZl9yZWFk MzIoMCwgMCwgMCwgMCwgMCk7Cj4+ID4gICAgICBpZiAoIElTX0NURyhpZCkgKQo+PiA+ICAgICAg ewo+PiA+ICAgICAgICAgIC8qIHF1aXQgaWYgTUUgZG9lcyBub3QgZXhpc3QgKi8KPj4gPiAgICAg ICAgICBpZiAoIHBjaV9jb25mX3JlYWQzMigwLCAwLCAzLCAwLCAwKSA9PSAweGZmZmZmZmZmICkK Pj4gPiAtICAgICAgICAgICAgcmV0dXJuOwo+PiA+ICsgICAgICAgICAgICByZXR1cm4gLUVOT0VO VDsKPj4gCj4+IElzIHRoaXMgcmVhbGx5IGFuIGVycm9yPyBJT1csIGRvIGFsbCBzeXN0ZW1zIHdo aWNoIHNhdGlzZnkgSVNfQ1RHKCkgaGF2ZSBzdWNoIGEKPj4gZGV2aWNlPwo+PiAKPiBUbyBiZSBo b25lc3QsIEkgZGlkbid0IGtub3cgbXVjaCBhYm91dCBtZV93aWZpX3F1aXJrLgoKSW4gc3VjaCBh IGNhc2UgLSBob3cgYWJvdXQgYXNraW5nIHRoZSBtYWludGFpbmVycywgd2hvIGFyZSB5b3VyCmNv bGxlYWd1ZXM/IEFuZCB0aGF0IG9mIGNvdXJzZSBhZnRlciBoYXZpbmcgbG9va2VkIGF0IHRoZSBo aXN0b3J5CmluIGFuIGF0dGVtcHQgdG8gZ2FpbiBzb21lIHVuZGVyc3RhbmRpbmcuCgo+IE5vdywg SU1PIEkgZG9uJ3QgbmVlZCB0byBkZWFsIHdpdGggbWVfd2lmaV9xdWlyaygpLgoKV2VsbCwgeW91 IGNsZWFybHkgY2FuJ3QgaWdub3JlIGl0LgoKSmFuCgpfX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fXwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBs aXN0cy54ZW4ub3JnCmh0dHA6Ly9saXN0cy54ZW4ub3JnL3hlbi1kZXZlbAo=