From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ian Jackson Subject: Re: Device model operation hypercall (DMOP, re qemu depriv) Date: Wed, 21 Sep 2016 12:21:38 +0100 Message-ID: <22498.27970.77634.32169@mariner.uk.xensource.com> 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> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail6.bemta3.messagelabs.com ([195.245.230.39]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bmfb3-0002RE-Oj for xen-devel@lists.xenproject.org; Wed, 21 Sep 2016 11:21:49 +0000 In-Reply-To: <57D939C4020000780010EB58@prv-mh.provo.novell.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: 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 SmFuIEJldWxpY2ggd3JpdGVzICgiUmU6IFtYZW4tZGV2ZWxdIERldmljZSBtb2RlbCBvcGVyYXRp b24gaHlwZXJjYWxsIChETU9QLCByZSBxZW11IGRlcHJpdikiKToKPiBPbiAxMy4wOS4xNiBhdCAx ODowNywgPGRhdmlkLnZyYWJlbEBjaXRyaXguY29tPiB3cm90ZToKPiA+IFRoaXMgaXMgYW4gZGly ZWN0IHJlc3VsdCBvZiB0aGUgcmVxdWlyZW1lbnQgdGhhdCB0aGUgcHJpdmNtZCBkcml2ZXIgZG9l cwo+ID4gbm90IGtub3cgdGhlIHR5cGVzIG9mIHRoZSBzdWItb3BzIHRoZW1zZWx2ZXMuICBXZSBj YW4ndCBoYXZlIHRoaXMKPiA+IHJlcXVpcmVtZW50IGFuZCB0eXBlIHNhZmV0eS4gIFdoaWNoIGRv IHdlIHdhbnQ/Cj4gCj4gQm90aCwgd2hpY2ggdGhlIHByb3Bvc2FsIHV0aWxpemluZyBzaWRlIGJh bmQgaW5mb3JtYXRpb24gb24gVkEKPiByYW5nZXMgYWxsb3dzIGZvci4gKEFuZCBpbiBhbnkgZXZl bnQgdGhpcyB0byBtZSBjbGVhcmx5IGlzIGFuCj4gYXNwZWN0IHRoYXQgd291bGQgbmVlZCB0byBi ZSBtZW50aW9uZWQgaW4gdGhlIGRpc2FkdmFudGFnZXMKPiBzZWN0aW9uIG9mIHRoZSBkb2N1bWVu dC4pCgpUaGUgc2lkZSBiYW5kIGluZm9ybWF0aW9uIGFwcHJvYWNoIGhhcyB0aGUgcHJvYmxlbSB0 aGF0IGl0IGlzIGVhc3kgdG8KYWNjaWRlbnRhbGx5IHdyaXRlIGh5cGVydmlzb3IgY29kZSB3aGlj aCBtaXNzZXMgdGhlCmFkZGl0aW9uYWxseS1yZXF1aXJlZCByYW5nZSBjaGVjay4KCkl0IG1pZ2h0 IGJlIHBvc3NpYmxlIHRvIHByb3ZpZGUgYm90aCBzdHJpY3QgdHlwZSBzYWZldHkgb2YgdGhlIGtp bmQKeW91J3JlIGNvbmNlcm5lZCBhYm91dCBoZXJlLCBfYW5kXyBwcm90ZWN0aW9uIGFnYWluc3Qg bWlzc2luZyBhY2Nlc3MKY2hlY2tzLCBidXQgaXQncyBub3QgdmVyeSBzdHJhaWdodGZvcndhcmQu CgpPbmUgYXBwcm9hY2ggdG8gZG8gdGhhdCB3b3VsZCBiZSB0byBhdWdtZW50IHRoZSBndWVzdCBo YW5kbGUgYXJyYXkKcHJvcG9zYWwgd2l0aCBhIHR5cGVzYWZlIG1hY3JvIHN5c3RlbSBmb3IgYWNj ZXNzaW5nIHRoZSBndWVzdCBoYW5kbGUKc2xvdHMuCgpCdXQgSSB0aGluayBHZW9yZ2UgaGFzIGEg Z29vZCBhcmd1bWVudCBhcyB0byB3aHkgdGhpcyBpcyBub3QgbmVlZGVkOgoKICBJZiBtb3N0IG9m IHRoZSB0aW1lIHRoZSBoeXBlcmNhbGxzIGFyZSBtYWRlIGJ5IGNhbGxpbmcgbGlieGMgZnVuY3Rp b25zLAogIGFuZCB0aGUgbGlieGMgZnVuY3Rpb25zIGhhdmUgdHlwZXMgYXMgYXJndW1lbnRzLCB0 aGVuIHRoZSBlbmQgY2FsbGVyIGhhcwogIHRoZSBzYW1lIHR5cGUgc2FmZXR5LiAgV2UnbGwgaGF2 ZSB0byBiZSBjYXJlZnVsIGluc2lkZSB0aGUgaW5kaXZpZHVhbAogIGxpYnhjIGZ1bmN0aW9ucywg YnV0IHRoYXQgc2hvdWxkIGJlIGZhaXJseSBzdHJhaWdodGZvcndhcmQgdG8gZG8uICBTbwogIHRo ZSBwbGFjZXMgd2hlcmUgd2UgbmVlZCB0byB0YWtlIGV4dHJhIGNhcmUgc2hvdWxkIGJlIHZlcnkg bG9jYWxpemVkLgoKV2UgZG8gbm90IGV4cGVjdCBETU9QIGNhbGxlcnMgdG8gbWFrZSB0aGUgaHlw ZXJjYWxscyBkaXJlY3RseS4gIChUaGV5CmNhbid0IHNlbnNpYmx5IGRvIHNvIGJlY2F1c2UgdGhl IERNT1AgQUJJIGlzIG5vdCBzdGFibGUgLSB0aGV5IG5lZWQKdGhlIGFzc2lzdGFuY2Ugb2YgdGhl IHN0YWJpbGl0eSBsYXllciB3aGljaCB3ZSBpbnRlbmQgdG8gcHJvdmlkZSBpbgpsaWJ4Yy4pCgpT byB0aGUgYWN0dWFsIGh5cGVyY2FsbCBjYWxsIHNpdGVzIGFyZSBhbGwgaW4tdHJlZSwgaW4gbGli eGMuICBJZiB0aGUKZm9ybWF0IG9mIHRoZSBzdHJ1Y3QgdXNlZCBmb3Igb25lIG9mIHRoZXNlIGd1 ZXN0IGhhbmRsZSBzbG90cyBjaGFuZ2VzLAp0aGUgc2FtZSBzdHJ1Y3QgZGVmaW5pdGlvbiBmcm9t IHRoZSBYZW4gaGVhZGVycyBpcyB1c2VkIGJvdGggaW4gdGhlCmh5cGVydmlzb3IgYW5kIGluIGxp YnhjLCBhbmQgYW55IGluY29tcGF0aWJpbGl0eSB3aWxsIGJlIGRldGVjdGVkLgoKSXQncyB0cnVl IHRoYXQgY2hhbmdlcyB0byB0aGUgc2VtYW50aWNzIG9mIHRoZXNlIHNsb3RzIChmb3IgZXhhbXBs ZSwgYQpjaGFuZ2Ugb2YgYSBzbG90IGZyb20gImFycmF5IG9mIHN0cnVjdCBYIiB0byAib25lIHN0 cnVjdCBZIikgd2lsbCBub3QKYmUgZGV0ZWN0ZWQgYnkgdGhlIGNvbXBpbGVyLgoKQnV0ICphbGwq IEFCSSBjaGFuZ2VzIHRvIHRoZSBETU9QIGludGVyZmFjZSBuZWVkIHRvIGJlIGFjY29tcGFuaWVk IGJ5CmNoYW5nZXMgdG8gbGlieGMgdG8gYWRkIGNvbXBhdGliaWxpdHkgY29kZS4gIEkgdGhpbmsg aXQgd2lsbCBiZSBmYWlybHkKc3RyYWlnaHRmb3J3YXJkIHRvIGNoZWNrLCBkdXJpbmcgcmV2aWV3 LCB0aGF0IGVhY2ggRE1PUCBjaGFuZ2UgY29tZXMKd2l0aCBhIGNvcnJlc3BvbmRpbmcgbGlieGMg Y2hhbmdlLgoKCkJ1dCBpZiB5b3UgZG8gbm90IGFncmVlLCB0aGVuIGhvdyBhYm91dCBoaWRpbmcg dGhlIHNsb3RzIHdpdGggYSBtYWNybwpzZXR1cCA/ICBTb21ldGhpbmcgbGlrZToKCiAgICBzdHJ1 Y3QgZGV2aWNlX21vZGVsX29wIHsKICAgICAgICAgdWludDMyX3Qgb3A7CiAgICAgICAgIHVuaW9u IHsKICAgICAgICAgICAgICBzdHJ1Y3Qgb3BfZm9vIGZvbzsKICAgICAgICAgICAgICBzdHJ1Y3Qg b3BfYmFyIGJhcjsKICAgICAgICAgICAgICAvKiBldGMuLi4gKi8KICAgICAgICAgfSB1OwogICAg fTsKCiAgICBzdHJ1Y3Qgb3BfZm9vIHsKICAgICAgIHNvbWUgc3R1ZmY7CiAgICAjZGVmaW5lIERN T1BfR1VFU1RIQU5ETEVTX2ZvbyhPLE9ORSxNQU5ZKSBcCiAgICAgICBPTkUoTywgIHN0cnVjdCBv cF9mb29fYmlnX2Jsb2NrLCAgICAgICAgICAgYmlnX2Jsb2NrKSBcCiAgICAgICBNQU5ZKE8sIHN0 cnVjdCBvcF9mb29fZGF0YV9hcnJheV9lbGVtZW50LCAgZGF0YV9hcnJheSkKICAgIH07CiAgICBE TU9QX0RFRklORShmb28pCgoKU3VwcG9ydGVkIChwcmVjZWRlZCBieSkgc29tZXRoaW5nIGxpa2Ug dGhpcyAobWFueSB0b290aHBpY2tzIGVsaWRlZApmb3IgY2xhcml0eSBhbmQgZWFzZSBvZiBlZGl0 aW5nKToKCiAgICAvKiBkbW9wIHR5cGVzYWZlIHNsb3QgbWFjaGluZXJ5OiAqLwoKICAgICNkZWZp bmUgRE1PUF9ERUZJTkUob3BuYW1lKSBcCiAgICAgICAgZW51bSB7CiAgICAgICAgICAgIERNT1Bf R1VFU1RIQU5ETEVTXyMjb3BuYW1lKERNT1BfX1NMT1RfSU5ERVgsRE1PUF9fU0xPVF9JTkRFWCkK ICAgICAgICB9OwogICAgICAgIERNT1BfR1VFU1RIQU5ETEVTXyMjb3BuYW1lKERNT1BfX0FDQ0VT U09SU19PTkUsRE1PUF9fQUNDRVNTT1JTX01BTlkpCgogICAgI2RlZmluZSBETU9QX19TTE9UX0lO REVYKE8sVCxOKSBETU9QX19TTE9UX0lOREVYX18jI08jI18jI04sCgogICAgI2RlZmluZSBETU9Q X19BQ0NFU1NPUlNfT05FKE8sVCxOKSBcCiAgICAgICAgc3RhdGljIGlubGluZSBpbnQgY29weV9k bV9idWZmZXJfZnJvbV9ndWVzdF8jI08jI18jI04oCiAgICAgICAgICAgIFQgKmRzdCwKICAgICAg ICAgICAgY29uc3Qgc3RydWN0IGRldmljZV9tb2RlbF9vcCAqZG1vcCAvKiBhY2Nlc3NlcyBbbnJf XWJ1ZmZlcnMgKi8pCiAgICAgICAgewogICAgICAgICAgICByZXR1cm4gY29weV9kbV9idWZmZXJf ZnJvbV9ndWVzdF9fcmF3CiAgICAgICAgICAgICAgICAoKHZvaWQqKWRzdCwgc2l6ZW9mKCpkc3Qp LCBkbW9wLAogICAgICAgICAgICAgICAgIERNT1BfX1NMT1RfSU5ERVhfXyMjTyMjXyMjTik7CiAg ICAgICAgfQogICAgICAgIGxpa2V3aXNlIGNvcHlfLi4udG8KCiAgICAjZGVmaW5lIERNT1BfX0FD Q0VTU09SU19NQU5ZKE8sVCxOKSBcCiAgICAgICAgc3RhdGljIGlubGluZSBzaXplX3QgZ2V0X2Rt X2J1ZmZlcl9hcnJheV9zaXplXyMjTyMjXyMjTiAuLi4gewogICAgICAgICAgICBjYWxjdWxhdGlv biBkaXZpZGVzIGJ1ZmZlciBzaXplIGJ5IHR5cGUgc2l6ZTsKICAgICAgICB9CiAgICAgICAgc3Rh dGljIGlubGluZSBsb25nIGNvcHlfZG1fYnVmZmVyX2Zyb21fZ3Vlc3RfIyNPIyNfIyNOKAogICAg ICAgICAgICBUICpkc3QsIHNpemVfdCBucl9kc3QsCiAgICAgICAgICAgIGNvbnN0IHN0cnVjdCBk ZXZpY2VfbW9kZWxfb3AgKmRtb3AgLyogYWNjZXNzZXMgW25yX11idWZmZXJzICovKQogICAgICAg IHsKCgpQZXJzb25hbGx5IEkgZG9uJ3QgdGhpbmsgdGhpcyBpcyB3b3J0aCB0aGUgZWZmb3J0LiAg QnV0IGlmIHlvdSBkbyBJCndvdWxkIGJlIGhhcHB5IHRvIHR1cm4gdGhpcyBpbnRvIHNvbWV0aGlu ZyB3aGljaCBhY3R1YWxseSBjb21waWxlcwo6LSkuCgpUaGFua3MgZm9yIHlvdXIgYXR0ZW50aW9u LgoKSWFuLgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18K WGVuLWRldmVsIG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVuLm9yZwpodHRwczovL2xp c3RzLnhlbi5vcmcveGVuLWRldmVsCg==