From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Xu, Quan" Subject: Re: [PATCH v4 01/10] vt-d: fix the IOMMU flush issue Date: Thu, 12 May 2016 13:29:04 +0000 Message-ID: <945CA011AD5F084CBEA3E851C0AB28894B8AD99D@SHSMSX101.ccr.corp.intel.com> References: <1462524880-67205-1-git-send-email-quan.xu@intel.com> <1462524880-67205-2-git-send-email-quan.xu@intel.com> <5730D27302000078000E9AB9@prv-mh.provo.novell.com> <945CA011AD5F084CBEA3E851C0AB28894B8AD4D2@SHSMSX101.ccr.corp.intel.com> <5734608E02000078000EAD2B@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: <5734608E02000078000EAD2B@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 , AndrewCooper , "dario.faggioli@citrix.com" , "xen-devel@lists.xen.org" , "Wu, Feng" List-Id: xen-devel@lists.xenproject.org T24gTWF5IDEyLCAyMDE2IDQ6NTMgUE0sIEphbiBCZXVsaWNoIDxKQmV1bGljaEBzdXNlLmNvbT4g d3JvdGU6Cj4gPj4+IE9uIDEyLjA1LjE2IGF0IDA5OjUwLCA8cXVhbi54dUBpbnRlbC5jb20+IHdy b3RlOgo+ID4gT24gTWF5IDEwLCAyMDE2IDEyOjEwIEFNLCBKYW4gQmV1bGljaCA8SkJldWxpY2hA c3VzZS5jb20+IHdyb3RlOgo+ID4+ID4+PiBPbiAwNi4wNS4xNiBhdCAxMDo1NCwgPHF1YW4ueHVA aW50ZWwuY29tPiB3cm90ZToKPiA+PiA+IC1zdGF0aWMgdm9pZCBpbnRlbF9pb21tdV9pb3RsYl9m bHVzaChzdHJ1Y3QgZG9tYWluICpkLCB1bnNpZ25lZAo+ID4+ID4gbG9uZyBnZm4sIHVuc2lnbmVk IGludCBwYWdlX2NvdW50KQo+ID4+ID4gK3N0YXRpYyB2b2lkIGlvbW11X2ZsdXNoX2lvdGxiX3Bh Z2Uoc3RydWN0IGRvbWFpbiAqZCwgdW5zaWduZWQgbG9uZwo+IGdmbiwKPiA+PiA+ICsgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCBwYWdlX2NvdW50KQo+ID4+ Cj4gPj4gVGhlIG5ldyBuYW1lIHN1Z2dlc3RzIGp1c3Qgb25lIHBhZ2UuIFBsZWFzZSB1c2UgZS5n Lgo+ID4+IGlvbW11X2ZsdXNoX2lvdGxiX3BhZ2VzKCkgaW5zdGVhZC4KPiA+Pgo+ID4KPiA+IE1h a2Ugc2Vuc2UuCj4gPgo+ID4+ID4gIHsKPiA+PiA+IC0gICAgX19pbnRlbF9pb21tdV9pb3RsYl9m bHVzaChkLCBnZm4sIDEsIHBhZ2VfY291bnQpOwo+ID4+ID4gKyAgICBpb21tdV9mbHVzaF9pb3Rs YihkLCBnZm4sIDEsIHBhZ2VfY291bnQpOwo+ID4+ID4gIH0KPiA+Pgo+ID4+IEJ1dCBvZiBjb3Vy c2UgdGhlIHF1ZXN0aW9uIGlzIHdoZXRoZXIgaGF2aW5nIHRoaXMgd3JhcHBlciBpcyB1c2VmdWwK PiA+PiBpbiB0aGUgZmlyc3QgcGxhY2UsCj4gPgo+ID4KPiA+IFRoaXMgd3JhcHBlciBhc3N1bWVz IHRoZSAnZG1hX29sZF9wdGVfcHJlc2VudCcgaXMgJzEnLCBidXQgaW4gYW5vdGhlcgo+ID4gY2Fs bGVyIGludGVsX2lvbW11X21hcF9wYWdlKCksIGkuZS4KPiA+Cj4gPgo+ID4gICAgICBpbnRlbF9p b21tdV9tYXBfcGFnZSgpCj4gPiAgICAgewo+ID4gICAgICAgIC4uLgo+ID4gICAgICAgICAgICAg IGlmICggIXRoaXNfY3B1KGlvbW11X2RvbnRfZmx1c2hfaW90bGIpICkKPiA+ICAgICAgICAgICAg ICAgICAgIGlvbW11X2ZsdXNoX2lvdGxiKGQsIGdmbiwgZG1hX3B0ZV9wcmVzZW50KG9sZCksIDEp Owo+ID4gICAgICAgIC4uLgo+ID4gICAgIH0KPiA+Cj4gPgo+ID4gdGhlICdkbWFfb2xkX3B0ZV9w cmVzZW50JyBpcyBub3Qgc3VyZS4KPiAKPiBJJ20gc29ycnksIGJ1dCB5b3UncmUgbG9va2luZyBh dCB0aGlzIGJhY2t3YXJkczogSSBzdWdnZXN0ZWQgdG8gcmVtb3ZlIHRoZQo+IHdyYXBwZXIsIG5v dCB0byBtb3ZlIGFueSBjaGVjayBpbnRvIGlvbW11X2ZsdXNoX2lvdGxiKCkuCj4gUmVtb3Zpbmcg dGhlIHdyYXBwZXIgc2ltcGx5IG1lYW5zIHRvIG1vdmUgdGhlIHBhc3Npbmcgb2YgdGhlIGhhcmQg Y29kZWQgMQo+IGludG8gdGhlIGN1cnJlbnQgY2FsbGVycyBvZiB0aGF0IHdyYXBwZXIuCj4gCgpB IGxpdHRsZSBiaXQgY29uZnVzZWQuCkNoZWNrIG9uZSB0aGluZywgZG8gdGhlIHdyYXBwZXJzIHJl ZmVyIHRvIGlvbW11X2ZsdXNoX2lvdGxiX3BhZ2UoKSBhbmQgaW9tbXVfZmx1c2hfaW90bGJfYWxs KCkgPwoKSWYgeWVzLCB3ZSBjYW4ndCBpZ25vcmUgYW5vdGhlciB0aGluZzoKClRoZXNlIHR3byB3 cmFwcGVycyBhcmUgYWxzbyBpbml0aWFsaXplZCBmb3IgMiAuY2FsbGJhY2tzIGF0IHRoZSBib3R0 b20gb2YgdGhpcyBmaWxlOgoKLi4uLgogICAgLmlvdGxiX2ZsdXNoID0gaW9tbXVfZmx1c2hfaW90 bGJfcGFnZXMsCiAgICAuaW90bGJfZmx1c2hfYWxsID0gaW9tbXVfZmx1c2hfaW90bGJfYWxsLAou Li4uCgoKCgo+ID4+ID4gQEAgLTEzOTEsMTMgKzEzOTksMTkgQEAgaW50IGRvbWFpbl9jb250ZXh0 X21hcHBpbmdfb25lKAo+ID4+ID4gICAgICBzcGluX3VubG9jaygmaW9tbXUtPmxvY2spOwo+ID4+ ID4KPiA+PiA+ICAgICAgLyogQ29udGV4dCBlbnRyeSB3YXMgcHJldmlvdXNseSBub24tcHJlc2Vu dCAod2l0aCBkb21pZCAwKS4gKi8KPiA+PiA+IC0gICAgaWYgKCBpb21tdV9mbHVzaF9jb250ZXh0 X2RldmljZShpb21tdSwgMCwgKCgodTE2KWJ1cykgPDwgOCkgfCBkZXZmbiwKPiA+PiA+IC0gICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBETUFfQ0NNRF9NQVNLX05PQklULCAxKSAp Cj4gPj4gPiAtICAgICAgICBpb21tdV9mbHVzaF93cml0ZV9idWZmZXIoaW9tbXUpOwo+ID4+ID4g LSAgICBlbHNlCj4gPj4gPiArICAgIHJjID0gaW9tbXVfZmx1c2hfY29udGV4dF9kZXZpY2UoaW9t bXUsIDAsICgoKHUxNilidXMpIDw8IDgpIHwKPiBkZXZmbiwKPiA+PiA+ICsgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBETUFfQ0NNRF9NQVNLX05PQklULCAxKTsKPiA+PiA+ICsK PiA+PiA+ICsgICAgaWYgKCAhcmMgKQo+ID4+ID4gICAgICB7Cj4gPj4gPiAgICAgICAgICBpbnQg Zmx1c2hfZGV2X2lvdGxiID0gZmluZF9hdHNfZGV2X2RyaGQoaW9tbXUpID8gMSA6IDA7Cj4gPj4g PiAtICAgICAgICBpb21tdV9mbHVzaF9pb3RsYl9kc2koaW9tbXUsIDAsIDEsIGZsdXNoX2Rldl9p b3RsYik7Cj4gPj4gPiArICAgICAgICByYyA9IGlvbW11X2ZsdXNoX2lvdGxiX2RzaShpb21tdSwg MCwgMSwgZmx1c2hfZGV2X2lvdGxiKTsKPiA+Pgo+ID4+IFBsZWFzZSB0YWtlIHRoZSBvcHBvcnR1 bml0eSBhbmQgYWRkIHRoZSBtaXNzaW5nIGJsYW5rIGxpbmUgKGJldHdlZW4KPiA+PiBkZWNsYXJh dGlvbihzKSBhbmQgc3RhdGVtZW50KHMpIGluIGNhc2VzIGxpa2UgdGhpcy4KPiA+Pgo+ID4+ID4g KyAgICB9Cj4gPj4gPiArCj4gPj4gPiArICAgIGlmICggcmMgPiAwICkKPiA+Pgo+ID4+IENhbiBp b21tdV9mbHVzaF9jb250ZXh0X2RldmljZSgpIHJldHVybiBhIHBvc2l0aXZlIHZhbHVlPyBJZiBz bywgdGhlCj4gPj4gbG9naWMgaXMgbm93IGxpa2VseSB3cm9uZy4gSWYgbm90ICh3aGljaCBpcyB3 aGF0IEkgYXNzdW1lKSBJJ2QgbGlrZQo+ID4+IHRvIHN1Z2dlc3QgYWRkaW5nIGEgcmVzcGVjdGl2 ZSBBU1NFUlQoKSAoZXZlbiBpZiBvbmx5IHRvIGRvY3VtZW50IHRoZQo+ID4+IGZhY3QpLiBPciBh bHRlcm5hdGl2ZWx5IHRoaXMKPiA+PiBpZigpIGNvdWxkIG1vdmUgaW50byB0aGUgaW1tZWRpYXRl bHkgcHJlY2VkaW5nIG9uZS4KPiA+Cj4gPiBDaGVjayBpdCBhZ2Fpbi4gaW9tbXVfZmx1c2hfY29u dGV4dF9kZXZpY2UoKSBjYW4gcmV0dXJuIGEgcG9zaXRpdmUgdmFsdWUuCj4gPiBbLi4uXQo+ID4g Q291bGQgeW91IHRlbGwgbWUgd2h5IHRoZSBsb2dpYyBpcyBub3cgbGlrZWx5IHdyb25nPyBJIHdp bGwgZml4IGl0IGZpcnN0Lgo+IAo+IFdpdGgKPiAKPiAgICAgcmMgPSBpb21tdV9mbHVzaF9jb250 ZXh0X2RldmljZShpb21tdSwgMCwgKCgodTE2KWJ1cykgPDwgOCkgfCBkZXZmbiwKPiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBETUFfQ0NNRF9NQVNLX05PQklULCAxKTsKPiAK PiAgICAgaWYgKCAhcmMgKQo+ICAgICB7Cj4gICAgICAgICBpbnQgZmx1c2hfZGV2X2lvdGxiID0g ZmluZF9hdHNfZGV2X2RyaGQoaW9tbXUpID8gMSA6IDA7Cj4gICAgICAgICByYyA9IGlvbW11X2Zs dXNoX2lvdGxiX2RzaShpb21tdSwgMCwgMSwgZmx1c2hfZGV2X2lvdGxiKTsKPiAgICAgfQo+IAo+ ICAgICBpZiAoIHJjID4gMCApCj4gICAgIHsKPiAgICAgICAgIGlvbW11X2ZsdXNoX3dyaXRlX2J1 ZmZlcihpb21tdSk7Cj4gICAgICAgICByYyA9IDA7Cj4gICAgIH0KPiAKPiBpdCBzZWVtcyBwcmV0 dHkgY2xlYXIgdGhhdCB5b3Ugd29uJ3QgY2FsbCBpb21tdV9mbHVzaF9pb3RsYl9kc2koKSBpZgo+ IGlvbW11X2ZsdXNoX2NvbnRleHRfZGV2aWNlKCkgcmV0dXJuZWQgMSwgd2hpY2ggZG9lc24ndCBs b29rIGxpa2Ugd2hhdCBpcwo+IHdhbnRlZCBhdCB0aGUgZmlyc3QgZ2xhbmNlLiBCdXQgSSBtYXkg YmUgd3JvbmcsIGhlbmNlIHRoZSAibGlrZWx5IiBpbiBteSBlYXJsaWVyCj4gcmVwbHkuCj4gCgpP aCwgdGhpcyB3YXMgb24gcHVycG9zZS4KCklmIGlvbW11X2ZsdXNoX2NvbnRleHRfZGV2aWNlKCkg cmV0dXJuZWQgMSwgIHRoZSBpb21tdV9mbHVzaF9pb3RsYl9kc2koKSByZXR1cm5lZCAxIHRvby4K QXMgYm90aCBmbHVzaF9jb250ZXh0X3FpKCkgYW5kICBmbHVzaF9pb3RsYl9xaSAoKSBhcmUgdGhl IHNhbWUgYXQgdGhlIGJlZ2lubmluZyBvZiB0aGUgIGZ1bmN0aW9ucy4KCk9uZSBjb25jZXJuIGlz IGlmIGlvbW11X2ZsdXNoX2NvbnRleHRfZGV2aWNlKCkgaXMgZmFpbGVkLCB0aGVuIHdlIHdvbid0 IGNhbGwgaW9tbXVfZmx1c2hfaW90bGJfZHNpKCksICB3aGljaCBpcyBub3QgYmVzdCBlZmZvcnQg dG8gZmx1c2guCgoKUXVhbgoKCgoKCgoKCgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX18KWGVuLWRldmVsIG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMu eGVuLm9yZwpodHRwOi8vbGlzdHMueGVuLm9yZy94ZW4tZGV2ZWwK