From mboxrd@z Thu Jan 1 00:00:00 1970 From: George Dunlap Subject: Re: Device model operation hypercall (DMOP, re qemu depriv) Date: Wed, 21 Sep 2016 12:28:54 +0100 Message-ID: References: <579A3A62.1020700@citrix.com> <22431.13158.46970.556765@mariner.uk.xensource.com> <57D2D23E.9010601@citrix.com> <57D6D889020000780010E195@prv-mh.provo.novell.com> <57D8244F.3070707@citrix.com> <57D939C4020000780010EB58@prv-mh.provo.novell.com> <22498.27970.77634.32169@mariner.uk.xensource.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 1bmfi0-000304-1r for xen-devel@lists.xenproject.org; Wed, 21 Sep 2016 11:29:00 +0000 In-Reply-To: <22498.27970.77634.32169@mariner.uk.xensource.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: Ian Jackson , Jan Beulich Cc: StefanoStabellini , Wei Liu , George Dunlap , Andrew Cooper , Jennifer Herbert , TimDeegan , David Vrabel , Anthony Perard , xen-devel , dgdegra@tycho.nsa.gov List-Id: xen-devel@lists.xenproject.org T24gMjEvMDkvMTYgMTI6MjEsIElhbiBKYWNrc29uIHdyb3RlOgo+IEphbiBCZXVsaWNoIHdyaXRl cyAoIlJlOiBbWGVuLWRldmVsXSBEZXZpY2UgbW9kZWwgb3BlcmF0aW9uIGh5cGVyY2FsbCAoRE1P UCwgcmUgcWVtdSBkZXByaXYpIik6Cj4+IE9uIDEzLjA5LjE2IGF0IDE4OjA3LCA8ZGF2aWQudnJh YmVsQGNpdHJpeC5jb20+IHdyb3RlOgo+Pj4gVGhpcyBpcyBhbiBkaXJlY3QgcmVzdWx0IG9mIHRo ZSByZXF1aXJlbWVudCB0aGF0IHRoZSBwcml2Y21kIGRyaXZlciBkb2VzCj4+PiBub3Qga25vdyB0 aGUgdHlwZXMgb2YgdGhlIHN1Yi1vcHMgdGhlbXNlbHZlcy4gIFdlIGNhbid0IGhhdmUgdGhpcwo+ Pj4gcmVxdWlyZW1lbnQgYW5kIHR5cGUgc2FmZXR5LiAgV2hpY2ggZG8gd2Ugd2FudD8KPj4KPj4g Qm90aCwgd2hpY2ggdGhlIHByb3Bvc2FsIHV0aWxpemluZyBzaWRlIGJhbmQgaW5mb3JtYXRpb24g b24gVkEKPj4gcmFuZ2VzIGFsbG93cyBmb3IuIChBbmQgaW4gYW55IGV2ZW50IHRoaXMgdG8gbWUg Y2xlYXJseSBpcyBhbgo+PiBhc3BlY3QgdGhhdCB3b3VsZCBuZWVkIHRvIGJlIG1lbnRpb25lZCBp biB0aGUgZGlzYWR2YW50YWdlcwo+PiBzZWN0aW9uIG9mIHRoZSBkb2N1bWVudC4pCj4gCj4gVGhl IHNpZGUgYmFuZCBpbmZvcm1hdGlvbiBhcHByb2FjaCBoYXMgdGhlIHByb2JsZW0gdGhhdCBpdCBp cyBlYXN5IHRvCj4gYWNjaWRlbnRhbGx5IHdyaXRlIGh5cGVydmlzb3IgY29kZSB3aGljaCBtaXNz ZXMgdGhlCj4gYWRkaXRpb25hbGx5LXJlcXVpcmVkIHJhbmdlIGNoZWNrLgo+IAo+IEl0IG1pZ2h0 IGJlIHBvc3NpYmxlIHRvIHByb3ZpZGUgYm90aCBzdHJpY3QgdHlwZSBzYWZldHkgb2YgdGhlIGtp bmQKPiB5b3UncmUgY29uY2VybmVkIGFib3V0IGhlcmUsIF9hbmRfIHByb3RlY3Rpb24gYWdhaW5z dCBtaXNzaW5nIGFjY2Vzcwo+IGNoZWNrcywgYnV0IGl0J3Mgbm90IHZlcnkgc3RyYWlnaHRmb3J3 YXJkLgo+IAo+IE9uZSBhcHByb2FjaCB0byBkbyB0aGF0IHdvdWxkIGJlIHRvIGF1Z21lbnQgdGhl IGd1ZXN0IGhhbmRsZSBhcnJheQo+IHByb3Bvc2FsIHdpdGggYSB0eXBlc2FmZSBtYWNybyBzeXN0 ZW0gZm9yIGFjY2Vzc2luZyB0aGUgZ3Vlc3QgaGFuZGxlCj4gc2xvdHMuCj4gCj4gQnV0IEkgdGhp bmsgR2VvcmdlIGhhcyBhIGdvb2QgYXJndW1lbnQgYXMgdG8gd2h5IHRoaXMgaXMgbm90IG5lZWRl ZDoKPiAKPiAgIElmIG1vc3Qgb2YgdGhlIHRpbWUgdGhlIGh5cGVyY2FsbHMgYXJlIG1hZGUgYnkg Y2FsbGluZyBsaWJ4YyBmdW5jdGlvbnMsCj4gICBhbmQgdGhlIGxpYnhjIGZ1bmN0aW9ucyBoYXZl IHR5cGVzIGFzIGFyZ3VtZW50cywgdGhlbiB0aGUgZW5kIGNhbGxlciBoYXMKPiAgIHRoZSBzYW1l IHR5cGUgc2FmZXR5LiAgV2UnbGwgaGF2ZSB0byBiZSBjYXJlZnVsIGluc2lkZSB0aGUgaW5kaXZp ZHVhbAo+ICAgbGlieGMgZnVuY3Rpb25zLCBidXQgdGhhdCBzaG91bGQgYmUgZmFpcmx5IHN0cmFp Z2h0Zm9yd2FyZCB0byBkby4gIFNvCj4gICB0aGUgcGxhY2VzIHdoZXJlIHdlIG5lZWQgdG8gdGFr ZSBleHRyYSBjYXJlIHNob3VsZCBiZSB2ZXJ5IGxvY2FsaXplZC4KPiAKPiBXZSBkbyBub3QgZXhw ZWN0IERNT1AgY2FsbGVycyB0byBtYWtlIHRoZSBoeXBlcmNhbGxzIGRpcmVjdGx5LiAgKFRoZXkK PiBjYW4ndCBzZW5zaWJseSBkbyBzbyBiZWNhdXNlIHRoZSBETU9QIEFCSSBpcyBub3Qgc3RhYmxl IC0gdGhleSBuZWVkCj4gdGhlIGFzc2lzdGFuY2Ugb2YgdGhlIHN0YWJpbGl0eSBsYXllciB3aGlj aCB3ZSBpbnRlbmQgdG8gcHJvdmlkZSBpbgo+IGxpYnhjLikKPiAKPiBTbyB0aGUgYWN0dWFsIGh5 cGVyY2FsbCBjYWxsIHNpdGVzIGFyZSBhbGwgaW4tdHJlZSwgaW4gbGlieGMuICBJZiB0aGUKPiBm b3JtYXQgb2YgdGhlIHN0cnVjdCB1c2VkIGZvciBvbmUgb2YgdGhlc2UgZ3Vlc3QgaGFuZGxlIHNs b3RzIGNoYW5nZXMsCj4gdGhlIHNhbWUgc3RydWN0IGRlZmluaXRpb24gZnJvbSB0aGUgWGVuIGhl YWRlcnMgaXMgdXNlZCBib3RoIGluIHRoZQo+IGh5cGVydmlzb3IgYW5kIGluIGxpYnhjLCBhbmQg YW55IGluY29tcGF0aWJpbGl0eSB3aWxsIGJlIGRldGVjdGVkLgo+IAo+IEl0J3MgdHJ1ZSB0aGF0 IGNoYW5nZXMgdG8gdGhlIHNlbWFudGljcyBvZiB0aGVzZSBzbG90cyAoZm9yIGV4YW1wbGUsIGEK PiBjaGFuZ2Ugb2YgYSBzbG90IGZyb20gImFycmF5IG9mIHN0cnVjdCBYIiB0byAib25lIHN0cnVj dCBZIikgd2lsbCBub3QKPiBiZSBkZXRlY3RlZCBieSB0aGUgY29tcGlsZXIuCj4gCj4gQnV0ICph bGwqIEFCSSBjaGFuZ2VzIHRvIHRoZSBETU9QIGludGVyZmFjZSBuZWVkIHRvIGJlIGFjY29tcGFu aWVkIGJ5Cj4gY2hhbmdlcyB0byBsaWJ4YyB0byBhZGQgY29tcGF0aWJpbGl0eSBjb2RlLiAgSSB0 aGluayBpdCB3aWxsIGJlIGZhaXJseQo+IHN0cmFpZ2h0Zm9yd2FyZCB0byBjaGVjaywgZHVyaW5n IHJldmlldywgdGhhdCBlYWNoIERNT1AgY2hhbmdlIGNvbWVzCj4gd2l0aCBhIGNvcnJlc3BvbmRp bmcgbGlieGMgY2hhbmdlLgo+IAo+IAo+IEJ1dCBpZiB5b3UgZG8gbm90IGFncmVlLCB0aGVuIGhv dyBhYm91dCBoaWRpbmcgdGhlIHNsb3RzIHdpdGggYSBtYWNybwo+IHNldHVwID8gIFNvbWV0aGlu ZyBsaWtlOgo+IAo+ICAgICBzdHJ1Y3QgZGV2aWNlX21vZGVsX29wIHsKPiAgICAgICAgICB1aW50 MzJfdCBvcDsKPiAgICAgICAgICB1bmlvbiB7Cj4gICAgICAgICAgICAgICBzdHJ1Y3Qgb3BfZm9v IGZvbzsKPiAgICAgICAgICAgICAgIHN0cnVjdCBvcF9iYXIgYmFyOwo+ICAgICAgICAgICAgICAg LyogZXRjLi4uICovCj4gICAgICAgICAgfSB1Owo+ICAgICB9Owo+IAo+ICAgICBzdHJ1Y3Qgb3Bf Zm9vIHsKPiAgICAgICAgc29tZSBzdHVmZjsKPiAgICAgI2RlZmluZSBETU9QX0dVRVNUSEFORExF U19mb28oTyxPTkUsTUFOWSkgXAo+ICAgICAgICBPTkUoTywgIHN0cnVjdCBvcF9mb29fYmlnX2Js b2NrLCAgICAgICAgICAgYmlnX2Jsb2NrKSBcCj4gICAgICAgIE1BTlkoTywgc3RydWN0IG9wX2Zv b19kYXRhX2FycmF5X2VsZW1lbnQsICBkYXRhX2FycmF5KQo+ICAgICB9Owo+ICAgICBETU9QX0RF RklORShmb28pCj4gCj4gCj4gU3VwcG9ydGVkIChwcmVjZWRlZCBieSkgc29tZXRoaW5nIGxpa2Ug dGhpcyAobWFueSB0b290aHBpY2tzIGVsaWRlZAo+IGZvciBjbGFyaXR5IGFuZCBlYXNlIG9mIGVk aXRpbmcpOgo+IAo+ICAgICAvKiBkbW9wIHR5cGVzYWZlIHNsb3QgbWFjaGluZXJ5OiAqLwo+IAo+ ICAgICAjZGVmaW5lIERNT1BfREVGSU5FKG9wbmFtZSkgXAo+ICAgICAgICAgZW51bSB7Cj4gICAg ICAgICAgICAgRE1PUF9HVUVTVEhBTkRMRVNfIyNvcG5hbWUoRE1PUF9fU0xPVF9JTkRFWCxETU9Q X19TTE9UX0lOREVYKQo+ICAgICAgICAgfTsKPiAgICAgICAgIERNT1BfR1VFU1RIQU5ETEVTXyMj b3BuYW1lKERNT1BfX0FDQ0VTU09SU19PTkUsRE1PUF9fQUNDRVNTT1JTX01BTlkpCj4gCj4gICAg ICNkZWZpbmUgRE1PUF9fU0xPVF9JTkRFWChPLFQsTikgRE1PUF9fU0xPVF9JTkRFWF9fIyNPIyNf IyNOLAo+IAo+ICAgICAjZGVmaW5lIERNT1BfX0FDQ0VTU09SU19PTkUoTyxULE4pIFwKPiAgICAg ICAgIHN0YXRpYyBpbmxpbmUgaW50IGNvcHlfZG1fYnVmZmVyX2Zyb21fZ3Vlc3RfIyNPIyNfIyNO KAo+ICAgICAgICAgICAgIFQgKmRzdCwKPiAgICAgICAgICAgICBjb25zdCBzdHJ1Y3QgZGV2aWNl X21vZGVsX29wICpkbW9wIC8qIGFjY2Vzc2VzIFtucl9dYnVmZmVycyAqLykKPiAgICAgICAgIHsK PiAgICAgICAgICAgICByZXR1cm4gY29weV9kbV9idWZmZXJfZnJvbV9ndWVzdF9fcmF3Cj4gICAg ICAgICAgICAgICAgICgodm9pZCopZHN0LCBzaXplb2YoKmRzdCksIGRtb3AsCj4gICAgICAgICAg ICAgICAgICBETU9QX19TTE9UX0lOREVYX18jI08jI18jI04pOwo+ICAgICAgICAgfQo+ICAgICAg ICAgbGlrZXdpc2UgY29weV8uLi50bwo+IAo+ICAgICAjZGVmaW5lIERNT1BfX0FDQ0VTU09SU19N QU5ZKE8sVCxOKSBcCj4gICAgICAgICBzdGF0aWMgaW5saW5lIHNpemVfdCBnZXRfZG1fYnVmZmVy X2FycmF5X3NpemVfIyNPIyNfIyNOIC4uLiB7Cj4gICAgICAgICAgICAgY2FsY3VsYXRpb24gZGl2 aWRlcyBidWZmZXIgc2l6ZSBieSB0eXBlIHNpemU7Cj4gICAgICAgICB9Cj4gICAgICAgICBzdGF0 aWMgaW5saW5lIGxvbmcgY29weV9kbV9idWZmZXJfZnJvbV9ndWVzdF8jI08jI18jI04oCj4gICAg ICAgICAgICAgVCAqZHN0LCBzaXplX3QgbnJfZHN0LAo+ICAgICAgICAgICAgIGNvbnN0IHN0cnVj dCBkZXZpY2VfbW9kZWxfb3AgKmRtb3AgLyogYWNjZXNzZXMgW25yX11idWZmZXJzICovKQo+ICAg ICAgICAgewo+IAo+IAo+IFBlcnNvbmFsbHkgSSBkb24ndCB0aGluayB0aGlzIGlzIHdvcnRoIHRo ZSBlZmZvcnQuICBCdXQgaWYgeW91IGRvIEkKPiB3b3VsZCBiZSBoYXBweSB0byB0dXJuIHRoaXMg aW50byBzb21ldGhpbmcgd2hpY2ggYWN0dWFsbHkgY29tcGlsZXMKPiA6LSkuCj4gCj4gVGhhbmtz IGZvciB5b3VyIGF0dGVudGlvbi4KCkkgdGhpbmsgdGhlIG90aGVyIHNsaWdodCBiaXQgb2YgaW5m b3JtYXRpb24gbWlzc2luZyBmcm9tIEphbiBhdCBsZWFzdAooYW5kIHBlcmhhcHMgYWxzbyBEYXZp ZCkgaXMgdGhlIGRpZmZlcmVuY2UgYmV0d2VlbiB0aGVpciBwcmVmZXJlbmNlIC8KcmVjb21tZW5k YXRpb24gYW5kIHRoZWlyIHJlcXVpcmVtZW50LgoKVGhhdCBpcywgaWYgRGF2aWQgYW5kIEphbiBl YWNoIHN0cm9uZ2x5IHJlY29tbWVuZCB0aGVpciBvd24gcHJlZmVycmVkCm1ldGhvZCwgYnV0IGFy ZSB3aWxsaW5nIHRvIChwZXJoYXBzIGdydWRpbmdseSkgZ2l2ZSBBY2sncyB0byBhbgppbXBsZW1l bnRhdG9uIG9mIHRoZSBvdGhlcidzIG1ldGhvZCwgdGhlbiBpdCdzIHJlYWxseSBkb3duIHRvIHRo ZSBvbmUKZG9pbmcgdGhlIGltcGxlbWVudGF0aW9uIHRvIHJlYWQgdGhlIGFkdmljZSBhbmQgbWFr ZSB0aGVpciBvd24gZGVjaXNpb24KYXMgYmVzdCB0aGV5IGNhbi4KCklmIHNvbWVvbmUgZmVlbHMg c3Ryb25nbHkgZW5vdWdoIHRvIE5hY2sgdGhlIG90aGVyIHZlcnNpb24sIHBsZWFzZSBzYXkKc28g bm93OyBvdGhlcndpc2UsIEkgdGhpbmsgSWFuIChzaW5jZSBpdCBzZWVtcyBsaWtlIGhlJ2xsIGJl IHRoZSBvbmUKaW1wbGVtZW50aW5nIGl0KSBzaG91bGQgbWFrZSBoaXMgYmVzdCBqdWRnZW1lbnQg YmFzZWQgb24gdGhlIGFyZ3VtZW50cwphdmFpbGFibGUgYW5kIGJlZ2luIGltcGxlbWVudGF0aW9u LgoKIC1HZW9yZ2UKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fClhlbi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhlbi5vcmcKaHR0cHM6 Ly9saXN0cy54ZW4ub3JnL3hlbi1kZXZlbAo=