From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Jan Beulich" Subject: Re: [PATCH v9 2/3] VT-d: wrap a _sync version for all VT-d flush interfaces Date: Tue, 05 Apr 2016 03:35:08 -0600 Message-ID: <5703A2EC02000078000E3151@prv-mh.provo.novell.com> References: <1459522059-102365-1-git-send-email-quan.xu@intel.com> <1459522059-102365-3-git-send-email-quan.xu@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1459522059-102365-3-git-send-email-quan.xu@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: dario.faggioli@citrix.com, feng.wu@intel.com, kevin.tian@intel.com, xen-devel@lists.xen.org List-Id: xen-devel@lists.xenproject.org Pj4+IE9uIDAxLjA0LjE2IGF0IDE2OjQ3LCA8cXVhbi54dUBpbnRlbC5jb20+IHdyb3RlOgo+IFRo ZSBkZXZfaW52YWxpZGF0ZV9pb3RsYigpIHNjYW5zIGF0c19kZXZpY2VzIGxpc3QgdG8gZmx1c2gg QVRTIGRldmljZXMsCj4gYW5kIHRoZSBpbnZhbGlkYXRlX3N5bmMoKSBpcyBwdXQgYWZ0ZXIgZGV2 X2ludmFsaWRhdGVfaW90bGIoKSB0bwo+IHN5bmNocm9uaXplIHdpdGggaGFyZHdhcmUgZm9yIGZs dXNoIHN0YXR1cy4gSWYgd2UgYXNzaWduIG11bHRpcGxlCj4gQVRTIGRldmljZXMgdG8gYSBkb21h aW4sIHRoZSBmbHVzaCBzdGF0dXMgaXMgYWJvdXQgYWxsIHRoZXNlIG11bHRpcGxlCj4gQVRTIGRl dmljZXMuIE9uY2UgZmx1c2ggdGltZW91dCBleHBpcmVzLCB3ZSBjb3VsZG4ndCBmaW5kIG91dCB3 aGljaAo+IG9uZSBpcyB0aGUgYnVnZ3kgQVRTIGRldmljZS4KCklzIHRoYXQgdHJ1ZT8gT3IgaXMg dGhhdCBqdXN0IGEgbGltaXRhdGlvbiBvZiBvdXIgaW1wbGVtZW50YXRpb24/Cgo+IFRoZW4sIFRo ZSBpbnZhbGlkYXRlX3N5bmMoKSB2YXJpYW50IChXZSBuZWVkIHRvIHBhc3MgZG93biB0aGUgZGV2 aWNlJ3MKPiBTQkRGIHRvIGhpZGUgdGhlIEFUUyBkZXZpY2UpIGlzIHB1dCB3aXRoaW4gZGV2X2lu dmFsaWRhdGVfaW90bGIoKSB0bwo+IHN5bmNocm9uaXplIGZvciB0aGUgZmx1c2ggc3RhdHVzIG9u ZSBieSBvbmUuCgpJIGRvbid0IHRoaW5rIHRoaXMgaXMgc3RhdGluZyBjdXJyZW50IHN0YXRlIG9m IHRoaW5ncy4gU28gLi4uCgo+IElmIGZsdXNoIHRpbWVvdXQgZXhwaXJlcywKPiB3ZSBjb3VsZCBm aW5kIG91dCB0aGUgYnVnZ3kgQVRTIGRldmljZSBhbmQgaGlkZSBpdC4gSG93ZXZlciwgZm9yIG90 aGVyCj4gVlQtZCBmbHVzaCBpbnRlcmZhY2VzLCB0aGUgaW52YWxpZGF0ZV9zeW5jKCkgaXMgc3Rp bGwgcHV0IGFmdGVyIGF0IHByZXNlbnQuCj4gVGhpcyBpcyBpbmNvbnNpc3RlbnQuCgouLi4gdGFr ZW4gdG9nZXRoZXIsIHdoYXQgaXMgaW5jb25zaXN0ZW50IGhlcmUgbmVlZHMgdG8gYmUKZGVzY3Jp YmVkIGJldHRlciwgYXMgd2VsbCBhcyB3aGF0IGl0IGlzIHlvdSBkbyB0byBlbGltaW5hdGUgdGhl CmluY29uc2lzdGVuY3kuIE5vdGUgdGhhdCB5b3Ugc2hvdWxkIG5vdCByZWZlciBiYWNrIChvciBp bXBseQprbm93bGVkZ2Ugb2YpIHRoZSBwcmV2aW91cyBkaXNjdXNzaW9uIG9uIHRoZSBlYXJsaWVy IHZlcnNpb24uCkluIGFueSBvZiB0aGF0IGRpc2N1c3Npb24gaXMgdXNlZnVsIGhlcmUsIHlvdSBu ZWVkIHRvIHN1bW1hcml6ZQppdCBpbnN0ZWFkLgoKPiAtLS0gYS94ZW4vZHJpdmVycy9wYXNzdGhy b3VnaC92dGQvZXh0ZXJuLmgKPiArKysgYi94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC92dGQvZXh0 ZXJuLmgKPiBAQCAtNjEsNiArNjEsOCBAQCBpbnQgZGV2X2ludmFsaWRhdGVfaW90bGIoc3RydWN0 IGlvbW11ICppb21tdSwgdTE2IGRpZCwKPiAgCj4gIGludCBxaW52YWxfZGV2aWNlX2lvdGxiKHN0 cnVjdCBpb21tdSAqaW9tbXUsCj4gICAgICAgICAgICAgICAgICAgICAgICAgIHUzMiBtYXhfaW52 c19wZW5kLCB1MTYgc2lkLCB1MTYgc2l6ZSwgdTY0IGFkZHIpOwo+ICtpbnQgcWludmFsX2Rldmlj ZV9pb3RsYl9zeW5jKHN0cnVjdCBpb21tdSAqaW9tbXUsIHUzMiBtYXhfaW52c19wZW5kLAo+ICsg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHUxNiBzaWQsIHUxNiBzaXplLCB1NjQgYWRkcik7 CgpTbyBhcmUgdGhlbiBib3RoIGZ1bmN0aW9ucyBuZWVkZWQgdG8gYmUgZXh0ZXJuYWxseSBhY2Nl c3NpYmxlPwpUaGF0IHdvdWxkIHNlZW0gY29udHJhcnkgdG8gdGhlIGxhc3QgcGFyYWdyYXBoIG9m IHRoZSBwYXRjaApkZXNjcmlwdGlvbi4KCj4gLS0tIGEveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gv dnRkL3FpbnZhbC5jCj4gKysrIGIveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvdnRkL3FpbnZhbC5j Cj4gQEAgLTMzLDYgKzMzLDEwIEBAIGludGVnZXJfcGFyYW0oInZ0ZF9xaV90aW1lb3V0IiwgdnRk X3FpX3RpbWVvdXQpOwo+ICAKPiAgI2RlZmluZSBJT01NVV9RSV9USU1FT1VUICh2dGRfcWlfdGlt ZW91dCAqIE1JTExJU0VDUygxKSkKPiAgCj4gK3N0YXRpYyBpbnQgX19tdXN0X2NoZWNrIHF1ZXVl X2ludmFsaWRhdGVfd2FpdChzdHJ1Y3QgaW9tbXUgKmlvbW11LAo+ICsgICAgdTggaWZsYWcsIHU4 IHN3LCB1OCBmbik7CgpJbmRlbnRhdGlvbi4KCj4gQEAgLTEwMiw2ICsxMDYsMTUgQEAgc3RhdGlj IHZvaWQgcXVldWVfaW52YWxpZGF0ZV9jb250ZXh0KHN0cnVjdCBpb21tdSAqaW9tbXUsCj4gICAg ICB1bm1hcF92dGRfZG9tYWluX3BhZ2UocWludmFsX2VudHJpZXMpOwo+ICB9Cj4gIAo+ICtzdGF0 aWMgaW50IHF1ZXVlX2ludmFsaWRhdGVfY29udGV4dF9zeW5jKHN0cnVjdCBpb21tdSAqaW9tbXUs CgpfX211c3RfY2hlY2s/Cgo+ICsgICAgdTE2IGRpZCwgdTE2IHNvdXJjZV9pZCwgdTggZnVuY3Rp b25fbWFzaywgdTggZ3JhbnUpCgpJbmRlbnRhdGlvbiBhZ2Fpbi4KCj4gK3sKPiArICAgIHF1ZXVl X2ludmFsaWRhdGVfY29udGV4dChpb21tdSwgZGlkLCBzb3VyY2VfaWQsCj4gKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgZnVuY3Rpb25fbWFzaywgZ3JhbnUpOwo+ICsKPiArICAgIHJldHVy biBpbnZhbGlkYXRlX3N5bmMoaW9tbXUpOwo+ICt9CgpGdXJ0aGVyIGRvd24geW91IHJlcGxhY2Ug dGhlIG9ubHkgY2FsbCB0bwpxdWV1ZV9pbnZhbGlkYXRlX2NvbnRleHQoKSAtIHdoeSBrZWVwIGJv dGggZnVuY3Rpb25zIGluc3RlYWQgb2YKanVzdCBtYWtpbmcgdGhlIGV4aXN0aW5nIG9uZSBkbyB0 aGUgc3luYz8gKFRoYXQgd291bGQgdGhlIGxpa2VseQphbHNvIGFwcGx5IHRvIHFpbnZhbF9kZXZp Y2VfaW90bGIoKSBhbmQgb3RoZXJzIGJlbG93LikKCj4gQEAgLTMzOCwyMyArMzY1LDI0IEBAIHN0 YXRpYyBpbnQgZmx1c2hfaW90bGJfcWkoCj4gIAo+ICAgICAgaWYgKCBxaV9jdHJsLT5xaW52YWxf bWFkZHIgIT0gMCApCj4gICAgICB7Cj4gLSAgICAgICAgaW50IHJjOwo+IC0KPiAgICAgICAgICAv KiB1c2UgcXVldWVkIGludmFsaWRhdGlvbiAqLwo+ICAgICAgICAgIGlmIChjYXBfd3JpdGVfZHJh aW4oaW9tbXUtPmNhcCkpCj4gICAgICAgICAgICAgIGR3ID0gMTsKPiAgICAgICAgICBpZiAoY2Fw X3JlYWRfZHJhaW4oaW9tbXUtPmNhcCkpCj4gICAgICAgICAgICAgIGRyID0gMTsKPiAgICAgICAg ICAvKiBOZWVkIHRvIGNvbnNpZGUgdGhlIGloIGJpdCBsYXRlciAqLwo+IC0gICAgICAgIHF1ZXVl X2ludmFsaWRhdGVfaW90bGIoaW9tbXUsCj4gLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICB0eXBlID4+IERNQV9UTEJfRkxVU0hfR1JBTlVfT0ZGU0VULCBkciwKPiAtICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIGR3LCBkaWQsIHNpemVfb3JkZXIsIDAsIGFkZHIpOwo+ICsgICAg ICAgIHJldCA9IHF1ZXVlX2ludmFsaWRhdGVfaW90bGJfc3luYyhpb21tdSwKPiArICAgICAgICAg ICAgICAgICAgdHlwZSA+PiBETUFfVExCX0ZMVVNIX0dSQU5VX09GRlNFVCwgZHIsIGR3LCBkaWQs Cj4gKyAgICAgICAgICAgICAgICAgIHNpemVfb3JkZXIsIDAsIGFkZHIpOwo+ICsKPiArICAgICAg ICAvKiBUT0RPOiBUaW1lb3V0IGVycm9yIGhhbmRsaW5nIHRvIGJlIGFkZGVkIGxhdGVyICovCgpB cyBvZiB0b2RheSBxdWV1ZV9pbnZhbGlkYXRlX3dhaXQoKSBwYW5pY3MsIHNvIHRoaXMgY29tbWVu dCBpcwpub3QgdmVyeSBoZWxwZnVsIGFzIHRoZXJlIGlzIG5vdCB0aW1lb3V0IHRoYXQgY291bGQg cG9zc2libHkgYmUKZGV0ZWN0ZWQgaGVyZS4KCj4gKyAgICAgICAgaWYgKCByZXQgKQo+ICsgICAg ICAgICAgICByZXR1cm4gcmV0Owo+ICsKPiAgICAgICAgICBpZiAoIGZsdXNoX2Rldl9pb3RsYiAp Cj4gICAgICAgICAgICAgIHJldCA9IGRldl9pbnZhbGlkYXRlX2lvdGxiKGlvbW11LCBkaWQsIGFk ZHIsIHNpemVfb3JkZXIsIHR5cGUpOwo+IC0gICAgICAgIHJjID0gaW52YWxpZGF0ZV9zeW5jKGlv bW11KTsKPiAtICAgICAgICBpZiAoICFyZXQgKQo+IC0gICAgICAgICAgICByZXQgPSByYzsKPiAg ICAgIH0KCkkgdGhpbmsgbGVhdmluZyB0aGUgZXhpc3RpbmcgbG9naWMgYXMgaXMgd291bGQgYmUg YmV0dGVyIC0gYmVzdCBlZmZvcnQKaW52YWxpZGF0aW9uIGV2ZW4gd2hlbiBhbiBlcnJvciBoYXMg b2NjdXJyZWQuCgo+IC0tLSBhL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL3Z0ZC94ODYvYXRzLmMK PiArKysgYi94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC92dGQveDg2L2F0cy5jCj4gQEAgLTExOCw3 ICsxMTgsNiBAQCBpbnQgZGV2X2ludmFsaWRhdGVfaW90bGIoc3RydWN0IGlvbW11ICppb21tdSwg dTE2IGRpZCwKPiAgICAgIHsKPiAgICAgICAgICB1MTYgc2lkID0gUENJX0JERjIocGRldi0+YnVz LCBwZGV2LT5kZXZmbik7Cj4gICAgICAgICAgYm9vbF90IHNiaXQ7Cj4gLSAgICAgICAgaW50IHJj ID0gMDsKPiAgCj4gICAgICAgICAgLyogT25seSBpbnZhbGlkYXRlIGRldmljZXMgdGhhdCBiZWxv bmcgdG8gdGhpcyBJT01NVSAqLwo+ICAgICAgICAgIGlmICggcGRldi0+aW9tbXUgIT0gaW9tbXUg KQo+IEBAIC0xMzQsOCArMTMzLDggQEAgaW50IGRldl9pbnZhbGlkYXRlX2lvdGxiKHN0cnVjdCBp b21tdSAqaW9tbXUsIHUxNiBkaWQsCj4gICAgICAgICAgICAgIC8qIGludmFsaWRhdGUgYWxsIHRy YW5zbGF0aW9uczogc2JpdD0xLGJpdF82Mz0wLGJpdFs2MjoxMl09MSAqLwo+ICAgICAgICAgICAg ICBzYml0ID0gMTsKPiAgICAgICAgICAgICAgYWRkciA9ICh+MFVMIDw8IFBBR0VfU0hJRlRfNEsp ICYgMHg3RkZGRkZGRkZGRkZGRkZGOwo+IC0gICAgICAgICAgICByYyA9IHFpbnZhbF9kZXZpY2Vf aW90bGIoaW9tbXUsIHBkZXYtPmF0c19xdWV1ZV9kZXB0aCwKPiAtICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHNpZCwgc2JpdCwgYWRkcik7Cj4gKyAgICAgICAgICAgIHJldCA9 IHFpbnZhbF9kZXZpY2VfaW90bGJfc3luYyhpb21tdSwgcGRldi0+YXRzX3F1ZXVlX2RlcHRoLAo+ ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2lkLCBzYml0LCBh ZGRyKTsKPiAgICAgICAgICAgICAgYnJlYWs7Cj4gICAgICAgICAgY2FzZSBETUFfVExCX1BTSV9G TFVTSDoKPiAgICAgICAgICAgICAgaWYgKCAhZGV2aWNlX2luX2RvbWFpbihpb21tdSwgcGRldiwg ZGlkKSApCj4gQEAgLTE1NCwxNiArMTUzLDEzIEBAIGludCBkZXZfaW52YWxpZGF0ZV9pb3RsYihz dHJ1Y3QgaW9tbXUgKmlvbW11LCB1MTYgZGlkLAo+ICAgICAgICAgICAgICAgICAgYWRkciB8PSAo KCh1NjQpMSA8PCAoc2l6ZV9vcmRlciAtIDEpKSAtIDEpIDw8IFBBR0VfU0hJRlRfNEs7Cj4gICAg ICAgICAgICAgIH0KPiAgCj4gLSAgICAgICAgICAgIHJjID0gcWludmFsX2RldmljZV9pb3RsYihp b21tdSwgcGRldi0+YXRzX3F1ZXVlX2RlcHRoLAo+IC0gICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgc2lkLCBzYml0LCBhZGRyKTsKPiArICAgICAgICAgICAgcmV0ID0gcWludmFs X2RldmljZV9pb3RsYl9zeW5jKGlvbW11LCBwZGV2LT5hdHNfcXVldWVfZGVwdGgsCj4gKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaWQsIHNiaXQsIGFkZHIpOwo+ ICAgICAgICAgICAgICBicmVhazsKPiAgICAgICAgICBkZWZhdWx0Ogo+ICAgICAgICAgICAgICBk cHJpbnRrKFhFTkxPR19XQVJOSU5HIFZURFBSRUZJWCwgImludmFsaWQgdnQtZCBmbHVzaCB0eXBl XG4iKTsKPiAgICAgICAgICAgICAgcmV0dXJuIC1FT1BOT1RTVVBQOwo+ICAgICAgICAgIH0KPiAt Cj4gLSAgICAgICAgaWYgKCAhcmV0ICkKPiAtICAgICAgICAgICAgcmV0ID0gcmM7Cj4gICAgICB9 CgpUaGUgcmVtb3ZhbCBvZiAicmMiICh3aGljaCBidHcgaXMgdW5yZWxhdGVkIHRvIHRoZSBwdXJw b3NlIG9mIHlvdXIKcGF0Y2gpIG1lYW5zIHRoYXQgaWYgYW4gZWFybGllciBpdGVyYXRpb24gZW5j b3VudGVyaW5nIGFuIGVycm9yIGlzCmZvbGxvd2VkIGJ5IGxhdGVyIHN1Y2Nlc3NmdWwgb25lcywg bm8gZXJyb3Igd291bGQgZ2V0IHJlcG9ydGVkIHRvCnRoZSBjYWxsZXIuIEhlbmNlIHRoaXMgcGFy dCBvZiB0aGUgY2hhbmdlIG5lZWRzIHRvIGJlIHVuZG9uZS4KCkphbgoKX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KWGVuLWRldmVsIG1haWxpbmcgbGlzdApY ZW4tZGV2ZWxAbGlzdHMueGVuLm9yZwpodHRwOi8vbGlzdHMueGVuLm9yZy94ZW4tZGV2ZWwK