From mboxrd@z Thu Jan 1 00:00:00 1970 From: Volodymyr Babchuk Subject: [PATCH v2 06/13] optee: add domain contexts Date: Mon, 3 Sep 2018 19:54:30 +0300 Message-ID: <1535993677-20816-7-git-send-email-volodymyr_babchuk@epam.com> References: <1535993677-20816-1-git-send-email-volodymyr_babchuk@epam.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1535993677-20816-1-git-send-email-volodymyr_babchuk@epam.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" To: xen-devel@lists.xenproject.org, xen-devel@lists.xen.org Cc: tee-dev@lists.linaro.org, Julien Grall , Stefano Stabellini , Volodymyr Babchuk List-Id: xen-devel@lists.xenproject.org T1AtVEVFIG1lZGl0b3IgbmVlZHMgdG8gc3RvcmUgcGVyLWRvbWFpbiBjb250ZXh0LCBhcyB3aWxs IGJlIHNlZW4KaW4gdGhlIG5leHQgcGF0Y2hlcy4gQXQgdGhpcyBtb21lbnQgaXQgc3RvcmVzIG9u bHkgcmVmZXJlbmNlIHRvIGRvbWFpbi4KClRoaXMgYWxsb3dzIHVzIHRvIGZpbHRlciBvdXQgY2Fs bHMgZnJvbSBkb21haW5zIHRoYXQgYXJlIG5vdCBhbGxvd2VkCnRvIHdvcmsgd2l0aCBPUC1URUUu CgpTaWduZWQtb2ZmLWJ5OiBWb2xvZHlteXIgQmFiY2h1ayA8dm9sb2R5bXlyX2JhYmNodWtAZXBh bS5jb20+Ci0tLQogeGVuL2FyY2gvYXJtL3RlZS9vcHRlZS5jIHwgNjYgKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCiAxIGZpbGUgY2hhbmdlZCwgNjYgaW5z ZXJ0aW9ucygrKQoKZGlmZiAtLWdpdCBhL3hlbi9hcmNoL2FybS90ZWUvb3B0ZWUuYyBiL3hlbi9h cmNoL2FybS90ZWUvb3B0ZWUuYwppbmRleCA0OGJmZjVkLi5jODk1YTk5IDEwMDY0NAotLS0gYS94 ZW4vYXJjaC9hcm0vdGVlL29wdGVlLmMKKysrIGIveGVuL2FyY2gvYXJtL3RlZS9vcHRlZS5jCkBA IC0xOSw2ICsxOSwxNCBAQAogI2luY2x1ZGUgPGFzbS90ZWUvb3B0ZWVfbXNnLmg+CiAjaW5jbHVk ZSA8YXNtL3RlZS9vcHRlZV9zbWMuaD4KIAorc3RydWN0IGRvbWFpbl9jdHggeworICAgIHN0cnVj dCBsaXN0X2hlYWQgbGlzdDsKKyAgICBzdHJ1Y3QgZG9tYWluICpkb21haW47Cit9OworCitzdGF0 aWMgTElTVF9IRUFEKGRvbWFpbl9jdHhfbGlzdCk7CitzdGF0aWMgREVGSU5FX1NQSU5MT0NLKGRv bWFpbl9jdHhfbGlzdF9sb2NrKTsKKwogc3RhdGljIGJvb2wgb3B0ZWVfcHJvYmUodm9pZCkKIHsK ICAgICBzdHJ1Y3QgZHRfZGV2aWNlX25vZGUgKm5vZGU7CkBAIC00MSwxOCArNDksNDkgQEAgc3Rh dGljIGJvb2wgb3B0ZWVfcHJvYmUodm9pZCkKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAorc3RhdGlj IHN0cnVjdCBkb21haW5fY3R4ICpmaW5kX2RvbWFpbl9jdHgoc3RydWN0IGRvbWFpbiogZCkKK3sK KyAgICBzdHJ1Y3QgZG9tYWluX2N0eCAqY3R4OworCisgICAgc3Bpbl9sb2NrKCZkb21haW5fY3R4 X2xpc3RfbG9jayk7CisKKyAgICBsaXN0X2Zvcl9lYWNoX2VudHJ5KCBjdHgsICZkb21haW5fY3R4 X2xpc3QsIGxpc3QgKQorICAgIHsKKyAgICAgICAgaWYgKCBjdHgtPmRvbWFpbiA9PSBkICkKKyAg ICAgICAgeworICAgICAgICAgICAgICAgIHNwaW5fdW5sb2NrKCZkb21haW5fY3R4X2xpc3RfbG9j ayk7CisgICAgICAgICAgICAgICAgcmV0dXJuIGN0eDsKKyAgICAgICAgfQorICAgIH0KKworICAg IHNwaW5fdW5sb2NrKCZkb21haW5fY3R4X2xpc3RfbG9jayk7CisgICAgcmV0dXJuIE5VTEw7Cit9 CisKIHN0YXRpYyBpbnQgb3B0ZWVfZW5hYmxlKHN0cnVjdCBkb21haW4gKmQpCiB7CiAgICAgc3Ry dWN0IGFybV9zbWNjY19yZXMgcmVzcDsKKyAgICBzdHJ1Y3QgZG9tYWluX2N0eCAqY3R4OworCisg ICAgY3R4ID0geHphbGxvYyhzdHJ1Y3QgZG9tYWluX2N0eCk7CisgICAgaWYgKCAhY3R4ICkKKyAg ICAgICAgcmV0dXJuIC1FTk9NRU07CiAKICAgICBhcm1fc21jY2Nfc21jKE9QVEVFX1NNQ19WTV9D UkVBVEVELCBkLT5kb21haW5faWQgKyAxLCAwLCAwLCAwLCAwLCAwLCAwLAogICAgICAgICAgICAg ICAgICAgJnJlc3ApOwogICAgIGlmICggcmVzcC5hMCAhPSBPUFRFRV9TTUNfUkVUVVJOX09LICkg ewogICAgICAgICBncHJpbnRrKFhFTkxPR19XQVJOSU5HLCAiT1AtVEVFIGRvbid0IHdhbnQgdG8g c3VwcG9ydCBkb21haW46ICVkXG4iLAogICAgICAgICAgICAgICAgICh1aW50MzJfdClyZXNwLmEw KTsKKyAgICAgICAgeGZyZWUoY3R4KTsKICAgICAgICAgcmV0dXJuIC1FTk9ERVY7CiAgICAgfQog CisgICAgY3R4LT5kb21haW4gPSBkOworCisgICAgc3Bpbl9sb2NrKCZkb21haW5fY3R4X2xpc3Rf bG9jayk7CisgICAgbGlzdF9hZGRfdGFpbCgmY3R4LT5saXN0LCAmZG9tYWluX2N0eF9saXN0KTsK KyAgICBzcGluX3VubG9jaygmZG9tYWluX2N0eF9saXN0X2xvY2spOworCiAgICAgcmV0dXJuIDA7 CiB9CiAKQEAgLTk1LDE1ICsxMzQsMzYgQEAgc3RhdGljIHZvaWQgc2V0X3JldHVybihzdHJ1Y3Qg Y3B1X3VzZXJfcmVncyAqcmVncywgdWludDMyX3QgcmV0KQogICAgIHNldF91c2VyX3JlZyhyZWdz LCA3LCAwKTsKIH0KIAorCiBzdGF0aWMgdm9pZCBvcHRlZV9kb21haW5fZGVzdHJveShzdHJ1Y3Qg ZG9tYWluICpkKQogewogICAgIHN0cnVjdCBhcm1fc21jY2NfcmVzIHJlc3A7CisgICAgc3RydWN0 IGRvbWFpbl9jdHggKmN0eDsKKyAgICBib29sIGZvdW5kID0gZmFsc2U7CiAKICAgICAvKiBBdCB0 aGlzIHRpbWUgYWxsIGRvbWFpbiBWQ1BVcyBzaG91bGQgYmUgc3RvcHBlZCAqLwogCiAgICAgLyog SW5mb3JtIE9QLVRFRSB0aGF0IGRvbWFpbiBpcyBzaHV0dGluZyBkb3duICovCiAgICAgYXJtX3Nt Y2NjX3NtYyhPUFRFRV9TTUNfVk1fREVTVFJPWUVELCBkLT5kb21haW5faWQgKyAxLCAwLCAwLCAw LCAwLCAwLCAwLAogICAgICAgICAgICAgICAgICAgJnJlc3ApOworCisgICAgLyogUmVtb3ZlIGNv bnRleHQgZnJvbSB0aGUgbGlzdCAqLworICAgIHNwaW5fbG9jaygmZG9tYWluX2N0eF9saXN0X2xv Y2spOworICAgIGxpc3RfZm9yX2VhY2hfZW50cnkoIGN0eCwgJmRvbWFpbl9jdHhfbGlzdCwgbGlz dCApCisgICAgeworICAgICAgICBpZiAoIGN0eC0+ZG9tYWluID09IGQgKQorICAgICAgICB7Cisg ICAgICAgICAgICBmb3VuZCA9IHRydWU7CisgICAgICAgICAgICBsaXN0X2RlbCgmY3R4LT5saXN0 KTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICB9CisgICAgfQorICAgIHNwaW5fdW5sb2Nr KCZkb21haW5fY3R4X2xpc3RfbG9jayk7CisKKyAgICBpZiAoICFmb3VuZCApCisgICAgICAgIHJl dHVybjsKKworICAgIHhmcmVlKGN0eCk7CiB9CiAKIHN0YXRpYyBib29sIGhhbmRsZV9leGNoYW5n ZV9jYXBhYmlsaXRpZXMoc3RydWN0IGNwdV91c2VyX3JlZ3MgKnJlZ3MpCkBAIC0xNDEsNiArMjAx LDEyIEBAIHN0YXRpYyBib29sIGhhbmRsZV9leGNoYW5nZV9jYXBhYmlsaXRpZXMoc3RydWN0IGNw dV91c2VyX3JlZ3MgKnJlZ3MpCiAKIHN0YXRpYyBib29sIG9wdGVlX2hhbmRsZV9jYWxsKHN0cnVj dCBjcHVfdXNlcl9yZWdzICpyZWdzKQogeworICAgIHN0cnVjdCBkb21haW5fY3R4ICpjdHg7CisK KyAgICBjdHggPSBmaW5kX2RvbWFpbl9jdHgoY3VycmVudC0+ZG9tYWluKTsKKyAgICBpZiAoICFj dHggKQorICAgICAgICByZXR1cm4gZmFsc2U7CisKICAgICBzd2l0Y2ggKCBnZXRfdXNlcl9yZWco cmVncywgMCkgKQogICAgIHsKICAgICBjYXNlIE9QVEVFX1NNQ19DQUxMU19DT1VOVDoKLS0gCjIu Ny40CgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KWGVu LWRldmVsIG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6 Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL3hlbi1kZXZlbA==