From mboxrd@z Thu Jan 1 00:00:00 1970 From: Artem Mygaiev Subject: Re: [RFC] Shared coprocessor framework Date: Tue, 1 Nov 2016 15:57:13 +0200 Message-ID: References: <8ffc5fdf-70b0-a1b6-1405-e9021a61df47@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: Andrii Anisov Cc: Oleks Tysh , Andrew Cooper , xen-devel@lists.xensource.com, embedded-pv-devel@lists.xenproject.org List-Id: xen-devel@lists.xenproject.org TGV0IG1lIGV4cGxhaW4gYSBiaXQgYmFja2dyb3VuZCBvZiB0aGlzIHdvcmsuCgpXZSBzZWUgZ3Jv d2luZyBhbW91bnQgb2YgdXNlIGNhc2VzIGZvciBkaWZmZXJlbnQgImNvLXByb2Nlc3NvcnMiIGxp a2UKIC0gR1BVcyAoaW5zaWRlIG9mIG1vc3QgbW9kZXJuIFNvQ3MpCiAtIGxvdy1wb3dlciBzaWRl IENQVSBjb3JlcyAobGlrZSBBUk0gQ29ydGV4IE0gb3IgUiBvbiBib2FyZCB3aXRoCkNvcnRleCBB IGNvcmVzIHRvIGhhbmRsZSBQTSBvciBvdGhlciB0YXNrcykKIC0gRFNQcyAoZm9yIGV4YW1wbGUs IFRJIEM2MDAwIGZhbWlseSBEU1AgY29yZSBpbnNpZGUgb2YgSmFjaW50byA2IFNvQykKIC0gRlBH QXMgKEFsdGVyYSBvciBYaWxpbnggU29DcyA9IEFSTStGUEdBKQoKVGhlc2UgY29yZXMgbW9zdCBv ZnRlbiB1c2VkIHN0YW5kYWxvbmUgZm9yIHNvbWUgc3BlY2lmaWMgZnVuY3Rpb24sIGJ1dApxdWl0 ZSBvZnRlbiB0aGVyZSBpcyBhIG5lZWQgdG8gInZpcnR1YWxpemUiIHN1Y2ggY28tcHJvY2Vzc29y IHRvZ2V0aGVyCndpdGggdGhlIG1haW4gQ1BVIGNvcmVzLiBGb3IgZXhhbXBsZSwgdGhleSBtYXkg YmUgdXNlZCBpbiBzb21lCnZpcnR1YWxpemVkIGhldGVyb2dlbmVvdXMgY29tcHV0aW5nIGVudmly b25tZW50IHNvIHRoZXJlIHNoYWxsIGJlIHNvbWUKc29ydCBvZiBhbiBpbmRlcGVuZGVudCAiY29u dGV4dCIgb2YgYSBjby1wcm9jZXNzb3IgYXNzb2NpYXRlZCB3aXRoIGEKVk0gd2hpY2ggaW50ZXJh Y3RzIHdpdGggaXQuIEluIHNvbWUgY2FzZXMsIGFkZHJlc3Npbmcgc2VjdXJpdHkgYW5kCnN0YWJp bGl0eSByZXF1aXJlbWVudHMsICJjb250ZXh0IiBtZWFucyBub3Qgb25seSAiZGF0YSIgYnV0IGFs c28KImNvZGUiIChmaXJtd2FyZSk7IGkuZS4gd2hlbiBWTXMgc3dpdGNoIG9uIG1haW4gQ1BVLCBi b3RoIGNvZGUgYW5kCmRhdGEgbWVtb3J5IHNoYWxsIHN3aXRjaCBvbiBjby1wcm9jZXNzb3IuCgpD b3VwbGUgZXhhbXBsZXMgd2hlbiBWTXMgcnVuIG9uIHNhbWUgU29DLCBib3RoIHdhbnQgdG8gdXNl IHNvbWUKY28tcHJvY2Vzc29yIGluIGRhdGEtaW50ZW5zZSB0YXNrcyB3aXRoIGRpZmZlcmVudCBk YXRhIHNldHMgYW5kIHdpdGgKZGlmZmVyZW50IGZpcm13YXJlIGltYWdlcyBhbmQgZW5zdXJlIGlz b2xhdGlvbiAobm8gZGF0YSBpcyBsZWFrZWQgb3IKY29kZSBjb3JydXB0ZWQgdGhyb3VnaCBjby1w cm9jZXNzb3IncyBtZW1vcnkgYWNjZXNzKSBhbmQgc3RhYmlsaXR5CihyZXN0YXJ0IG9mIG9uZSBz eXN0ZW0gZG9lcyBub3QgbGVhZCB0byBjcmFzaCBvZiBhbm90aGVyKToKMS4gdXNlIEdQVSBmb3Ig R0wgcmVuZGVyaW5nIGluIG9uZSBWTSwgYW5vdGhlciBmb3IgTk4gc3RhdGUgY29tcHV0aW5nCjIu IHVzZSBEU1AgZm9yIEhXLWFjY2VsZXJhdGVkIG1lZGlhIGRlY29kaW5nLCBhbm90aGVyIGZvciB2 aWRlbyBpbWFnZQpwcm9jZXNzaW5nIChvYmplY3QgcmVjb2duaXRpb24sIGV0Yy4pCgpXZSBhbHJl YWR5IHNlZSBhIG5lZWQgZm9yIGVuYWJsaW5nIHN1Y2ggY2FzZXMgaW4gRW1iZWRkZWQvQXV0b21v dGl2ZQpzcGFjZSAobW9zdGx5IGRvbWluYXRlZCBieSBBUk0gbm93KSwgYnV0IGFsc28gdGhpcyBt aWdodCBmaXQgZ2VuZXJpYwpjb21wdXRpbmcgaW4gaGV0ZXJvZ2VuZW91cyBlbnZpcm9ubWVudHMg LSBkaWZmZXJlbnQgY28tcHJvY2Vzc29ycyBhcmUKbm93IGRlcGxveWVkIGFsb25nc2lkZSBnZW5l cmljIENQVXMgaW4gc2VydmVyIGVudmlyb25tZW50cyAoR29vZ2xlIHVzZQpvd24gdGVuc29yIHBy b2Nlc3NvcnMgZm9yIE5OIGNvbXB1dGluZyBhY2NlbGVyYXRpb24sIE1pY3Jvc29mdCB1c2VkCkFs dGVyYSdzIEZQR0FzIGluIHByb2plY3QgQ2F0YXB1bHQsIHRoZXJlIGFyZSBkZXBsb3ltZW50cyBv ZiBHUFUKY29tcHV0aW5nIG5vZGVzIGluIHNvbWUgY2xvdWRzLCBldGMuKQoKSG9wZSB0aGF0IG1h a2VzIHNlbnNlCgpCZXN0IHJlZ2FyZHMsCkFydGVtIE15Z2FpZXYKCgpPbiBNb24sIE9jdCAzMSwg MjAxNiBhdCA5OjMxIFBNLCBBbmRyaWkgQW5pc292IDxhbmRyaWkuYW5pc292QGdtYWlsLmNvbT4g d3JvdGU6Cj4+IFRoYW5reW91IGZvciB0aGUgZGVzaWduIGRvYy4gIEFuIGltbWVkaWF0ZSArMSBm cm9tIG1lLCBzaW1wbHkgZm9yIHRoZQo+PiBkb2MgZXhpc3RpbmcgOikKPgo+IFRoYW5rIHlvdSBm b3IgeW91IGludGVyZXN0IGFuZCBjb21tZW50cy4KPgo+PiBGb3JnaXZlIG15IGlnbm9yYW5jZSAo SSBhbSBhbiB4ODYgcGVyc29uLCBhbmQgZ2l2ZW4gdGhlIENDIGxpc3QsIEkgZ3Vlc3MKPj4gdGhp cyBpcyB0YWxraW5nIGFib3V0IEFSTSBzeXN0ZW1zKSwgYnV0IHdoYXQgYXJlIGNvcHJvY2Vzc29y cyBhbmQgd2hhdAo+PiBtaWdodCBJIGRvIHdpdGggb25lPwo+Cj4gV2VsbCBjb3Byb2Nlc3NvciBj b3VsZCBiZSBhIHNvbWUgcHJvY2Vzc2luZyB1bml0IGluc2lkZSBhIFNvQyB3aGljaCBpcwo+IHJ1 bm5pbmcgc29tZSBmaXJtd2FyZSBhbmQgc3VwcGxlbWVudGluZyBwcmltYXJ5IHByb2Nlc3NvciBm dW5jdGlvbnMuCj4gRi5lLiBHUFUsIERTUCwgc29tZSBGUEdBIGluc2lkZSBhIFNvQy4KPiBUaGUg bGl2aW5nIGV4YW1wbGUgaXMgYSBHUFUgc2hhcmluZyBpbXBsZW1lbnRlZCBmb3IgdGhlIEFSTSBi YXNlZCBTb0MuCj4gQlRXLCB0aGUgeGVuZ3QgaW1wbGVtZW50cyBwcmV0dHkgY2xvc2UgYXBwcm9h Y2ggYW5kIGlzIGEgcHVyZSB4ODYKPiB3b3JsZCBzb2x1dGlvbi4KPgo+PiA+IEl0IGlzIHRhcmdl dGVkIGNhcGFiaWxpdHkgb2YgZGlmZmVyZW50IGRvbWFpbnMgdG8gcnVuIGNvbmN1cnJlbnRseSBk aWZmZXJlbnQKPj4gPiBmaXJtd2FyZSBvbiB0aGUgY29wcm9jLgo+PiBJIGNhbnQgcGFyc2UgdGhp cyBzZW50ZW5jZS4gIEkgcHJlc3VtZSB5b3UgbWVhbiB0aGF0IHRoZSBwdXJwb3NlIG9mIHRoaXMK Pj4gZnJhbWV3b3JrIGlzIHRvIHByb3ZpZGUgYSBtZWNoYW5pc20gZm9yIFhlbiB0byBzaGFyZSBh IGNvcHJvY2Vzc29ycwo+PiByZXNvdXJjZSBiZXR3ZWVuIG11bHRpcGxlIGRvbWFpbnM/Cj4KPiBN YXliZSBpdCBzaG91bGQgYmUgcmV3b3JkZWQuIEkgbWVhbiB0aGF0IGNvcHJvY2Vzc29ycyBhcmUg ZW50aXRpZXMKPiB3aGljaCBhcmUgcnVubmluZyBzb21lIGZpcm13YXJlIHRvIHBlcmZvcm0gdGhl aXIgdGFza3MuIFNvIGRpZmZlcmVudAo+IGRvbWFpbnMgaW4gdGhlaXIgdGltZSBzbGljZSBjb3Vs ZCBydW4gZGlmZmVyZW50IHZlcnNpb25zIG9mIGZpcm13YXJlCj4gb24gdGhlIHNhbWUgY29wcm9j ZXNzb3IuCj4gSXQgaXMgbWVudGlvbmVkIGhlcmUgdG8gc3RyZXNzIHRoYXQgZG9tYWlucyBjb250 ZXh0cyBhcmUgdG90YWxseQo+IGluZGVwZW5kZW50IChib3RoIGZvciBwcm9jZXNzZWQgZGF0YSBh bmQgZm9yIGZpcm13YXJlIGNvZGUpLgo+Cj4+IEdyYW1tYXIgbml0LiAgRWl0aGVyICJQcm92aWRl IGNvcHJvY2Vzc29yIHJlc291cmNlIHNoYXJpbmcgYmV0d2Vlbi4uLiIKPj4gb3IgIlByb3ZpZGUg c2hhcmluZyBvZiBjb3Byb2Nlc3NvciByZXNvdXJjZXMgYmV0d2Vlbi4uLiIKPgo+IFdpbGwgdGFr ZSAiUHJvdmlkZSBzaGFyaW5nIG9mIGNvcHJvY2Vzc29yIHJlc291cmNlcyBiZXR3ZWVuLi4uIi4K Pgo+Cj4+IERvZXMgaXQgbmVlZCB0byBvbmx5IGJlIGNvbmZpZ3VyYWJsZSBhdCBzeXN0ZW0gc3Rh cnR1cD8gIFRoZXJlIGlzIG9mdGVuCj4+IG1vcmUgZmxleGliaWxpdHkgYnkgaGF2aW5nIGEgZGVm YXVsdCBjb25maWd1cmF0aW9uIGF0IHN5c3RlbSBzdGFydCAoc28KPj4gZG9tMCBjYW4gdXNlIHRo ZSByZXNvdXJjZXMpLCB3aGljaCBjYW4gbGF0ZXIgYmUgYWx0ZXJlZCBieSB0b29sc3RhY2sgcG9s aWN5Lgo+Cj4gSSBkaWQgbWVhbiB0aGF0IGh5cGVydmlzb3IsIHdoYXQgc3RhcnRzIGZpcnN0LCBj aGVja3Mgd2hhdAo+IGNvcHJvY2Vzc29ycyB3aXRoaW4gdGhlIHN5c3RlbSB3b3VsZCBiZSBzaGFy ZWQsIG93biB0aGVtIGFuZCBwcm92aWRlCj4gdG8gYSBmcmFtZXdvcmsuIFByb3ZpZGluZyBzb21l IG9mIHRob3NlIHJlc291cmNlcyB0byBkb20wIHdvdWxkIG5vdCBhCj4gYmlnIGRlYWw6IGp1c3Qg YXNzaWduIGEgdmNvcHJvYyB0byB0aGUgZG9tYWluLiBBbmQgeWVzLCBpdCBjb3VsZCBiZSBhCj4g ZGVmYXVsdCBjb25maWd1cmF0aW9uLgo+Cj4+Cj4+IENvbnNpZGVyaW5nIHRoZSBsYXR0ZXIgb3B0 aW9uLCBldmVuIGlmIHlvdSBkb24ndCBpbXBsZW1lbnQgc3VwcG9ydCBhdAo+PiBmaXJzdCwgdGVu ZHMgdG8gbGVhZCB0byBhIGNsZWFuZXIgZGVzaWduLCBidXQgb2YgY291cnNlIGl0IGRvZXMgZGVw ZW5kCj4+IGhlYXZpbHkgb24gdGhlIGRldGFpbHMgb2YgdGhlIHNpdHVhdGlvbi4KPgo+IERlZmlu aXRlbHkgd2Ugd291bGQgdGFpbG9yIHRoZSBkZXNpZ24gYWxvbmcgd2l0aCBhbiBpbXBsZW1lbnRh dGlvbi4KPgo+PiA+ICogTU1VLWVuYWJsZWQgU29DIHdpdGggTU1VLXByb3RlY3RlZCBjb3Byb2Nl c3NvcihzKQo+PiBSaWdodCAtIGRlZmluaXRlbHkgQVJNIHRoZW4sIGJ1dCBpdCB0b29rIG1lIHVu dGlsIGhhbGYgd2F5IHRocm91Z2ggdGhlCj4+IGRvY3VtZW50IHRvIHdvcmsgdGhpcyBvdXQuCj4K PiBZb3Uga25vdywgaXQgd2FzIHNwZWNpZmllZCBBUk0gYmFzZWQgU29DIGhlcmUuIEF0IHNvbWUg cG9pbnQgaXQgd2FzCj4gcmVtb3ZlZCBzdWNoIGEgZGVwZW5kZW5jeS4gSW5zcGlyZWQgYnkgdGhl IGFscmVhZHkgbWVudGlvbmVkIHhlbmd0Lgo+Cj4+IEkgd291bGQgYmUgdGVtcHRlZCB0byBleHRl bmQgdGhpcyBzbGlnaHRseSwgYW5kIHNwZWNpZnkgdGhhdCB0aGVyZQo+PiBzaG91bGQgYmUgYSBt ZWNoYW5pc20gZm9yIHRoZSB0b29sc3RhY2sgdG8gcXVlcnkgYWxsIG9mIHRoaXMgaW5mb3JtYXRp b24KPj4gYXQgYXJiaXRyYXJ5IHBvaW50cyBpbiB0aW1lLgo+Cj4gSXQgc2hvdWxkIGJlIGNvdmVy ZWQgaGVyZToKPj4KPj4gPiBSdW50aW1lIGNvbmZpZ3VyYXRpb24gb2Ygc2NoZWR1bGluZyBhbGdv cml0aG0gcGVyIGluc3RhbmNlIG9mIHNoYXJlZAo+PiA+IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCj4+ID4gY29wcm9j ZXNzb3IKPj4gPiAtLS0tLS0tLS0tLQo+PiA+Cj4+ID4gVGhlcmUgd2lsbCBiZSBhIGluaXRpYWwg ZG9tYWluIHRvb2wgaW1wbGVtZW50ZWQgd2hpY2ggd2lsbCBwcm92aWRlIGEgQ0xJIGZvcgo+PiA+ IHJ1bnRpbWUgbW9uaXRvcmluZyBvZiBzaGFyZWQgY29wcm9jZXNzb3JzIGluc3RhbmNlcyBhdmFp bGFibGUsIHBlci1kb21haW4vCj4+ID4gcGVyLWNvcHJvYyBpbnN0YW5jZSBsaXN0IG9mIHZjb3By b2MgYW5kIHJ1bnRpbWUgc2V0dXAgb2YgdGhlIHNjaGVkdWxlciBwZXIKPj4gPiBlYWNoIGNvcHJv Y2Vzc29yIGluc3RhbmNlLgo+Cj4gTWF5YmUgaXQgbmVlZHMgc29tZSByZXdvcmRpbmcuCj4KPj4g RG8geW91IG1lYW4gdGhhdCwgaWRlYWxseSwgWGVuIGNhbiBmdWxseSBjb250ZXh0IHN3aXRjaCBh IGNvcHJvY2Vzc29yCj4+IGJlaGluZCB0aGUgYmFjayBvZiBkb21VLCBhbmQgdGhlIGRvbVUgZHJp dmVyIG5lZWQgbm90IGtub3cgb3IgY2FyZSBhYm91dAo+PiB0aGUgZGlmZmVyZW5jZT8KPiBZb3Un dmUgZ290IHRoZSBwb2ludC4KPgo+PiBBbmQsIHdoZXJlIHRoYXQgaXNuJ3QgcG9zc2libGUsIHNv bWUgdmlydHVhbCBob29rcyBjb3VsZCBiZSBpbnRyb2R1Y2VkCj4+IHRvIHRoZSBkb21VIGRyaXZl ciBzbyBkb21VIGNhbiBvcHQgaW50byBzaGFyaW5nIHdoZW4gaXQgaGFzIGEgY29tcGF0aWJsZQo+ PiBkcml2ZXI/Cj4gWWVzLCBkdWUgdG8gc3BlY2lmaWNzIG9mIFNvQyBpbXBsZW1lbnRhdGlvbiBw dXJlIHNvbHV0aW9uIGNvdWxkIGJlCj4gaW5lZmZpY2llbnQsIG5vdCBzZWN1cmUgb3IgZXZlbiBp bXBvc3NpYmxlLiBJbiB0aGlzIGNhc2UKPiBkcml2ZXJzL2Zpcm13YXJlIGNvdWxkIGJlIG1vZGlm aWVkIHRvIGNvb3BlcmF0ZSB3aXRoIGNvcHJvY2Vzc29yCj4gc2hhcmluZyBmcmFtZXdvcmsgaW4g WEVOLgo+IFRoaXMgcGFydCBjb3VsZCBiZSBhcmNoaXRlY3R1cmUgKGNvcHJvY2Vzc29yKSBzcGVj aWZpYywgb3IgbWFjaGluZQo+IChTb0MpIHNwZWNpZmljLgo+Cj4gU2luY2VyZWx5LAo+IEFuZHJp aSBBbmlzb3YuCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f XwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW4ub3JnCmh0dHBzOi8v bGlzdHMueGVuLm9yZy94ZW4tZGV2ZWwK