From mboxrd@z Thu Jan 1 00:00:00 1970 From: Stefano Stabellini Subject: [PULL 11/15] xen_backend: add an emulation of grant copy Date: Mon, 21 May 2018 12:35:00 -0700 Message-ID: <1526931304-7289-11-git-send-email-sstabellini@kernel.org> References: Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6]) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1fKqaO-0000Tq-IS for xen-devel@lists.xenproject.org; Mon, 21 May 2018 19:35:12 +0000 In-Reply-To: List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" To: peter.maydell@linaro.org, stefanha@gmail.com Cc: sstabellini@kernel.org, qemu-devel@nongnu.org, Paul Durrant , stefanha@redhat.com, anthony.perard@citrix.com, xen-devel@lists.xenproject.org List-Id: xen-devel@lists.xenproject.org RnJvbTogUGF1bCBEdXJyYW50IDxwYXVsLmR1cnJhbnRAY2l0cml4LmNvbT4KCk5vdCBhbGwgWGVu IGVudmlyb25tZW50cyBzdXBwb3J0IHRoZSB4ZW5nbnR0YWJfZ3JhbnRfY29weSgpIG9wZXJhdGlv bi4KRS5nLiB3aGVyZSB0aGUgT1MgaXMgRnJlZUJTRCBvciBYZW4gaXMgb2xkZXIgdGhhbiA0Ljgu MC4KClRoaXMgcGF0Y2ggaW50cm9kdWNlcyBhbiBlbXVsYXRpb24gb2YgdGhhdCBvcGVyYXRpb24g dXNpbmcKeGVuZ250dGFiX21hcF9kb21haW5fZ3JhbnRfcmVmcygpIGFuZCBtZW1jcHkoKSBmb3Ig dGhvc2UgZW52aXJvbm1lbnRzLgoKU2lnbmVkLW9mZi1ieTogUGF1bCBEdXJyYW50IDxwYXVsLmR1 cnJhbnRAY2l0cml4LmNvbT4KQWNrZWQtYnk6IEFudGhvbnkgUEVSQVJEIDxhbnRob255LnBlcmFy ZEBjaXRyaXguY29tPgpTaWduZWQtb2ZmLWJ5OiBTdGVmYW5vIFN0YWJlbGxpbmkgPHNzdGFiZWxs aW5pQGtlcm5lbC5vcmc+Ci0tLQogaHcveGVuL3hlbl9iYWNrZW5kLmMgfCA1MyArKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCiAxIGZpbGUgY2hhbmdl ZCwgNTMgaW5zZXJ0aW9ucygrKQoKZGlmZiAtLWdpdCBhL2h3L3hlbi94ZW5fYmFja2VuZC5jIGIv aHcveGVuL3hlbl9iYWNrZW5kLmMKaW5kZXggNTA0MTJkNi4uM2MzZmMyYyAxMDA2NDQKLS0tIGEv aHcveGVuL3hlbl9iYWNrZW5kLmMKKysrIGIvaHcveGVuL3hlbl9iYWNrZW5kLmMKQEAgLTE0Niw2 ICsxNDYsNTUgQEAgdm9pZCB4ZW5fYmVfdW5tYXBfZ3JhbnRfcmVmcyhzdHJ1Y3QgWGVuRGV2aWNl ICp4ZW5kZXYsIHZvaWQgKnB0ciwKICAgICB9CiB9CiAKK3N0YXRpYyBpbnQgY29tcGF0X2NvcHlf Z3JhbnRfcmVmcyhzdHJ1Y3QgWGVuRGV2aWNlICp4ZW5kZXYsCisgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgYm9vbCB0b19kb21haW4sCisgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgWGVuR3JhbnRDb3B5U2VnbWVudCBzZWdzW10sCisgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgdW5zaWduZWQgaW50IG5yX3NlZ3MpCit7CisgICAgdWludDMyX3QgKnJl ZnMgPSBnX25ldyh1aW50MzJfdCwgbnJfc2Vncyk7CisgICAgaW50IHByb3QgPSB0b19kb21haW4g PyBQUk9UX1dSSVRFIDogUFJPVF9SRUFEOworICAgIHZvaWQgKnBhZ2VzOworICAgIHVuc2lnbmVk IGludCBpOworCisgICAgZm9yIChpID0gMDsgaSA8IG5yX3NlZ3M7IGkrKykgeworICAgICAgICBY ZW5HcmFudENvcHlTZWdtZW50ICpzZWcgPSAmc2Vnc1tpXTsKKworICAgICAgICByZWZzW2ldID0g dG9fZG9tYWluID8KKyAgICAgICAgICAgIHNlZy0+ZGVzdC5mb3JlaWduLnJlZiA6IHNlZy0+c291 cmNlLmZvcmVpZ24ucmVmOworICAgIH0KKworICAgIHBhZ2VzID0geGVuZ250dGFiX21hcF9kb21h aW5fZ3JhbnRfcmVmcyh4ZW5kZXYtPmdudHRhYmRldiwgbnJfc2VncywKKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeGVuX2RvbWlkLCByZWZzLCBwcm90KTsKKyAg ICBpZiAoIXBhZ2VzKSB7CisgICAgICAgIHhlbl9wdl9wcmludGYoeGVuZGV2LCAwLAorICAgICAg ICAgICAgICAgICAgICAgICJ4ZW5nbnR0YWJfbWFwX2RvbWFpbl9ncmFudF9yZWZzIGZhaWxlZDog JXNcbiIsCisgICAgICAgICAgICAgICAgICAgICAgc3RyZXJyb3IoZXJybm8pKTsKKyAgICAgICAg Z19mcmVlKHJlZnMpOworICAgICAgICByZXR1cm4gLTE7CisgICAgfQorCisgICAgZm9yIChpID0g MDsgaSA8IG5yX3NlZ3M7IGkrKykgeworICAgICAgICBYZW5HcmFudENvcHlTZWdtZW50ICpzZWcg PSAmc2Vnc1tpXTsKKyAgICAgICAgdm9pZCAqcGFnZSA9IHBhZ2VzICsgKGkgKiBYQ19QQUdFX1NJ WkUpOworCisgICAgICAgIGlmICh0b19kb21haW4pIHsKKyAgICAgICAgICAgIG1lbWNweShwYWdl ICsgc2VnLT5kZXN0LmZvcmVpZ24ub2Zmc2V0LCBzZWctPnNvdXJjZS52aXJ0LAorICAgICAgICAg ICAgICAgICAgIHNlZy0+bGVuKTsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIG1lbWNw eShzZWctPmRlc3QudmlydCwgcGFnZSArIHNlZy0+c291cmNlLmZvcmVpZ24ub2Zmc2V0LAorICAg ICAgICAgICAgICAgICAgIHNlZy0+bGVuKTsKKyAgICAgICAgfQorICAgIH0KKworICAgIGlmICh4 ZW5nbnR0YWJfdW5tYXAoeGVuZGV2LT5nbnR0YWJkZXYsIHBhZ2VzLCBucl9zZWdzKSkgeworICAg ICAgICB4ZW5fcHZfcHJpbnRmKHhlbmRldiwgMCwgInhlbmdudHRhYl91bm1hcCBmYWlsZWQ6ICVz XG4iLAorICAgICAgICAgICAgICAgICAgICAgIHN0cmVycm9yKGVycm5vKSk7CisgICAgfQorCisg ICAgZ19mcmVlKHJlZnMpOworICAgIHJldHVybiAwOworfQorCiBpbnQgeGVuX2JlX2NvcHlfZ3Jh bnRfcmVmcyhzdHJ1Y3QgWGVuRGV2aWNlICp4ZW5kZXYsCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICBib29sIHRvX2RvbWFpbiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFhlbkdyYW50 Q29weVNlZ21lbnQgc2Vnc1tdLApAQCAtMTU3LDYgKzIwNiwxMCBAQCBpbnQgeGVuX2JlX2NvcHlf Z3JhbnRfcmVmcyhzdHJ1Y3QgWGVuRGV2aWNlICp4ZW5kZXYsCiAKICAgICBhc3NlcnQoeGVuZGV2 LT5vcHMtPmZsYWdzICYgREVWT1BTX0ZMQUdfTkVFRF9HTlRERVYpOwogCisgICAgaWYgKCF4ZW5f ZmVhdHVyZV9ncmFudF9jb3B5KSB7CisgICAgICAgIHJldHVybiBjb21wYXRfY29weV9ncmFudF9y ZWZzKHhlbmRldiwgdG9fZG9tYWluLCBzZWdzLCBucl9zZWdzKTsKKyAgICB9CisKICAgICB4ZW5n bnR0YWJfc2VncyA9IGdfbmV3MCh4ZW5nbnR0YWJfZ3JhbnRfY29weV9zZWdtZW50X3QsIG5yX3Nl Z3MpOwogCiAgICAgZm9yIChpID0gMDsgaSA8IG5yX3NlZ3M7IGkrKykgewotLSAKMS45LjEKCgpf X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpYZW4tZGV2ZWwg bWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3Rz LnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8veGVuLWRldmVs