From mboxrd@z Thu Jan 1 00:00:00 1970 From: Julien Grall Subject: Re: [PATCH v2 05/13] optee: add fast calls handling Date: Wed, 5 Sep 2018 14:36:42 +0100 Message-ID: <667e115f-9fda-3b02-5397-cab0d780cf3e@arm.com> References: <1535993677-20816-1-git-send-email-volodymyr_babchuk@epam.com> <1535993677-20816-6-git-send-email-volodymyr_babchuk@epam.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1535993677-20816-6-git-send-email-volodymyr_babchuk@epam.com> Content-Language: en-US List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" To: Volodymyr Babchuk , xen-devel@lists.xenproject.org, xen-devel@lists.xen.org Cc: Stefano Stabellini List-Id: xen-devel@lists.xenproject.org SGkgVm9sb2R5bXlyLAoKT24gMDkvMDMvMjAxOCAwNTo1NCBQTSwgVm9sb2R5bXlyIEJhYmNodWsg d3JvdGU6Cj4gU29tZSBmYXN0IFNNQ0NDIGNhbGxzIHRvIE9QLVRFRSBzaG91bGQgYmUgaGFuZGxl ZCBpbiBhIHNwZWNpYWwgd2F5Lgo+IENhcGFiaWxpdGllcyBleGNoYW5nZSBzaG91bGQgYmUgZmls dGVyZWQgb3V0LCBzbyBvbmx5IGNhcHMKPiBrbm93biB0byBtZWRpYXRvciBhcmUgdXNlZC4gQWxz byBtZWRpYXRvciBkaXNhYmxlcyBzdGF0aWMgU0hNCj4gbWVtb3J5IGNhcGFiaWxpdHksIGJlY2F1 c2UgaXQgY2FuJ3Qgc2hhcmUgT1AtVEVFIG1lbW9yeSB3aXRoIGEgZG9tYWluLgo+IE9ubHkgZG9t YWluIGNhbiBzaGFyZSBtZW1vcnkgd2l0aCBPUC1URUUsIHNvIGl0IGVuc3VyZXMgdGhhdCBPUC1U RUUKPiBzdXBwb3J0cyBkeW5hbWljIFNITS4KPiAKPiBCYXNpY2FsbHksIHN0YXRpYyBTSE0gaXMg YSByZXNlcnZlZCBtZW1vcnkgcmVnaW9uIHdoaWNoIGlzIGFsd2F5cwo+IG1hcHBlZCBpbnRvIE9Q LVRFRSBhZGRyZXNzIHNwYWNlLiBJdCBiZWxvbmdzIHRvIE9QLVRFRS4gTm9ybWFsbHksCj4gTlcg aXMgYWxsb3dlZCB0byBhY2Nlc3MgdGhlcmUsIHNvIGl0IGNhbiBjb21tdW5pY2F0ZSB3aXRoIE9Q LVRFRS4KPiAKPiBPbiBvdGhlciBoYW5kLCBkeW5hbWljIFNITSBpcyBOVydzIG93biBtZW1vcnks IHdoaWNoIGl0IGNhbiBzaGFyZQo+IHdpdGggT1AtVEVFLiBPUC1URUUgbWFwcyB0aGlzIG1lbW9y eSBkeW5hbWljYWxseSwgd2hlbiBpdCB3YW50cyB0bwo+IGFjY2VzcyBpdC5zIHdvCj4gCj4gQmVj YXVzZSBtZWRpYXRvciBjYW4ndCBzaGFyZSBvbmUgc3RhdGljIFNITSByZWdpb24gd2l0aCBhbGwg Z3Vlc3RzLAo+IGl0IGp1c3QgZGlzYWJsZXMgaXQgZm9yIGFsbC4KCldvdWxkIGl0IG1ha2Ugc2Vu c2UgdG8gc3RpbGwgYWxsb3cgdGhlIGhhcmR3YXJlIGRvbWFpbiB0byBhY2Nlc3Mgc3RhdGljIFNI TT8KCj4gCj4gU2lnbmVkLW9mZi1ieTogVm9sb2R5bXlyIEJhYmNodWsgPHZvbG9keW15cl9iYWJj aHVrQGVwYW0uY29tPgo+IC0tLQo+ICAgeGVuL2FyY2gvYXJtL3RlZS9vcHRlZS5jIHwgNTYgKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystCj4gICAxIGZpbGUg Y2hhbmdlZCwgNTUgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQo+IAo+IGRpZmYgLS1naXQg YS94ZW4vYXJjaC9hcm0vdGVlL29wdGVlLmMgYi94ZW4vYXJjaC9hcm0vdGVlL29wdGVlLmMKPiBp bmRleCA3YmI4NGQ5Li40OGJmZjVkIDEwMDY0NAo+IC0tLSBhL3hlbi9hcmNoL2FybS90ZWUvb3B0 ZWUuYwo+ICsrKyBiL3hlbi9hcmNoL2FybS90ZWUvb3B0ZWUuYwo+IEBAIC01Niw3ICs1Niw3IEBA IHN0YXRpYyBpbnQgb3B0ZWVfZW5hYmxlKHN0cnVjdCBkb21haW4gKmQpCj4gICAgICAgcmV0dXJu IDA7Cj4gICB9Cj4gICAKPiAtc3RhdGljIHZvaWQgZm9yd2FyZF9jYWxsKHN0cnVjdCBjcHVfdXNl cl9yZWdzICpyZWdzKQo+ICtzdGF0aWMgYm9vbCBmb3J3YXJkX2NhbGwoc3RydWN0IGNwdV91c2Vy X3JlZ3MgKnJlZ3MpCj4gICB7Cj4gICAgICAgc3RydWN0IGFybV9zbWNjY19yZXMgcmVzcDsKPiAg IAo+IEBAIC03OSw2ICs3OSwyMCBAQCBzdGF0aWMgdm9pZCBmb3J3YXJkX2NhbGwoc3RydWN0IGNw dV91c2VyX3JlZ3MgKnJlZ3MpCj4gICAgICAgc2V0X3VzZXJfcmVnKHJlZ3MsIDUsIDApOwo+ICAg ICAgIHNldF91c2VyX3JlZyhyZWdzLCA2LCAwKTsKPiAgICAgICBzZXRfdXNlcl9yZWcocmVncywg NywgMCk7Cj4gKwo+ICsgICAgcmV0dXJuIHJlc3AuYTAgPT0gT1BURUVfU01DX1JFVFVSTl9PSzsK PiArfQo+ICsKPiArc3RhdGljIHZvaWQgc2V0X3JldHVybihzdHJ1Y3QgY3B1X3VzZXJfcmVncyAq cmVncywgdWludDMyX3QgcmV0KQo+ICt7Cj4gKyAgICBzZXRfdXNlcl9yZWcocmVncywgMCwgcmV0 KTsKPiArICAgIHNldF91c2VyX3JlZyhyZWdzLCAxLCAwKTsKPiArICAgIHNldF91c2VyX3JlZyhy ZWdzLCAyLCAwKTsKPiArICAgIHNldF91c2VyX3JlZyhyZWdzLCAzLCAwKTsKPiArICAgIHNldF91 c2VyX3JlZyhyZWdzLCA0LCAwKTsKPiArICAgIHNldF91c2VyX3JlZyhyZWdzLCA1LCAwKTsKPiAr ICAgIHNldF91c2VyX3JlZyhyZWdzLCA2LCAwKTsKPiArICAgIHNldF91c2VyX3JlZyhyZWdzLCA3 LCAwKTsKPiAgIH0KPiAgIAo+ICAgc3RhdGljIHZvaWQgb3B0ZWVfZG9tYWluX2Rlc3Ryb3koc3Ry dWN0IGRvbWFpbiAqZCkKPiBAQCAtOTIsNiArMTA2LDM5IEBAIHN0YXRpYyB2b2lkIG9wdGVlX2Rv bWFpbl9kZXN0cm95KHN0cnVjdCBkb21haW4gKmQpCj4gICAgICAgICAgICAgICAgICAgICAmcmVz cCk7Cj4gICB9Cj4gICAKPiArc3RhdGljIGJvb2wgaGFuZGxlX2V4Y2hhbmdlX2NhcGFiaWxpdGll cyhzdHJ1Y3QgY3B1X3VzZXJfcmVncyAqcmVncykKPiArewo+ICsgICAgdWludDMyX3QgY2FwczsK PiArCj4gKyAgICAvKiBGaWx0ZXIgb3V0IHVua25vd24gZ3Vlc3QgY2FwcyAqLwo+ICsgICAgY2Fw cyA9IGdldF91c2VyX3JlZyhyZWdzLCAxKTsKPiArICAgIGNhcHMgJj0gT1BURUVfU01DX05TRUNf Q0FQX1VOSVBST0NFU1NPUjsKCkkgdGhpbmsgaXQgd291bGQgbWFrZSBzZW5zZSB0byBpbnRyb2R1 Y2UgYSBkZWZpbmUgZm9yIHRoZSBtYXNrLgoKPiArICAgIHNldF91c2VyX3JlZyhyZWdzLCAxLCBj YXBzKTsKPiArCj4gKyAgICAvKiBGb3J3YXJkIGNhbGwgYW5kIHJldHVybiBlcnJvciAoaWYgYW55 KSBiYWNrIHRvIHRoZSBndWVzdCAqLwo+ICsgICAgaWYgKCAhZm9yd2FyZF9jYWxsKHJlZ3MpICkK PiArICAgICAgICByZXR1cm4gdHJ1ZTsKPiArCj4gKyAgICBjYXBzID0gZ2V0X3VzZXJfcmVnKHJl Z3MsIDEpOwo+ICsKPiArICAgIC8qIEZpbHRlciBvdXQgdW5rbm93biBPUC1URUUgY2FwcyAqLwo+ ICsgICAgY2FwcyAmPSBPUFRFRV9TTUNfU0VDX0NBUF9IQVZFX1JFU0VSVkVEX1NITSB8Cj4gKyAg ICAgICAgT1BURUVfU01DX1NFQ19DQVBfVU5SRUdJU1RFUkVEX1NITSB8Cj4gKyAgICAgICAgT1BU RUVfU01DX1NFQ19DQVBfRFlOQU1JQ19TSE07CgpTYW1lIGhlcmUuCgo+ICsKPiArICAgIC8qIERy b3Agc3RhdGljIFNITV9SUEMgY2FwICovCj4gKyAgICBjYXBzICY9IH5PUFRFRV9TTUNfU0VDX0NB UF9IQVZFX1JFU0VSVkVEX1NITTsKPiArCj4gKyAgICAvKiBEb24ndCBhbGxvdyBndWVzdHMgdG8g d29yayB3aXRob3V0IGR5bmFtaWMgU0hNICovCj4gKyAgICBpZiAoICEoY2FwcyAmIE9QVEVFX1NN Q19TRUNfQ0FQX0RZTkFNSUNfU0hNKSApIHsKCkNvZGluZyBzdHlsZS4KCmlmICggLi4uICkKewoK PiArICAgICAgICBzZXRfcmV0dXJuKHJlZ3MsIE9QVEVFX1NNQ19SRVRVUk5fRU5PVEFWQUlMKTsK PiArICAgICAgICByZXR1cm4gdHJ1ZTsKPiArICAgIH0KPiArCj4gKyAgICBzZXRfdXNlcl9yZWco cmVncywgMSwgY2Fwcyk7CgpOZXdsaW5lIGhlcmUuCgo+ICsgICAgcmV0dXJuIHRydWU7Cj4gK30K PiArCj4gICBzdGF0aWMgYm9vbCBvcHRlZV9oYW5kbGVfY2FsbChzdHJ1Y3QgY3B1X3VzZXJfcmVn cyAqcmVncykKPiAgIHsKPiAgICAgICBzd2l0Y2ggKCBnZXRfdXNlcl9yZWcocmVncywgMCkgKQo+ IEBAIC0xMDMsMTAgKzE1MCwxNyBAQCBzdGF0aWMgYm9vbCBvcHRlZV9oYW5kbGVfY2FsbChzdHJ1 Y3QgY3B1X3VzZXJfcmVncyAqcmVncykKPiAgICAgICBjYXNlIE9QVEVFX1NNQ19GVU5DSURfR0VU X09TX1JFVklTSU9OOgo+ICAgICAgIGNhc2UgT1BURUVfU01DX0VOQUJMRV9TSE1fQ0FDSEU6Cj4g ICAgICAgY2FzZSBPUFRFRV9TTUNfRElTQUJMRV9TSE1fQ0FDSEU6Cj4gKyAgICAgICAgZm9yd2Fy ZF9jYWxsKHJlZ3MpOwo+ICsgICAgICAgIHJldHVybiB0cnVlOwo+ICAgICAgIGNhc2UgT1BURUVf U01DX0dFVF9TSE1fQ09ORklHOgo+ICsgICAgICAgIC8qIE5vIHN0YXRpYyBTSE0gYXZhaWxhYmxl IGZvciBndWVzdHMgKi8KPiArICAgICAgICBzZXRfcmV0dXJuKHJlZ3MsIE9QVEVFX1NNQ19SRVRV Uk5fRU5PVEFWQUlMKTsKPiArICAgICAgICByZXR1cm4gdHJ1ZTsKPiAgICAgICBjYXNlIE9QVEVF X1NNQ19FWENIQU5HRV9DQVBBQklMSVRJRVM6Cj4gKyAgICAgICAgcmV0dXJuIGhhbmRsZV9leGNo YW5nZV9jYXBhYmlsaXRpZXMocmVncyk7Cj4gICAgICAgY2FzZSBPUFRFRV9TTUNfQ0FMTF9XSVRI X0FSRzoKPiAgICAgICBjYXNlIE9QVEVFX1NNQ19DQUxMX1JFVFVSTl9GUk9NX1JQQzoKPiArICAg ICAgICAvKiBUT0RPOiBBZGQgcHJvcGVyIGhhbmRsaW5nIGZvciB0aGlzIGNhbGxzICovCgpJIHRo aW5rIEkgd291bGQgcHJlZmVyIGlmIHRoZSBjYWxsIHdlcmUgbm90IGludHJvZHVjZWQgaW4gdGhl IGZpcnN0IApwbGFjZS4gWW91IHRoZW4gYWRkIGNhbGwgd2hlbiB0aGV5IGFyZSBhY3R1YWxseSBp bXBsZW1lbnRlZC4KCj4gICAgICAgICAgIGZvcndhcmRfY2FsbChyZWdzKTsKPiAgICAgICAgICAg cmV0dXJuIHRydWU7Cj4gICAgICAgZGVmYXVsdDoKPiAKCkNoZWVycywKCi0tIApKdWxpZW4gR3Jh bGwKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fClhlbi1k ZXZlbCBtYWlsaW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBzOi8v bGlzdHMueGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby94ZW4tZGV2ZWw=