From mboxrd@z Thu Jan 1 00:00:00 1970 From: Bhupinder Thakur Subject: [PATCH 03/11] xen/arm: vpl011: Refactor evtchn_send in Xen to allow sending events from a xen bound channel Date: Tue, 21 Feb 2017 16:56:00 +0530 Message-ID: <1487676368-22356-4-git-send-email-bhupinder.thakur@linaro.org> References: <1487676368-22356-1-git-send-email-bhupinder.thakur@linaro.org> 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 1cg8aS-0002jm-Ci for xen-devel@lists.xenproject.org; Tue, 21 Feb 2017 11:26:28 +0000 Received: by mail-pg0-f51.google.com with SMTP id a123so33306486pgc.0 for ; Tue, 21 Feb 2017 03:26:25 -0800 (PST) In-Reply-To: <1487676368-22356-1-git-send-email-bhupinder.thakur@linaro.org> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: xen-devel@lists.xenproject.org Cc: Julien Grall , Stefano Stabellini List-Id: xen-devel@lists.xenproject.org QnJlYWt1cCBldnRjaG5fc2VuZCgpIHRvIGFsbG93IHNlbmRpbmcgZXZlbnRzIGZvciBhIFhlbiBi b3VuZCBjaGFubmVsLiBDdXJyZW50bHksCnRoZXJlIGlzIGEgY2hlY2sgaW4gZXZ0Y2huX3NlbmQo KSBpLmUuIGlzX2NvbnN1bWVyX3hlbigpIHRoYXQgaWYgdGhlIGV2ZW50IGNoYW5uZWwKaXMgYm91 bmQgdG8gYSB4ZW4gY29uc3VtZXIgdGhlbiBldmVudCBnZW5lcmF0aW9uIGlzIG5vdCBhbGxvd2Vk IGZvciB0aGF0IGNoYW5uZWwuClRoaXMgY2hlY2sgaXMgdG8gZGlzYWxsb3cgYSBndWVzdCBmcm9t IHJhaXNpbmcgYW4gZXZlbnQgdmlhIHRoaXMgY2hhbm5lbC4gSG93ZXZlciwKaXQgc2hvdWxkIGFs bG93IFhlbiB0byBzZW5kIGEgZXZlbnQgdmlhIHRoaXMgY2hhbm5lbCBhcyBpdCBpcyByZXF1aXJl ZCBmb3Igc2VuZGluZwp2cGwwMTEgZXZlbnQgdG8gdGhlIGRvbTAuCgpUaGlzIGNoYW5nZSBpbnRy b2R1Y2VzIGEgbmV3IGZ1bmN0aW9uIHJhd19ldnRjaG5fc2VuZCgpIHdoaWNoIHNlbmRzIHRoZSBl dmVudAp3aXRob3V0IHRoaXMgY2hlY2suIFRoZSBjdXJyZW50IGV2dGNobl9zZW5kKCkgY2FsbHMg dGhpcyBmdW5jdGlvbiBhZnRlciBkb2luZyB0aGUKeGVuIGNvbnN1bWVyIGNoZWNrLiBYZW4gdXNl cyB0aGUgcmF3X2V2dGNobV9zZW5kKCkgdmVyc2lvbiB0byBzZW5kIHRoZSBldmVudCB0aHVzCmJ5 cGFzc2luZyB0aGUgY2hlY2suCgpTaWduZWQtb2ZmLWJ5OiBCaHVwaW5kZXIgVGhha3VyIDxiaHVw aW5kZXIudGhha3VyQGxpbmFyby5vcmc+Ci0tLQogeGVuL2NvbW1vbi9ldmVudF9jaGFubmVsLmMg fCA0OSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tCiB4ZW4v aW5jbHVkZS94ZW4vZXZlbnQuaCAgICB8ICA2ICsrKysrKwogMiBmaWxlcyBjaGFuZ2VkLCA0MiBp bnNlcnRpb25zKCspLCAxMyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS94ZW4vY29tbW9uL2V2 ZW50X2NoYW5uZWwuYyBiL3hlbi9jb21tb24vZXZlbnRfY2hhbm5lbC5jCmluZGV4IDYzOGRjNWUu LjRiMDM5ZjMgMTAwNjQ0Ci0tLSBhL3hlbi9jb21tb24vZXZlbnRfY2hhbm5lbC5jCisrKyBiL3hl bi9jb21tb24vZXZlbnRfY2hhbm5lbC5jCkBAIC0yNyw2ICsyNyw3IEBACiAjaW5jbHVkZSA8eGVu L2tleWhhbmRsZXIuaD4KICNpbmNsdWRlIDx4ZW4vZXZlbnRfZmlmby5oPgogI2luY2x1ZGUgPGFz bS9jdXJyZW50Lmg+CisjaW5jbHVkZSA8eGVuL2RvbWFpbl9wYWdlLmg+CiAKICNpbmNsdWRlIDxw dWJsaWMveGVuLmg+CiAjaW5jbHVkZSA8cHVibGljL2V2ZW50X2NoYW5uZWwuaD4KQEAgLTY1MCwy NSArNjUxLDIxIEBAIHN0YXRpYyBsb25nIGV2dGNobl9jbG9zZShzdHJ1Y3QgZG9tYWluICpkMSwg aW50IHBvcnQxLCBib29sX3QgZ3Vlc3QpCiAgICAgcmV0dXJuIHJjOwogfQogCi1pbnQgZXZ0Y2hu X3NlbmQoc3RydWN0IGRvbWFpbiAqbGQsIHVuc2lnbmVkIGludCBscG9ydCkKK2ludCByYXdfZXZ0 Y2huX3NlbmQoc3RydWN0IGRvbWFpbiAqbGQsIHVuc2lnbmVkIGludCBscG9ydCwgdm9pZCAqZGF0 YSkKIHsKICAgICBzdHJ1Y3QgZXZ0Y2huICpsY2huLCAqcmNobjsKICAgICBzdHJ1Y3QgZG9tYWlu ICpyZDsKLSAgICBpbnQgICAgICAgICAgICBycG9ydCwgcmV0ID0gMDsKKyAgICBpbnQgcnBvcnQs IHJldD0wOwogCi0gICAgaWYgKCAhcG9ydF9pc192YWxpZChsZCwgbHBvcnQpICkKLSAgICAgICAg cmV0dXJuIC1FSU5WQUw7Ci0KLSAgICBsY2huID0gZXZ0Y2huX2Zyb21fcG9ydChsZCwgbHBvcnQp OwotCi0gICAgc3Bpbl9sb2NrKCZsY2huLT5sb2NrKTsKLQotICAgIC8qIEd1ZXN0IGNhbm5vdCBz ZW5kIHZpYSBhIFhlbi1hdHRhY2hlZCBldmVudCBjaGFubmVsLiAqLwotICAgIGlmICggdW5saWtl bHkoY29uc3VtZXJfaXNfeGVuKGxjaG4pKSApCisgICAgaWYgKCAhZGF0YSApCiAgICAgewotICAg ICAgICByZXQgPSAtRUlOVkFMOwotICAgICAgICBnb3RvIG91dDsKKyAgICAgICAgaWYgKCAhcG9y dF9pc192YWxpZChsZCwgbHBvcnQpICkKKyAgICAgICAgICAgIHJldHVybiAtRUlOVkFMOworICAg ICAgICBsY2huID0gZXZ0Y2huX2Zyb21fcG9ydChsZCwgbHBvcnQpOworICAgICAgICBzcGluX2xv Y2soJmxjaG4tPmxvY2spOwogICAgIH0KKyAgICBlbHNlCisgICAgICAgIGxjaG4gPSAoc3RydWN0 IGV2dGNobiAqKWRhdGE7IAogCiAgICAgcmV0ID0geHNtX2V2dGNobl9zZW5kKFhTTV9IT09LLCBs ZCwgbGNobik7CiAgICAgaWYgKCByZXQgKQpAQCAtNjk2LDYgKzY5MywzMiBAQCBpbnQgZXZ0Y2hu X3NlbmQoc3RydWN0IGRvbWFpbiAqbGQsIHVuc2lnbmVkIGludCBscG9ydCkKICAgICB9CiAKIG91 dDoKKyAgICBpZiAoICFkYXRhICkKKyAgICAgICAgc3Bpbl91bmxvY2soJmxjaG4tPmxvY2spOwor CisgICAgcmV0dXJuIHJldDsKK30KKworaW50IGV2dGNobl9zZW5kKHN0cnVjdCBkb21haW4gKmxk LCB1bnNpZ25lZCBpbnQgbHBvcnQpCit7CisgICAgc3RydWN0IGV2dGNobiAqbGNobjsKKyAgICBp bnQgcmV0OworCisgICAgaWYgKCAhcG9ydF9pc192YWxpZChsZCwgbHBvcnQpICkKKyAgICAgICAg cmV0dXJuIC1FSU5WQUw7CisKKyAgICBsY2huID0gZXZ0Y2huX2Zyb21fcG9ydChsZCwgbHBvcnQp OworCisgICAgc3Bpbl9sb2NrKCZsY2huLT5sb2NrKTsKKworICAgIGlmICggdW5saWtlbHkoY29u c3VtZXJfaXNfeGVuKGxjaG4pKSApCisgICAgeworICAgICAgICBwcmludGsoImV2dGNobl9zZW5k IGZhaWxlZCB0byBzZW5kIHZpYSB4ZW4gZXZlbnQgY2hhbm5lbFxuIik7CisgICAgICAgIHJldHVy biAtRUlOVkFMOworICAgIH0KKworICAgIHJldCA9IHJhd19ldnRjaG5fc2VuZChsZCwgbHBvcnQs IGxjaG4pOworCiAgICAgc3Bpbl91bmxvY2soJmxjaG4tPmxvY2spOwogCiAgICAgcmV0dXJuIHJl dDsKZGlmZiAtLWdpdCBhL3hlbi9pbmNsdWRlL3hlbi9ldmVudC5oIGIveGVuL2luY2x1ZGUveGVu L2V2ZW50LmgKaW5kZXggNTAwOGM4MC4uOWJkMTdkYiAxMDA2NDQKLS0tIGEveGVuL2luY2x1ZGUv eGVuL2V2ZW50LmgKKysrIGIveGVuL2luY2x1ZGUveGVuL2V2ZW50LmgKQEAgLTQ1LDYgKzQ1LDEy IEBAIHZvaWQgc2VuZF9ndWVzdF9waXJxKHN0cnVjdCBkb21haW4gKiwgY29uc3Qgc3RydWN0IHBp cnEgKik7CiAvKiBTZW5kIGEgbm90aWZpY2F0aW9uIGZyb20gYSBnaXZlbiBkb21haW4ncyBldmVu dC1jaGFubmVsIHBvcnQuICovCiBpbnQgZXZ0Y2huX3NlbmQoc3RydWN0IGRvbWFpbiAqZCwgdW5z aWduZWQgaW50IGxwb3J0KTsKIAorLyogCisgKiBUaGlzIGZ1bmN0aW9uIGlzIHNhbWUgYXMgZXZu dGNobl9zZW5kKCkgZXhjZXB0IGl0IGRvZXMgbm90IGRvIHhlbiBjb25zdW1lciBjaGVjaworICog dG8gYWxsb3cgdGhlIGV2ZW50cyB0byBiZSBzZW50IGZyb20geGVuIGJvdW5kIGNoYW5uZWxzLgor ICovCitpbnQgcmF3X2V2dGNobl9zZW5kKHN0cnVjdCBkb21haW4gKmxkLCB1bnNpZ25lZCBpbnQg bHBvcnQsIHZvaWQgKmRhdGEpOworCiAvKiBCaW5kIGEgbG9jYWwgZXZlbnQtY2hhbm5lbCBwb3J0 IHRvIHRoZSBzcGVjaWZpZWQgVkNQVS4gKi8KIGxvbmcgZXZ0Y2huX2JpbmRfdmNwdSh1bnNpZ25l ZCBpbnQgcG9ydCwgdW5zaWduZWQgaW50IHZjcHVfaWQpOwogCi0tIAoyLjcuNAoKCl9fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fClhlbi1kZXZlbCBtYWlsaW5n IGxpc3QKWGVuLWRldmVsQGxpc3RzLnhlbi5vcmcKaHR0cHM6Ly9saXN0cy54ZW4ub3JnL3hlbi1k ZXZlbAo=