From mboxrd@z Thu Jan 1 00:00:00 1970 From: Igor Druzhinin Subject: [PATCH v2 2/4] xen/mapcache: add an ability to create dummy mappings Date: Tue, 4 Jul 2017 16:47:45 +0100 Message-ID: <1499183267-28623-3-git-send-email-igor.druzhinin@citrix.com> References: <1499183267-28623-1-git-send-email-igor.druzhinin@citrix.com> 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 1dSQ3j-0003K5-Gc for xen-devel@lists.xenproject.org; Tue, 04 Jul 2017 15:48:15 +0000 In-Reply-To: <1499183267-28623-1-git-send-email-igor.druzhinin@citrix.com> 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, qemu-devel@nongnu.org Cc: anthony.perard@citrix.com, Igor Druzhinin , sstabellini@kernel.org, paul.durrant@citrix.com, pbonzini@redhat.com List-Id: xen-devel@lists.xenproject.org RHVtbXlzIGFyZSBzaW1wbGUgYW5vbnltb3VzIG1hcHBpbmdzIHRoYXQgYXJlIHBsYWNlZCBpbnN0 ZWFkCm9mIHJlZ3VsYXIgZm9yZWlnbiBtYXBwaW5ncyBpbiBjZXJ0YWluIHNpdHVhdGlvbnMgd2hl biB3ZSBuZWVkCnRvIHBvc3Rwb25lIHRoZSBhY3R1YWwgbWFwcGluZyBidXQgc3RpbGwgaGF2ZSB0 byBnaXZlIGEKbWVtb3J5IHJlZ2lvbiB0byBRRU1VIHRvIHBsYXkgd2l0aC4KClRoaXMgaXMgcGxh bm5lZCB0byBiZSB1c2VkIGZvciByZXN0b3JlIG9uIFhlbi4KClNpZ25lZC1vZmYtYnk6IElnb3Ig RHJ1emhpbmluIDxpZ29yLmRydXpoaW5pbkBjaXRyaXguY29tPgotLS0KIGh3L2kzODYveGVuL3hl bi1tYXBjYWNoZS5jIHwgNDAgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0t LQogMSBmaWxlIGNoYW5nZWQsIDMyIGluc2VydGlvbnMoKyksIDggZGVsZXRpb25zKC0pCgpkaWZm IC0tZ2l0IGEvaHcvaTM4Ni94ZW4veGVuLW1hcGNhY2hlLmMgYi9ody9pMzg2L3hlbi94ZW4tbWFw Y2FjaGUuYwppbmRleCBlNjAxNTZjLi5jZDRlNzQ2IDEwMDY0NAotLS0gYS9ody9pMzg2L3hlbi94 ZW4tbWFwY2FjaGUuYworKysgYi9ody9pMzg2L3hlbi94ZW4tbWFwY2FjaGUuYwpAQCAtNTMsNiAr NTMsOCBAQCB0eXBlZGVmIHN0cnVjdCBNYXBDYWNoZUVudHJ5IHsKICAgICB1aW50OF90ICp2YWRk cl9iYXNlOwogICAgIHVuc2lnbmVkIGxvbmcgKnZhbGlkX21hcHBpbmc7CiAgICAgdWludDhfdCBs b2NrOworI2RlZmluZSBYRU5fTUFQQ0FDSEVfRU5UUllfRFVNTVkgKDEgPDwgMCkKKyAgICB1aW50 OF90IGZsYWdzOwogICAgIGh3YWRkciBzaXplOwogICAgIHN0cnVjdCBNYXBDYWNoZUVudHJ5ICpu ZXh0OwogfSBNYXBDYWNoZUVudHJ5OwpAQCAtMTUwLDcgKzE1Miw4IEBAIHZvaWQgeGVuX21hcF9j YWNoZV9pbml0KHBoeXNfb2Zmc2V0X3RvX2dhZGRyX3QgZiwgdm9pZCAqb3BhcXVlKQogCiBzdGF0 aWMgdm9pZCB4ZW5fcmVtYXBfYnVja2V0KE1hcENhY2hlRW50cnkgKmVudHJ5LAogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBod2FkZHIgc2l6ZSwKLSAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgaHdhZGRyIGFkZHJlc3NfaW5kZXgpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg IGh3YWRkciBhZGRyZXNzX2luZGV4LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib29s IGR1bW15KQogewogICAgIHVpbnQ4X3QgKnZhZGRyX2Jhc2U7CiAgICAgeGVuX3Bmbl90ICpwZm5z OwpAQCAtMTc3LDExICsxODAsMjcgQEAgc3RhdGljIHZvaWQgeGVuX3JlbWFwX2J1Y2tldChNYXBD YWNoZUVudHJ5ICplbnRyeSwKICAgICAgICAgcGZuc1tpXSA9IChhZGRyZXNzX2luZGV4IDw8IChN Q0FDSEVfQlVDS0VUX1NISUZULVhDX1BBR0VfU0hJRlQpKSArIGk7CiAgICAgfQogCi0gICAgdmFk ZHJfYmFzZSA9IHhlbmZvcmVpZ25tZW1vcnlfbWFwKHhlbl9mbWVtLCB4ZW5fZG9taWQsIFBST1Rf UkVBRHxQUk9UX1dSSVRFLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBu Yl9wZm4sIHBmbnMsIGVycik7Ci0gICAgaWYgKHZhZGRyX2Jhc2UgPT0gTlVMTCkgewotICAgICAg ICBwZXJyb3IoInhlbmZvcmVpZ25tZW1vcnlfbWFwIik7Ci0gICAgICAgIGV4aXQoLTEpOworICAg IGlmICghZHVtbXkpIHsKKyAgICAgICAgdmFkZHJfYmFzZSA9IHhlbmZvcmVpZ25tZW1vcnlfbWFw KHhlbl9mbWVtLCB4ZW5fZG9taWQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgUFJPVF9SRUFEfFBST1RfV1JJVEUsCisgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgbmJfcGZuLCBwZm5zLCBlcnIpOworICAgICAgICBpZiAodmFkZHJf YmFzZSA9PSBOVUxMKSB7CisgICAgICAgICAgICBwZXJyb3IoInhlbmZvcmVpZ25tZW1vcnlfbWFw Iik7CisgICAgICAgICAgICBleGl0KC0xKTsKKyAgICAgICAgfQorICAgICAgICBlbnRyeS0+Zmxh Z3MgJj0gfihYRU5fTUFQQ0FDSEVfRU5UUllfRFVNTVkpOworICAgIH0gZWxzZSB7CisgICAgICAg IC8qCisgICAgICAgICAqIFdlIGNyZWF0ZSBkdW1teSBtYXBwaW5ncyB3aGVyZSB3ZSBhcmUgdW5h YmxlIHRvIGNyZWF0ZSBhIGZvcmVpZ24KKyAgICAgICAgICogbWFwcGluZyBpbW1lZGlhdGVseSBk dWUgdG8gY2VydGFpbiBjaXJjdW1zdGFuY2VzIChpLmUuIG9uIHJlc3VtZSBub3cpCisgICAgICAg ICAqLworICAgICAgICB2YWRkcl9iYXNlID0gbW1hcChOVUxMLCBzaXplLCBQUk9UX1JFQUR8UFJP VF9XUklURSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgTUFQX0FOT058TUFQX1NIQVJFRCwg LTEsIDApOworICAgICAgICBpZiAodmFkZHJfYmFzZSA9PSBOVUxMKSB7CisgICAgICAgICAgICBw ZXJyb3IoIm1tYXAiKTsKKyAgICAgICAgICAgIGV4aXQoLTEpOworICAgICAgICB9CisgICAgICAg IGVudHJ5LT5mbGFncyB8PSBYRU5fTUFQQ0FDSEVfRU5UUllfRFVNTVk7CiAgICAgfQogCiAgICAg ZW50cnktPnZhZGRyX2Jhc2UgPSB2YWRkcl9iYXNlOwpAQCAtMjExLDYgKzIzMCw3IEBAIHN0YXRp YyB1aW50OF90ICp4ZW5fbWFwX2NhY2hlX3VubG9ja2VkKGh3YWRkciBwaHlzX2FkZHIsIGh3YWRk ciBzaXplLAogICAgIGh3YWRkciBjYWNoZV9zaXplID0gc2l6ZTsKICAgICBod2FkZHIgdGVzdF9i aXRfc2l6ZTsKICAgICBib29sIHRyYW5zbGF0ZWQgPSBmYWxzZTsKKyAgICBib29sIGR1bW15ID0g ZmFsc2U7CiAKIHRyeWFnYWluOgogICAgIGFkZHJlc3NfaW5kZXggID0gcGh5c19hZGRyID4+IE1D QUNIRV9CVUNLRVRfU0hJRlQ7CkBAIC0yNjIsMTQgKzI4MiwxNCBAQCB0cnlhZ2FpbjoKICAgICBp ZiAoIWVudHJ5KSB7CiAgICAgICAgIGVudHJ5ID0gZ19tYWxsb2MwKHNpemVvZiAoTWFwQ2FjaGVF bnRyeSkpOwogICAgICAgICBwZW50cnktPm5leHQgPSBlbnRyeTsKLSAgICAgICAgeGVuX3JlbWFw X2J1Y2tldChlbnRyeSwgY2FjaGVfc2l6ZSwgYWRkcmVzc19pbmRleCk7CisgICAgICAgIHhlbl9y ZW1hcF9idWNrZXQoZW50cnksIGNhY2hlX3NpemUsIGFkZHJlc3NfaW5kZXgsIGR1bW15KTsKICAg ICB9IGVsc2UgaWYgKCFlbnRyeS0+bG9jaykgewogICAgICAgICBpZiAoIWVudHJ5LT52YWRkcl9i YXNlIHx8IGVudHJ5LT5wYWRkcl9pbmRleCAhPSBhZGRyZXNzX2luZGV4IHx8CiAgICAgICAgICAg ICAgICAgZW50cnktPnNpemUgIT0gY2FjaGVfc2l6ZSB8fAogICAgICAgICAgICAgICAgICF0ZXN0 X2JpdHMoYWRkcmVzc19vZmZzZXQgPj4gWENfUEFHRV9TSElGVCwKICAgICAgICAgICAgICAgICAg ICAgdGVzdF9iaXRfc2l6ZSA+PiBYQ19QQUdFX1NISUZULAogICAgICAgICAgICAgICAgICAgICBl bnRyeS0+dmFsaWRfbWFwcGluZykpIHsKLSAgICAgICAgICAgIHhlbl9yZW1hcF9idWNrZXQoZW50 cnksIGNhY2hlX3NpemUsIGFkZHJlc3NfaW5kZXgpOworICAgICAgICAgICAgeGVuX3JlbWFwX2J1 Y2tldChlbnRyeSwgY2FjaGVfc2l6ZSwgYWRkcmVzc19pbmRleCwgZHVtbXkpOwogICAgICAgICB9 CiAgICAgfQogCkBAIC0yODIsNiArMzAyLDEwIEBAIHRyeWFnYWluOgogICAgICAgICAgICAgdHJh bnNsYXRlZCA9IHRydWU7CiAgICAgICAgICAgICBnb3RvIHRyeWFnYWluOwogICAgICAgICB9Cisg ICAgICAgIGlmICghZHVtbXkgJiYgcnVuc3RhdGVfY2hlY2soUlVOX1NUQVRFX0lOTUlHUkFURSkp IHsKKyAgICAgICAgICAgIGR1bW15ID0gdHJ1ZTsKKyAgICAgICAgICAgIGdvdG8gdHJ5YWdhaW47 CisgICAgICAgIH0KICAgICAgICAgdHJhY2VfeGVuX21hcF9jYWNoZV9yZXR1cm4oTlVMTCk7CiAg ICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KLS0gCjIuNy40CgoKX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX18KWGVuLWRldmVsIG1haWxpbmcgbGlzdApYZW4t ZGV2ZWxAbGlzdHMueGVuLm9yZwpodHRwczovL2xpc3RzLnhlbi5vcmcveGVuLWRldmVsCg==