From mboxrd@z Thu Jan 1 00:00:00 1970 From: Paul Durrant Subject: Re: [PATCH v4 1/8] public / x86: Introduce __HYPERCALL_dm_op... Date: Fri, 20 Jan 2017 15:02:53 +0000 Message-ID: <2beab20fec434dd38ca636aed123c9f4@AMSPEX02CL03.citrite.net> References: <1484674196-19951-1-git-send-email-paul.durrant@citrix.com> <1484674196-19951-2-git-send-email-paul.durrant@citrix.com> <8453657b-fecf-6577-8f0a-4392a24191b4@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail6.bemta6.messagelabs.com ([193.109.254.103]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cUaiP-0001js-4W for xen-devel@lists.xenproject.org; Fri, 20 Jan 2017 15:02:57 +0000 In-Reply-To: <8453657b-fecf-6577-8f0a-4392a24191b4@citrix.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: Andrew Cooper , "xen-devel@lists.xenproject.org" Cc: Ian Jackson , Daniel De Graaf , Jennifer Herbert , Wei Liu , Jan Beulich List-Id: xen-devel@lists.xenproject.org PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQo+IEZyb206IEFuZHJldyBDb29wZXIKPiBTZW50 OiAyMCBKYW51YXJ5IDIwMTcgMTQ6MzUKPiBUbzogUGF1bCBEdXJyYW50IDxQYXVsLkR1cnJhbnRA Y2l0cml4LmNvbT47IHhlbi1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwo+IENjOiBJYW4gSmFj a3NvbiA8SWFuLkphY2tzb25AY2l0cml4LmNvbT47IEplbm5pZmVyIEhlcmJlcnQKPiA8amVubmlm ZXIuaGVyYmVydEBjaXRyaXguY29tPjsgRGFuaWVsIERlIEdyYWFmIDxkZ2RlZ3JhQHR5Y2hvLm5z YS5nb3Y+Owo+IFdlaSBMaXUgPHdlaS5saXUyQGNpdHJpeC5jb20+OyBKYW4gQmV1bGljaCA8amJl dWxpY2hAc3VzZS5jb20+Cj4gU3ViamVjdDogUmU6IFtQQVRDSCB2NCAxLzhdIHB1YmxpYyAvIHg4 NjogSW50cm9kdWNlIF9fSFlQRVJDQUxMX2RtX29wLi4uCj4gCj4gT24gMTcvMDEvMTcgMTc6Mjks IFBhdWwgRHVycmFudCB3cm90ZToKPiA+IC4uLmFzIGEgc2V0IG9mIGh5cGVyY2FsbHMgdG8gYmUg dXNlZCBieSBhIGRldmljZSBtb2RlbC4KPiA+Cj4gPiBBcyBzdGF0ZWQgaW4gdGhlIG5ldyBkb2Nz L2Rlc2lnbnMvZG1fb3AubWFya2Rvd246Cj4gPgo+ID4gIlRoZSBhaW0gb2YgRE1PUCBpcyB0byBw cmV2ZW50IGEgY29tcHJvbWlzZWQgZGV2aWNlIG1vZGVsIGZyb20KPiA+IGNvbXByb21pc2luZyBk b21haW5zIG90aGVyIHRoZW4gdGhlIG9uZSBpdCBpcyBhc3NvY2lhdGVkIHdpdGguIChBbmQgaXMK PiA+IHRoZXJlZm9yZSBsaWtlbHkgYWxyZWFkeSBjb21wcm9taXNlZCkuIgo+IAo+ICJhc3NvY2lh dGVkIHdpdGgiIGlzIGEgYml0IGFtYmlndW91cywgYXMgYSBkbSBydW5uaW5nIGluIGRvbTAgaXMK PiBhc3NvY2lhdGVkIHdpdGggZG9tMC4KPiAKPiBIb3cgYWJvdXQgIm90aGVyIHRoYW4gdGhlIG9u ZSBpdCBpcyBwcm92aWRpbmcgZW11bGF0aW9uIGZvci4iID8KPiAKClllcywgdGhhdCdzIGNsZWFy ZXIuCgo+ID4gK1RoZSBEZXNpZ24KPiA+ICstLS0tLS0tLS0tCj4gPiArCj4gPiArVGhlIHByaXZj bWQgZHJpdmVyIGltcGxlbWVudHMgYSBuZXcgcmVzdHJpY3Rpb24gaW9jdGwsIHdoaWNoIHRha2Vz IGEKPiBkb21pZAo+ID4gK3BhcmFtZXRlci4gIEFmdGVyIHRoYXQgcmVzdHJpY3Rpb24gaW9jdGwg aXMgaXNzdWVkLCB0aGUgcHJpdmNtZCBkcml2ZXIgd2lsbAo+ID4gK3Blcm1pdCBvbmx5IERNT1Ag aHlwZXJjYWxscywgYW5kIG9ubHkgd2l0aCB0aGUgc3BlY2lmaWVkIHRhcmdldCBkb21pZC4KPiAK PiBUaGUgcGxhbiAoaWlyYykgaXMgdG8gaW1wbGVtZW50IGRtb3AgdmlhIGEgbmV3IGlvY3RsKCkg b24gL2Rldi94ZW4vcHJpdmNtZAo+IAo+IEF0IHRoZSBwb2ludCB0aGF0IHJlc3RyaWN0KCkgaXMg Y2FsbGVkLCBhbGwgdW5hdWRpdGVkIG9wZXJhdGlvbnMgb24KPiAvZGV2L3hlbi9wcml2Y21kIHNo b3VsZCBjZWFzZSB0byBmdW5jdGlvbiwgaW5jbHVkaW5nIHJlZ3VsYXIgaHlwZXJjYWxscy4KPiAK ClRoYXQgbWFrZXMgc2Vuc2UsIGJ1dCBJIG1heSBub3QgaGF2ZSBiZWVuIGluIHRoZSBsb29wIGZv ciB0aGF0IGJpdCBvZiBwbGFubmluZy4gSSdsbCBjZXJ0YWlubHkgYWRkIHRoZSB0ZXh0IHRob3Vn aC4KCj4gPiBkaWZmIC0tZ2l0IGEveGVuL2FyY2gveDg2L2h2bS9kbS5jIGIveGVuL2FyY2gveDg2 L2h2bS9kbS5jCj4gPiBuZXcgZmlsZSBtb2RlIDEwMDY0NAo+ID4gaW5kZXggMDAwMDAwMC4uZjAw YmMyYwo+ID4gLS0tIC9kZXYvbnVsbAo+ID4gKysrIGIveGVuL2FyY2gveDg2L2h2bS9kbS5jCj4g PiBAQCAtMCwwICsxLDE0OSBAQAo+ID4gKy8qCj4gPiArICogQ29weXJpZ2h0IChjKSAyMDE2IENp dHJpeCBTeXN0ZW1zIEluYy4KPiA+ICsgKgo+ID4gKyAqIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNv ZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5IGl0Cj4gPiArICog dW5kZXIgdGhlIHRlcm1zIGFuZCBjb25kaXRpb25zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMg TGljZW5zZSwKPiA+ICsgKiB2ZXJzaW9uIDIsIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0 d2FyZSBGb3VuZGF0aW9uLgo+ID4gKyAqCj4gPiArICogVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1 dGVkIGluIHRoZSBob3BlIGl0IHdpbGwgYmUgdXNlZnVsLCBidXQgV0lUSE9VVAo+ID4gKyAqIEFO WSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCj4gTUVSQ0hB TlRBQklMSVRZIG9yCj4gPiArICogRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBT ZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYwo+IExpY2Vuc2UgZm9yCj4gPiArICogbW9yZSBkZXRh aWxzLgo+ID4gKyAqCj4gPiArICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0 aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKPiBhbG9uZyB3aXRoCj4gPiArICogdGhpcyBw cm9ncmFtOyBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCj4gPiAr ICovCj4gPiArCj4gPiArI2luY2x1ZGUgPHhlbi9ndWVzdF9hY2Nlc3MuaD4KPiA+ICsjaW5jbHVk ZSA8eGVuL2h5cGVyY2FsbC5oPgo+ID4gKyNpbmNsdWRlIDx4ZW4vc2NoZWQuaD4KPiA+ICsKPiA+ ICsjaW5jbHVkZSA8YXNtL2h2bS9pb3JlcS5oPgo+ID4gKwo+ID4gKyNpbmNsdWRlIDx4c20veHNt Lmg+Cj4gPiArCj4gPiArc3RhdGljIGJvb2wgY29weV9idWZfZnJvbV9ndWVzdCh4ZW5fZG1fb3Bf YnVmX3QgYnVmc1tdLAo+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWdu ZWQgaW50IG5yX2J1ZnMsIHZvaWQgKmRzdCwKPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHVuc2lnbmVkIGludCBpZHgsIHNpemVfdCBkc3Rfc2l6ZSkKPiA+ICt7Cj4gPiArICAg IHNpemVfdCBzaXplID0gbWluX3Qoc2l6ZV90LCBkc3Rfc2l6ZSwgYnVmc1tpZHhdLnNpemUpOwo+ ID4gKwo+ID4gKyAgICByZXR1cm4gIWNvcHlfZnJvbV9ndWVzdChkc3QsIGJ1ZnNbaWR4XS5oLCBz aXplKTsKPiA+ICt9Cj4gPiArCj4gPiArc3RhdGljIGJvb2wgY29weV9idWZfdG9fZ3Vlc3QoeGVu X2RtX29wX2J1Zl90IGJ1ZnNbXSwKPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1 bnNpZ25lZCBpbnQgbnJfYnVmcywgdW5zaWduZWQgaW50IGlkeCwKPiA+ICsgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICB2b2lkICpzcmMsIHNpemVfdCBzcmNfc2l6ZSkKPiA+ICt7Cj4gPiAr ICAgIHNpemVfdCBzaXplID0gbWluX3Qoc2l6ZV90LCBidWZzW2lkeF0uc2l6ZSwgc3JjX3NpemUp Owo+ID4gKwo+ID4gKyAgICByZXR1cm4gIWNvcHlfdG9fZ3Vlc3QoYnVmc1tpZHhdLmgsIHNyYywg c2l6ZSk7Cj4gPiArfQo+ID4gKwo+ID4gK3N0YXRpYyBpbnQgZG1fb3AoZG9taWRfdCBkb21pZCwK PiA+ICsgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCBucl9idWZzLAo+ID4gKyAgICAgICAg ICAgICAgICAgeGVuX2RtX29wX2J1Zl90IGJ1ZnNbXSkKPiA+ICt7Cj4gPiArICAgIHN0cnVjdCBk b21haW4gKmQ7Cj4gPiArICAgIHN0cnVjdCB4ZW5fZG1fb3Agb3A7Cj4gPiArICAgIGxvbmcgcmM7 Cj4gPiArCj4gPiArICAgIHJjID0gcmN1X2xvY2tfcmVtb3RlX2RvbWFpbl9ieV9pZChkb21pZCwg JmQpOwo+ID4gKyAgICBpZiAoIHJjICkKPiA+ICsgICAgICAgIHJldHVybiByYzsKPiA+ICsKPiA+ ICsgICAgaWYgKCAhaGFzX2h2bV9jb250YWluZXJfZG9tYWluKGQpICkKPiA+ICsgICAgICAgIGdv dG8gb3V0Owo+ID4gKwo+ID4gKyAgICByYyA9IHhzbV9kbV9vcChYU01fRE1fUFJJViwgZCk7Cj4g PiArICAgIGlmICggcmMgKQo+ID4gKyAgICAgICAgZ290byBvdXQ7Cj4gPiArCj4gPiArICAgIGlm ICggIWNvcHlfYnVmX2Zyb21fZ3Vlc3QoYnVmcywgbnJfYnVmcywgJm9wLCAwLCBzaXplb2Yob3Ap KSApCj4gPiArICAgIHsKPiA+ICsgICAgICAgIHJjID0gLUVGQVVMVDsKPiA+ICsgICAgICAgIGdv dG8gb3V0Owo+ID4gKyAgICB9Cj4gPiArCj4gPiArICAgIHN3aXRjaCAoIG9wLm9wICkKPiA+ICsg ICAgewo+ID4gKyAgICBkZWZhdWx0Ogo+ID4gKyAgICAgICAgcmMgPSAtRU9QTk9UU1VQUDsKPiA+ ICsgICAgICAgIGJyZWFrOwo+ID4gKyAgICB9Cj4gPiArCj4gPiArICAgIGlmICggIXJjICYmCj4g PiArICAgICAgICAgIWNvcHlfYnVmX3RvX2d1ZXN0KGJ1ZnMsIG5yX2J1ZnMsIDAsICZvcCwgc2l6 ZW9mKG9wKSkgKQo+IAo+IERvIGFsbCBvcHMgbmVlZCBhIGNvcHliYWNrPyAgSWYgdGhleSBkbywg dGhpcyBpcyBmaW5lLiAgSWYgbm90LCBpdCB3b3VsZAo+IGJlIGJldHRlciB0byBoYXZlIGEgY29w eWJhY2sgYm9vbGVhbiB3aGljaCBzdWJvcHMgc2V0IGFzIG5lY2Vzc2FyeS4KCkkgY2FuIHJlc3Ry aWN0IGNvcHktYmFjayB1c2luZyBhIGJvb2xlYW4gc2V0IGZvciBzdWItb3BzIHRoYXQgaGF2ZSAn b3V0JyBwYXJhbXMsIG9yIHdoZW4gdGhlcmUgbmVlZHMgdG8gYmUgYSBjb250aW51YXRpb24gYnV0 IEkgZGlkbid0IHJlYWxseSB0aGluayBpdCB3YXMgd29ydGggdGhlIGV4dHJhIGNvbXBsZXhpdHku Cgo+IAo+ID4gKyAgICAgICAgcmMgPSAtRUZBVUxUOwo+ID4gKwo+ID4gKyBvdXQ6Cj4gPiArICAg IHJjdV91bmxvY2tfZG9tYWluKGQpOwo+ID4gKwo+ID4gKyAgICByZXR1cm4gcmM7Cj4gPiArfQo+ ID4gKwo+ID4gK2ludCBjb21wYXRfZG1fb3AoZG9taWRfdCBkb21pZCwKPiA+ICsgICAgICAgICAg ICAgICAgIHVuc2lnbmVkIGludCBucl9idWZzLAo+ID4gKyAgICAgICAgICAgICAgICAgQ09NUEFU X0hBTkRMRV9QQVJBTShjb21wYXRfZG1fb3BfYnVmX3QpIGJ1ZnMpCj4gPiArewo+ID4gKyAgICBz dHJ1Y3QgeGVuX2RtX29wX2J1ZiAqbmF0Owo+ID4gKyAgICB1bnNpZ25lZCBpbnQgaTsKPiA+ICsg ICAgaW50IHJjID0gLUVGQVVMVDsKPiA+ICsKPiA+ICsgICAgbmF0ID0geHphbGxvY19hcnJheShz dHJ1Y3QgeGVuX2RtX29wX2J1ZiwgbnJfYnVmcyk7Cj4gPiArICAgIGlmICggIW5hdCApCj4gPiAr ICAgICAgICByZXR1cm4gLUVOT01FTTsKPiA+ICsKPiA+ICsgICAgZm9yICggaSA9IDA7IGkgPCBu cl9idWZzOyBpKysgKQo+ID4gKyAgICB7Cj4gPiArICAgICAgICBzdHJ1Y3QgY29tcGF0X2RtX29w X2J1ZiBjbXA7Cj4gPiArCj4gPiArICAgICAgICBpZiAoIGNvcHlfZnJvbV9jb21wYXRfb2Zmc2V0 KCZjbXAsIGJ1ZnMsIGksIDEpICkKPiA+ICsgICAgICAgICAgICBnb3RvIG91dDsKPiA+ICsKPiA+ ICsjZGVmaW5lIFhMQVRfZG1fb3BfYnVmX0hORExfaChfZF8sIF9zXykgXAo+ID4gKyAgICAgICAg Z3Vlc3RfZnJvbV9jb21wYXRfaGFuZGxlKChfZF8pLT5oLCAoX3NfKS0+aCkKPiA+ICsKPiA+ICsg ICAgICAgIFhMQVRfZG1fb3BfYnVmKCZuYXRbaV0sICZjbXApOwo+ID4gKwo+ID4gKyN1bmRlZiBY TEFUX2RtX29wX2J1Zl9ITkRMX2gKPiA+ICsgICAgfQo+ID4gKwo+ID4gKyAgICByYyA9IGRtX29w KGRvbWlkLCBucl9idWZzLCBuYXQpOwo+ID4gKwo+ID4gKyBvdXQ6Cj4gPiArICAgIHhmcmVlKG5h dCk7Cj4gPiArCj4gPiArICAgIHJldHVybiByYzsKPiA+ICt9Cj4gPiArCj4gPiArbG9uZyBkb19k bV9vcChkb21pZF90IGRvbWlkLAo+ID4gKyAgICAgICAgICAgICAgdW5zaWduZWQgaW50IG5yX2J1 ZnMsCj4gPiArICAgICAgICAgICAgICBYRU5fR1VFU1RfSEFORExFX1BBUkFNKHhlbl9kbV9vcF9i dWZfdCkgYnVmcykKPiA+ICt7Cj4gPiArICAgIHN0cnVjdCB4ZW5fZG1fb3BfYnVmICpuYXQ7Cj4g PiArICAgIGludCByYzsKPiA+ICsKPiA+ICsgICAgbmF0ID0geHphbGxvY19hcnJheShzdHJ1Y3Qg eGVuX2RtX29wX2J1ZiwgbnJfYnVmcyk7Cj4gPiArICAgIGlmICggIW5hdCApCj4gPiArICAgICAg ICByZXR1cm4gLUVOT01FTTsKPiAKPiBucl9idWZzIGlzIGEgZ3Vlc3QtcGFzc2VkIHZhbHVlIGF0 IHRoaXMgcG9pbnQsIGFuZCBuZWVkcyBhIGJvdW5kYXJ5IGNoZWNrLgo+IAo+IFRoZSBtYXhpbXVt IG51bWJlciBvZiBidWZzIG9uIGFsbCBpbXBsZW1lbnRlZCBvcHMgaXMgMiwgaXNuJ3QgaXQ/ICBJ J2QKPiBoYXZlIGEgZGVmaW5lIHNvbWV3aGVyZSwgYXVkaXQgYWdhaW5zdCB0aGUgZ2xvYmFsIG1h eCwgYW5kIHB1dCB0aGUgYXJyYXkKPiBvbiB0aGUgc3RhY2sgdG8gYXZvaWQgdGhlIG1lbW9yeSBh bGxvY2F0aW9uLgo+IAoKWWVzLCBJJ2xsIGRlZmluZSBtYXggdmFsdWUgYW5kIHB1dCBpdCBvbiB0 aGUgc3RhY2sgYXMgeW91IHN1Z2dlc3QuCgo+IE90aGVyd2lzZSwgTEdUTS4KCkNvb2wuIFRoYW5r cywKCiAgUGF1bAoKPiAKPiB+QW5kcmV3CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fXwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54 ZW4ub3JnCmh0dHBzOi8vbGlzdHMueGVuLm9yZy94ZW4tZGV2ZWwK