From mboxrd@z Thu Jan 1 00:00:00 1970 From: Julien Grall Subject: [PATCH 3/8] xen: Use typesafe gfn in xenmem_add_to_physmap_one Date: Tue, 14 Jun 2016 13:07:02 +0100 Message-ID: <1465906027-16614-4-git-send-email-julien.grall@arm.com> References: <1465906027-16614-1-git-send-email-julien.grall@arm.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1465906027-16614-1-git-send-email-julien.grall@arm.com> 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: sstabellini@kernel.org, Wei Liu , George Dunlap , Andrew Cooper , Ian Jackson , Tim Deegan , Julien Grall , Jan Beulich , wei.chen@linaro.org List-Id: xen-devel@lists.xenproject.org VGhlIHg4NiB2ZXJzaW9uIG9mIHRoZSBmdW5jdGlvbiB4ZW5tZW1fYWRkX3RvX3BoeXNtYXBfb25l IGNvbnRhaW5zCnZhcmlhYmxlIG5hbWUgZ3BmbiBhbmQgZ2ZuIHdoaWNoIG1ha2UgdGhlIGNvZGUg dmVyeSBjb25mdXNpbmcuCkkgaGF2ZSBsZWZ0IHVuY2hhbmdlZCBmb3Igbm93LgoKQWxzbywgcmVu YW1lIGdwZm4gdG8gZ2ZuIGluIHRoZSBBUk0gdmVyc2lvbiBhcyB0aGUgbGF0dGVyIGlzIHRoZSBj b3JyZWN0CmFjcm9ueW0gZm9yIGEgZ3Vlc3QgcGh5c2ljYWwgZnJhbWUuCgpGaW5hbGx5LCByZW1v dmUgdGhlIHRyYWlsaW5nIHdoaXRlc3BhY2UgYXJvdW5kIHRoZSBjaGFuZ2VzLgoKU2lnbmVkLW9m Zi1ieTogSnVsaWVuIEdyYWxsIDxqdWxpZW4uZ3JhbGxAYXJtLmNvbT4KCi0tLQpDYzogU3RlZmFu byBTdGFiZWxsaW5pIDxzc3RhYmVsbGluaUBrZXJuZWwub3JnPgpDYzogSmFuIEJldWxpY2ggPGpi ZXVsaWNoQHN1c2UuY29tPgpDYzogQW5kcmV3IENvb3BlciA8YW5kcmV3LmNvb3BlcjNAY2l0cml4 LmNvbT4KQ2M6IEdlb3JnZSBEdW5sYXAgPGdlb3JnZS5kdW5sYXBAZXUuY2l0cml4LmNvbT4KQ2M6 IElhbiBKYWNrc29uIDxpYW4uamFja3NvbkBldS5jaXRyaXguY29tPgpDYzogS29ucmFkIFJ6ZXN6 dXRlayBXaWxrIDxrb25yYWQud2lsa0BvcmFjbGUuY29tPgpDYzogVGltIERlZWdhbiA8dGltQHhl bi5vcmc+CkNjOiBXZWkgTGl1IDx3ZWkubGl1MkBjaXRyaXguY29tPgotLS0KIHhlbi9hcmNoL2Fy bS9tbS5jICAgIHwgMTAgKysrKystLS0tLQogeGVuL2FyY2gveDg2L21tLmMgICAgfCAxNSArKysr KysrLS0tLS0tLS0KIHhlbi9jb21tb24vbWVtb3J5LmMgIHwgIDYgKysrLS0tCiB4ZW4vaW5jbHVk ZS94ZW4vbW0uaCB8ICAyICstCiA0IGZpbGVzIGNoYW5nZWQsIDE2IGluc2VydGlvbnMoKyksIDE3 IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3hlbi9hcmNoL2FybS9tbS5jIGIveGVuL2FyY2gv YXJtL21tLmMKaW5kZXggNWFiOWI3NS4uNjg4MmQ1NCAxMDA2NDQKLS0tIGEveGVuL2FyY2gvYXJt L21tLmMKKysrIGIveGVuL2FyY2gvYXJtL21tLmMKQEAgLTEwNDYsNyArMTA0Niw3IEBAIGludCB4 ZW5tZW1fYWRkX3RvX3BoeXNtYXBfb25lKAogICAgIHVuc2lnbmVkIGludCBzcGFjZSwKICAgICB1 bmlvbiB4ZW5fYWRkX3RvX3BoeXNtYXBfYmF0Y2hfZXh0cmEgZXh0cmEsCiAgICAgdW5zaWduZWQg bG9uZyBpZHgsCi0gICAgeGVuX3Bmbl90IGdwZm4pCisgICAgZ2ZuX3QgZ2ZuKQogewogICAgIHVu c2lnbmVkIGxvbmcgbWZuID0gMDsKICAgICBpbnQgcmM7CkBAIC0xMDgxLDggKzEwODEsOCBAQCBp bnQgeGVubWVtX2FkZF90b19waHlzbWFwX29uZSgKICAgICAgICAgICAgIGVsc2UKICAgICAgICAg ICAgICAgICByZXR1cm4gLUVJTlZBTDsKICAgICAgICAgfQotICAgICAgICAKLSAgICAgICAgZC0+ YXJjaC5ncmFudF90YWJsZV9ncGZuW2lkeF0gPSBncGZuOworCisgICAgICAgIGQtPmFyY2guZ3Jh bnRfdGFibGVfZ3BmbltpZHhdID0gZ2ZuX3goZ2ZuKTsKIAogICAgICAgICB0ID0gcDJtX3JhbV9y dzsKIApAQCAtMTE0NSw3ICsxMTQ1LDcgQEAgaW50IHhlbm1lbV9hZGRfdG9fcGh5c21hcF9vbmUo CiAgICAgICAgIGlmICggZXh0cmEucmVzMCApCiAgICAgICAgICAgICByZXR1cm4gLUVPUE5PVFNV UFA7CiAKLSAgICAgICAgcmMgPSBtYXBfZGV2X21taW9fcmVnaW9uKGQsIGdwZm4sIDEsIGlkeCk7 CisgICAgICAgIHJjID0gbWFwX2Rldl9tbWlvX3JlZ2lvbihkLCBnZm5feChnZm4pLCAxLCBpZHgp OwogICAgICAgICByZXR1cm4gcmM7CiAKICAgICBkZWZhdWx0OgpAQCAtMTE1Myw3ICsxMTUzLDcg QEAgaW50IHhlbm1lbV9hZGRfdG9fcGh5c21hcF9vbmUoCiAgICAgfQogCiAgICAgLyogTWFwIGF0 IG5ldyBsb2NhdGlvbi4gKi8KLSAgICByYyA9IGd1ZXN0X3BoeXNtYXBfYWRkX2VudHJ5KGQsIF9n Zm4oZ3BmbiksIF9tZm4obWZuKSwgMCwgdCk7CisgICAgcmMgPSBndWVzdF9waHlzbWFwX2FkZF9l bnRyeShkLCBnZm4sIF9tZm4obWZuKSwgMCwgdCk7CiAKICAgICAvKiBJZiB3ZSBmYWlsIHRvIGFk ZCB0aGUgbWFwcGluZywgd2UgbmVlZCB0byBkcm9wIHRoZSByZWZlcmVuY2Ugd2UKICAgICAgKiB0 b29rIGVhcmxpZXIgb24gZm9yZWlnbiBwYWdlcyAqLwpkaWZmIC0tZ2l0IGEveGVuL2FyY2gveDg2 L21tLmMgYi94ZW4vYXJjaC94ODYvbW0uYwppbmRleCBhNmUwN2YyLi5hOTQ5OGVjIDEwMDY0NAot LS0gYS94ZW4vYXJjaC94ODYvbW0uYworKysgYi94ZW4vYXJjaC94ODYvbW0uYwpAQCAtNDc3Miw3 ICs0NzcyLDcgQEAgaW50IHhlbm1lbV9hZGRfdG9fcGh5c21hcF9vbmUoCiAgICAgdW5zaWduZWQg aW50IHNwYWNlLAogICAgIHVuaW9uIHhlbl9hZGRfdG9fcGh5c21hcF9iYXRjaF9leHRyYSBleHRy YSwKICAgICB1bnNpZ25lZCBsb25nIGlkeCwKLSAgICB4ZW5fcGZuX3QgZ3BmbikKKyAgICBnZm5f dCBncGZuKQogewogICAgIHN0cnVjdCBwYWdlX2luZm8gKnBhZ2UgPSBOVUxMOwogICAgIHVuc2ln bmVkIGxvbmcgZ2ZuID0gMDsgLyogZ2NjIC4uLiAqLwpAQCAtNDgzMSw3ICs0ODMxLDcgQEAgaW50 IHhlbm1lbV9hZGRfdG9fcGh5c21hcF9vbmUoCiAgICAgICAgICAgICBicmVhazsKICAgICAgICAg fQogICAgICAgICBjYXNlIFhFTk1BUFNQQUNFX2dtZm5fZm9yZWlnbjoKLSAgICAgICAgICAgIHJl dHVybiBwMm1fYWRkX2ZvcmVpZ24oZCwgaWR4LCBncGZuLCBleHRyYS5mb3JlaWduX2RvbWlkKTsK KyAgICAgICAgICAgIHJldHVybiBwMm1fYWRkX2ZvcmVpZ24oZCwgaWR4LCBnZm5feChncGZuKSwg ZXh0cmEuZm9yZWlnbl9kb21pZCk7CiAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgICBicmVh azsKICAgICB9CkBAIC00ODQ2LDE5ICs0ODQ2LDE4IEBAIGludCB4ZW5tZW1fYWRkX3RvX3BoeXNt YXBfb25lKAogICAgIH0KIAogICAgIC8qIFJlbW92ZSBwcmV2aW91c2x5IG1hcHBlZCBwYWdlIGlm IGl0IHdhcyBwcmVzZW50LiAqLwotICAgIHByZXZfbWZuID0gbWZuX3goZ2V0X2dmbihkLCBncGZu LCAmcDJtdCkpOworICAgIHByZXZfbWZuID0gbWZuX3goZ2V0X2dmbihkLCBnZm5feChncGZuKSwg JnAybXQpKTsKICAgICBpZiAoIG1mbl92YWxpZChwcmV2X21mbikgKQogICAgIHsKICAgICAgICAg aWYgKCBpc194ZW5faGVhcF9tZm4ocHJldl9tZm4pICkKICAgICAgICAgICAgIC8qIFhlbiBoZWFw IGZyYW1lcyBhcmUgc2ltcGx5IHVuaG9va2VkIGZyb20gdGhpcyBwaHlzIHNsb3QuICovCi0gICAg ICAgICAgICBndWVzdF9waHlzbWFwX3JlbW92ZV9wYWdlKGQsIF9nZm4oZ3BmbiksIF9tZm4ocHJl dl9tZm4pLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQQUdFX09SREVS XzRLKTsKKyAgICAgICAgICAgIGd1ZXN0X3BoeXNtYXBfcmVtb3ZlX3BhZ2UoZCwgZ3BmbiwgX21m bihwcmV2X21mbiksIFBBR0VfT1JERVJfNEspOwogICAgICAgICBlbHNlCiAgICAgICAgICAgICAv KiBOb3JtYWwgZG9tYWluIG1lbW9yeSBpcyBmcmVlZCwgdG8gYXZvaWQgbGVha2luZyBtZW1vcnku ICovCi0gICAgICAgICAgICBndWVzdF9yZW1vdmVfcGFnZShkLCBncGZuKTsKKyAgICAgICAgICAg IGd1ZXN0X3JlbW92ZV9wYWdlKGQsIGdmbl94KGdwZm4pKTsKICAgICB9CiAgICAgLyogSW4gdGhl IFhFTk1BUFNQQUNFX2dtZm4gY2FzZSB3ZSBzdGlsbCBob2xkIGEgcmVmIG9uIHRoZSBvbGQgcGFn ZS4gKi8KLSAgICBwdXRfZ2ZuKGQsIGdwZm4pOworICAgIHB1dF9nZm4oZCwgZ2ZuX3goZ3Bmbikp OwogCiAgICAgLyogVW5tYXAgZnJvbSBvbGQgbG9jYXRpb24sIGlmIGFueS4gKi8KICAgICBvbGRf Z3BmbiA9IGdldF9ncGZuX2Zyb21fbWZuKG1mbik7CkBAIC00ODY5LDcgKzQ4NjgsNyBAQCBpbnQg eGVubWVtX2FkZF90b19waHlzbWFwX29uZSgKICAgICAgICAgZ3Vlc3RfcGh5c21hcF9yZW1vdmVf cGFnZShkLCBfZ2ZuKG9sZF9ncGZuKSwgX21mbihtZm4pLCBQQUdFX09SREVSXzRLKTsKIAogICAg IC8qIE1hcCBhdCBuZXcgbG9jYXRpb24uICovCi0gICAgcmMgPSBndWVzdF9waHlzbWFwX2FkZF9w YWdlKGQsIF9nZm4oZ3BmbiksIF9tZm4obWZuKSwgUEFHRV9PUkRFUl80Syk7CisgICAgcmMgPSBn dWVzdF9waHlzbWFwX2FkZF9wYWdlKGQsIGdwZm4sIF9tZm4obWZuKSwgUEFHRV9PUkRFUl80Syk7 CiAKICAgICAvKiBJbiB0aGUgWEVOTUFQU1BBQ0VfZ21mbiwgd2UgdG9vayBhIHJlZiBvZiB0aGUg Z2ZuIGF0IHRoZSB0b3AgKi8KICAgICBpZiAoIHNwYWNlID09IFhFTk1BUFNQQUNFX2dtZm4gfHwg c3BhY2UgPT0gWEVOTUFQU1BBQ0VfZ21mbl9yYW5nZSApCmRpZmYgLS1naXQgYS94ZW4vY29tbW9u L21lbW9yeS5jIGIveGVuL2NvbW1vbi9tZW1vcnkuYwppbmRleCAyMjRhN2IyLi4wYjczYzA2IDEw MDY0NAotLS0gYS94ZW4vY29tbW9uL21lbW9yeS5jCisrKyBiL3hlbi9jb21tb24vbWVtb3J5LmMK QEAgLTY0OSw3ICs2NDksNyBAQCBzdGF0aWMgaW50IHhlbm1lbV9hZGRfdG9fcGh5c21hcChzdHJ1 Y3QgZG9tYWluICpkLAogCiAgICAgaWYgKCB4YXRwLT5zcGFjZSAhPSBYRU5NQVBTUEFDRV9nbWZu X3JhbmdlICkKICAgICAgICAgcmV0dXJuIHhlbm1lbV9hZGRfdG9fcGh5c21hcF9vbmUoZCwgeGF0 cC0+c3BhY2UsIGV4dHJhLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICB4YXRwLT5pZHgsIHhhdHAtPmdwZm4pOworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICB4YXRwLT5pZHgsIF9nZm4oeGF0cC0+Z3BmbikpOwogCiAgICAgaWYgKCB4YXRw LT5zaXplIDwgc3RhcnQgKQogICAgICAgICByZXR1cm4gLUVJTFNFUTsKQEAgLTY2Niw3ICs2NjYs NyBAQCBzdGF0aWMgaW50IHhlbm1lbV9hZGRfdG9fcGh5c21hcChzdHJ1Y3QgZG9tYWluICpkLAog ICAgIHdoaWxlICggeGF0cC0+c2l6ZSA+IGRvbmUgKQogICAgIHsKICAgICAgICAgcmMgPSB4ZW5t ZW1fYWRkX3RvX3BoeXNtYXBfb25lKGQsIHhhdHAtPnNwYWNlLCBleHRyYSwKLSAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHhhdHAtPmlkeCwgeGF0cC0+Z3Bmbik7CisgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4YXRwLT5pZHgsIF9nZm4oeGF0cC0+ Z3BmbikpOwogICAgICAgICBpZiAoIHJjIDwgMCApCiAgICAgICAgICAgICBicmVhazsKIApAQCAt NzI3LDcgKzcyNyw3IEBAIHN0YXRpYyBpbnQgeGVubWVtX2FkZF90b19waHlzbWFwX2JhdGNoKHN0 cnVjdCBkb21haW4gKmQsCiAKICAgICAgICAgcmMgPSB4ZW5tZW1fYWRkX3RvX3BoeXNtYXBfb25l KGQsIHhhdHBiLT5zcGFjZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IHhhdHBiLT51LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWR4LCBn cGZuKTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkeCwgX2dmbihn cGZuKSk7CiAKICAgICAgICAgaWYgKCB1bmxpa2VseShfX2NvcHlfdG9fZ3Vlc3Rfb2Zmc2V0KHhh dHBiLT5lcnJzLCAwLCAmcmMsIDEpKSApCiAgICAgICAgIHsKZGlmZiAtLWdpdCBhL3hlbi9pbmNs dWRlL3hlbi9tbS5oIGIveGVuL2luY2x1ZGUveGVuL21tLmgKaW5kZXggMTY4MmQxZi4uYTIyYzRj MiAxMDA2NDQKLS0tIGEveGVuL2luY2x1ZGUveGVuL21tLmgKKysrIGIveGVuL2luY2x1ZGUveGVu L21tLmgKQEAgLTUwNyw3ICs1MDcsNyBAQCB2b2lkIHNjcnViX29uZV9wYWdlKHN0cnVjdCBwYWdl X2luZm8gKik7CiAKIGludCB4ZW5tZW1fYWRkX3RvX3BoeXNtYXBfb25lKHN0cnVjdCBkb21haW4g KmQsIHVuc2lnbmVkIGludCBzcGFjZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVu aW9uIHhlbl9hZGRfdG9fcGh5c21hcF9iYXRjaF9leHRyYSBleHRyYSwKLSAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHVuc2lnbmVkIGxvbmcgaWR4LCB4ZW5fcGZuX3QgZ3Bmbik7CisgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBsb25nIGlkeCwgZ2ZuX3QgZ2ZuKTsK IAogLyogUmV0dXJucyAxIG9uIHN1Y2Nlc3MsIDAgb24gZXJyb3IsIG5lZ2F0aXZlIGlmIHRoZSBy aW5nCiAgKiBmb3IgZXZlbnQgcHJvcGFnYXRpb24gaXMgZnVsbCBpbiB0aGUgcHJlc2VuY2Ugb2Yg cGFnaW5nICovCi0tIAoxLjkuMQoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fClhlbi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhlbi5v cmcKaHR0cDovL2xpc3RzLnhlbi5vcmcveGVuLWRldmVsCg==