From mboxrd@z Thu Jan 1 00:00:00 1970 From: Stefano Stabellini Subject: [PATCH v2 06/13] xen/pvcalls: implement listen command Date: Tue, 25 Jul 2017 14:22:03 -0700 Message-ID: <1501017730-12797-6-git-send-email-sstabellini@kernel.org> References: <1501017730-12797-1-git-send-email-sstabellini@kernel.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1501017730-12797-1-git-send-email-sstabellini@kernel.org> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: xen-devel@lists.xen.org Cc: jgross@suse.com, Stefano Stabellini , boris.ostrovsky@oracle.com, sstabellini@kernel.org, linux-kernel@vger.kernel.org List-Id: xen-devel@lists.xenproject.org U2VuZCBQVkNBTExTX0xJU1RFTiB0byB0aGUgYmFja2VuZC4KClNpZ25lZC1vZmYtYnk6IFN0ZWZh bm8gU3RhYmVsbGluaSA8c3RlZmFub0BhcG9yZXRvLmNvbT4KQ0M6IGJvcmlzLm9zdHJvdnNreUBv cmFjbGUuY29tCkNDOiBqZ3Jvc3NAc3VzZS5jb20KLS0tCiBkcml2ZXJzL3hlbi9wdmNhbGxzLWZy b250LmMgfCA0OCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysK IGRyaXZlcnMveGVuL3B2Y2FsbHMtZnJvbnQuaCB8ICAxICsKIDIgZmlsZXMgY2hhbmdlZCwgNDkg aW5zZXJ0aW9ucygrKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMveGVuL3B2Y2FsbHMtZnJvbnQuYyBi L2RyaXZlcnMveGVuL3B2Y2FsbHMtZnJvbnQuYwppbmRleCBhZjJjZTIwLi4zYjVkNTBlIDEwMDY0 NAotLS0gYS9kcml2ZXJzL3hlbi9wdmNhbGxzLWZyb250LmMKKysrIGIvZHJpdmVycy94ZW4vcHZj YWxscy1mcm9udC5jCkBAIC0zNjUsNiArMzY1LDU0IEBAIGludCBwdmNhbGxzX2Zyb250X2JpbmQo c3RydWN0IHNvY2tldCAqc29jaywgc3RydWN0IHNvY2thZGRyICphZGRyLCBpbnQgYWRkcl9sZW4p CiAJcmV0dXJuIDA7CiB9CiAKK2ludCBwdmNhbGxzX2Zyb250X2xpc3RlbihzdHJ1Y3Qgc29ja2V0 ICpzb2NrLCBpbnQgYmFja2xvZykKK3sKKwlzdHJ1Y3QgcHZjYWxsc19iZWRhdGEgKmJlZGF0YTsK KwlzdHJ1Y3Qgc29ja19tYXBwaW5nICptYXA7CisJc3RydWN0IHhlbl9wdmNhbGxzX3JlcXVlc3Qg KnJlcTsKKwlpbnQgbm90aWZ5LCByZXFfaWQsIHJldDsKKworCWlmICghcHZjYWxsc19mcm9udF9k ZXYpCisJCXJldHVybiAtRU5PVENPTk47CisJYmVkYXRhID0gZGV2X2dldF9kcnZkYXRhKCZwdmNh bGxzX2Zyb250X2Rldi0+ZGV2KTsKKworCW1hcCA9IChzdHJ1Y3Qgc29ja19tYXBwaW5nICopIFJF QURfT05DRShzb2NrLT5zay0+c2tfc2VuZF9oZWFkKTsKKwlpZiAoIW1hcCkKKwkJcmV0dXJuIC1F Tk9UU09DSzsKKworCWlmIChtYXAtPnBhc3NpdmUuc3RhdHVzICE9IFBWQ0FMTFNfU1RBVFVTX0JJ TkQpCisJCXJldHVybiAtRU9QTk9UU1VQUDsKKworCXNwaW5fbG9jaygmYmVkYXRhLT5wdmNhbGxz c19sb2NrKTsKKwlyZXFfaWQgPSBiZWRhdGEtPnJpbmcucmVxX3Byb2RfcHZ0ICYgKFJJTkdfU0la RSgmYmVkYXRhLT5yaW5nKSAtIDEpOworCWlmIChSSU5HX0ZVTEwoJmJlZGF0YS0+cmluZykgfHwK KwkgICAgYmVkYXRhLT5yc3BbcmVxX2lkXS5yZXFfaWQgIT0gUFZDQUxMU19JTlZBTElEX0lEKSB7 CisJCXNwaW5fdW5sb2NrKCZiZWRhdGEtPnB2Y2FsbHNzX2xvY2spOworCQlyZXR1cm4gLUVBR0FJ TjsKKwl9CisJcmVxID0gUklOR19HRVRfUkVRVUVTVCgmYmVkYXRhLT5yaW5nLCByZXFfaWQpOwor CXJlcS0+cmVxX2lkID0gcmVxX2lkOworCXJlcS0+Y21kID0gUFZDQUxMU19MSVNURU47CisJcmVx LT51Lmxpc3Rlbi5pZCA9ICh1aW50NjRfdCkgc29jazsKKwlyZXEtPnUubGlzdGVuLmJhY2tsb2cg PSBiYWNrbG9nOworCisJYmVkYXRhLT5yaW5nLnJlcV9wcm9kX3B2dCsrOworCVJJTkdfUFVTSF9S RVFVRVNUU19BTkRfQ0hFQ0tfTk9USUZZKCZiZWRhdGEtPnJpbmcsIG5vdGlmeSk7CisJc3Bpbl91 bmxvY2soJmJlZGF0YS0+cHZjYWxsc3NfbG9jayk7CisJaWYgKG5vdGlmeSkKKwkJbm90aWZ5X3Jl bW90ZV92aWFfaXJxKGJlZGF0YS0+aXJxKTsKKworCXdhaXRfZXZlbnQoYmVkYXRhLT5pbmZsaWdo dF9yZXEsCisJCSAgIFJFQURfT05DRShiZWRhdGEtPnJzcFtyZXFfaWRdLnJlcV9pZCkgPT0gcmVx X2lkKTsKKworCW1hcC0+cGFzc2l2ZS5zdGF0dXMgPSBQVkNBTExTX1NUQVRVU19MSVNURU47CisJ cmV0ID0gYmVkYXRhLT5yc3BbcmVxX2lkXS5yZXQ7CisJLyogcmVhZCByZXQsIHRoZW4gc2V0IHRo aXMgcnNwIHNsb3QgdG8gYmUgcmV1c2VkICovCisJc21wX21iKCk7CisJV1JJVEVfT05DRShiZWRh dGEtPnJzcFtyZXFfaWRdLnJlcV9pZCwgUFZDQUxMU19JTlZBTElEX0lEKTsKKwlyZXR1cm4gcmV0 OworfQorCiBzdGF0aWMgY29uc3Qgc3RydWN0IHhlbmJ1c19kZXZpY2VfaWQgcHZjYWxsc19mcm9u dF9pZHNbXSA9IHsKIAl7ICJwdmNhbGxzIiB9LAogCXsgIiIgfQpkaWZmIC0tZ2l0IGEvZHJpdmVy cy94ZW4vcHZjYWxscy1mcm9udC5oIGIvZHJpdmVycy94ZW4vcHZjYWxscy1mcm9udC5oCmluZGV4 IDhiMGEyNzQuLmFhOGZlMTAgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMveGVuL3B2Y2FsbHMtZnJvbnQu aAorKysgYi9kcml2ZXJzL3hlbi9wdmNhbGxzLWZyb250LmgKQEAgLTksNSArOSw2IEBAIGludCBw dmNhbGxzX2Zyb250X2Nvbm5lY3Qoc3RydWN0IHNvY2tldCAqc29jaywgc3RydWN0IHNvY2thZGRy ICphZGRyLAogaW50IHB2Y2FsbHNfZnJvbnRfYmluZChzdHJ1Y3Qgc29ja2V0ICpzb2NrLAogCQkg ICAgICAgc3RydWN0IHNvY2thZGRyICphZGRyLAogCQkgICAgICAgaW50IGFkZHJfbGVuKTsKK2lu dCBwdmNhbGxzX2Zyb250X2xpc3RlbihzdHJ1Y3Qgc29ja2V0ICpzb2NrLCBpbnQgYmFja2xvZyk7 CiAKICNlbmRpZgotLSAKMS45LjEKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fXwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW4u b3JnCmh0dHBzOi8vbGlzdHMueGVuLm9yZy94ZW4tZGV2ZWwK