From mboxrd@z Thu Jan 1 00:00:00 1970 From: Stefano Stabellini Subject: Re: [PATCH v3 4/8] xen: Use typesafe gfn in xenmem_add_to_physmap_one Date: Thu, 23 Jun 2016 11:20:48 +0100 (BST) Message-ID: References: <1466515243-27264-1-git-send-email-julien.grall@arm.com> <1466515243-27264-5-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: <1466515243-27264-5-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: Julien Grall Cc: Tim Deegan , sstabellini@kernel.org, Wei Liu , George Dunlap , Andrew Cooper , Ian Jackson , xen-devel@lists.xen.org, Jan Beulich List-Id: xen-devel@lists.xenproject.org T24gVHVlLCAyMSBKdW4gMjAxNiwgSnVsaWVuIEdyYWxsIHdyb3RlOgo+IFRoZSB4ODYgdmVyc2lv biBvZiB0aGUgZnVuY3Rpb24geGVubWVtX2FkZF90b19waHlzbWFwX29uZSBjb250YWlucwo+IHZh cmlhYmxlIG5hbWUgZ3BmbiBhbmQgZ2ZuIHdoaWNoIG1ha2UgdGhlIGNvZGUgdmVyeSBjb25mdXNp bmcuCj4gSSBoYXZlIGxlZnQgdW5jaGFuZ2VkIGZvciBub3cuCj4gCj4gQWxzbywgcmVuYW1lIGdw Zm4gdG8gZ2ZuIGluIHRoZSBBUk0gdmVyc2lvbiBhcyB0aGUgbGF0dGVyIGlzIHRoZSBjb3JyZWN0 Cj4gYWNyb255bSBmb3IgYSBndWVzdCBwaHlzaWNhbCBmcmFtZS4KPiAKPiBGaW5hbGx5LCByZW1v dmUgdGhlIHRyYWlsaW5nIHdoaXRlc3BhY2UgYXJvdW5kIHRoZSBjaGFuZ2VzLgo+IAo+IFNpZ25l ZC1vZmYtYnk6IEp1bGllbiBHcmFsbCA8anVsaWVuLmdyYWxsQGFybS5jb20+Cj4gQWNrZWQtYnk6 IEphbiBCZXVsaWNoIDxqYmV1bGljaEBzdXNlLmNvbT4KPiAKPiAtLS0KPiBDYzogU3RlZmFubyBT dGFiZWxsaW5pIDxzc3RhYmVsbGluaUBrZXJuZWwub3JnPgo+IENjOiBKYW4gQmV1bGljaCA8amJl dWxpY2hAc3VzZS5jb20+Cj4gQ2M6IEFuZHJldyBDb29wZXIgPGFuZHJldy5jb29wZXIzQGNpdHJp eC5jb20+Cj4gQ2M6IEdlb3JnZSBEdW5sYXAgPGdlb3JnZS5kdW5sYXBAZXUuY2l0cml4LmNvbT4K PiBDYzogSWFuIEphY2tzb24gPGlhbi5qYWNrc29uQGV1LmNpdHJpeC5jb20+Cj4gQ2M6IEtvbnJh ZCBSemVzenV0ZWsgV2lsayA8a29ucmFkLndpbGtAb3JhY2xlLmNvbT4KPiBDYzogVGltIERlZWdh biA8dGltQHhlbi5vcmc+Cj4gQ2M6IFdlaSBMaXUgPHdlaS5saXUyQGNpdHJpeC5jb20+Cj4gCj4g ICAgIENoYW5nZXMgaW4gdjM6Cj4gICAgICAgICAtIEFkZCBKYW4ncyBhY2tlZC1ieSBmb3Igbm9u LUFSTSBiaXRzCj4gLS0tCj4gIHhlbi9hcmNoL2FybS9tbS5jICAgIHwgMTAgKysrKystLS0tLQo+ ICB4ZW4vYXJjaC94ODYvbW0uYyAgICB8IDE1ICsrKysrKystLS0tLS0tLQo+ICB4ZW4vY29tbW9u L21lbW9yeS5jICB8ICA2ICsrKy0tLQo+ICB4ZW4vaW5jbHVkZS94ZW4vbW0uaCB8ICAyICstCj4g IDQgZmlsZXMgY2hhbmdlZCwgMTYgaW5zZXJ0aW9ucygrKSwgMTcgZGVsZXRpb25zKC0pCj4gCj4g ZGlmZiAtLWdpdCBhL3hlbi9hcmNoL2FybS9tbS5jIGIveGVuL2FyY2gvYXJtL21tLmMKPiBpbmRl eCA1YWI5Yjc1Li42ODgyZDU0IDEwMDY0NAo+IC0tLSBhL3hlbi9hcmNoL2FybS9tbS5jCj4gKysr IGIveGVuL2FyY2gvYXJtL21tLmMKPiBAQCAtMTA0Niw3ICsxMDQ2LDcgQEAgaW50IHhlbm1lbV9h ZGRfdG9fcGh5c21hcF9vbmUoCj4gICAgICB1bnNpZ25lZCBpbnQgc3BhY2UsCj4gICAgICB1bmlv biB4ZW5fYWRkX3RvX3BoeXNtYXBfYmF0Y2hfZXh0cmEgZXh0cmEsCj4gICAgICB1bnNpZ25lZCBs b25nIGlkeCwKPiAtICAgIHhlbl9wZm5fdCBncGZuKQo+ICsgICAgZ2ZuX3QgZ2ZuKQoKSSB0aGlu ayB0aGVyZSBpcyBhIHBvc3NpYmxlIGxvc3Mgb2YgaW5mb3JtYXRpb24gaGVyZTogeGVuX3Bmbl90 IGlzCmFsd2F5cyB1aW50NjRfdCBvbiBib3RoIEFSTSBhbmQgQVJNNjQsIHdoaWxlIGdmbl90IGlz IHVuc2lnbmVkIGxvbmcgd2l0aAppdHMgY3VycmVudCBkZWZpbml0aW9uLiBPciBhbSBJIG1pc3Np bmcgc29tZXRoaW5nPwoKSW4gZmFjdCwgZ2l2ZW4gdGhhdCBBUk0gc3VwcG9ydHMgTFBBRSwgc2hv dWxkbid0IGdmbiBieSBkZWZpbmVkIGFzCnhlbl9wZm5fdCBpbiB0ZXJtcyBvZiBzdG9yYWdlIHNp emUgKFRZUEVfU0FGRSh4ZW5fcGZuX3QsIGdmbikpID8KCgo+ICB7Cj4gICAgICB1bnNpZ25lZCBs b25nIG1mbiA9IDA7Cj4gICAgICBpbnQgcmM7Cj4gQEAgLTEwODEsOCArMTA4MSw4IEBAIGludCB4 ZW5tZW1fYWRkX3RvX3BoeXNtYXBfb25lKAo+ICAgICAgICAgICAgICBlbHNlCj4gICAgICAgICAg ICAgICAgICByZXR1cm4gLUVJTlZBTDsKPiAgICAgICAgICB9Cj4gLSAgICAgICAgCj4gLSAgICAg ICAgZC0+YXJjaC5ncmFudF90YWJsZV9ncGZuW2lkeF0gPSBncGZuOwo+ICsKPiArICAgICAgICBk LT5hcmNoLmdyYW50X3RhYmxlX2dwZm5baWR4XSA9IGdmbl94KGdmbik7CgpTaW1pbGFybHkgZ3Jh bnRfdGFibGVfZ3BmbiBpcyBhbiBhcnJheSBvZiB4ZW5fcGZuX3QgKHVpbnQ2NF90KSwgd2hpbGUK Z2ZuX3ggdW5ib3hlcyB0byB0aGUgc3RvcmFnZSBzaXplIG9mIGdmbiAodW5zaWduZWQgbG9uZyku CgoKPiAgICAgICAgICB0ID0gcDJtX3JhbV9ydzsKPiAgCj4gQEAgLTExNDUsNyArMTE0NSw3IEBA IGludCB4ZW5tZW1fYWRkX3RvX3BoeXNtYXBfb25lKAo+ICAgICAgICAgIGlmICggZXh0cmEucmVz MCApCj4gICAgICAgICAgICAgIHJldHVybiAtRU9QTk9UU1VQUDsKPiAgCj4gLSAgICAgICAgcmMg PSBtYXBfZGV2X21taW9fcmVnaW9uKGQsIGdwZm4sIDEsIGlkeCk7Cj4gKyAgICAgICAgcmMgPSBt YXBfZGV2X21taW9fcmVnaW9uKGQsIGdmbl94KGdmbiksIDEsIGlkeCk7Cj4gICAgICAgICAgcmV0 dXJuIHJjOwo+ICAKPiAgICAgIGRlZmF1bHQ6Cj4gQEAgLTExNTMsNyArMTE1Myw3IEBAIGludCB4 ZW5tZW1fYWRkX3RvX3BoeXNtYXBfb25lKAo+ICAgICAgfQo+ICAKPiAgICAgIC8qIE1hcCBhdCBu ZXcgbG9jYXRpb24uICovCj4gLSAgICByYyA9IGd1ZXN0X3BoeXNtYXBfYWRkX2VudHJ5KGQsIF9n Zm4oZ3BmbiksIF9tZm4obWZuKSwgMCwgdCk7Cj4gKyAgICByYyA9IGd1ZXN0X3BoeXNtYXBfYWRk X2VudHJ5KGQsIGdmbiwgX21mbihtZm4pLCAwLCB0KTsKPiAgCj4gICAgICAvKiBJZiB3ZSBmYWls IHRvIGFkZCB0aGUgbWFwcGluZywgd2UgbmVlZCB0byBkcm9wIHRoZSByZWZlcmVuY2Ugd2UKPiAg ICAgICAqIHRvb2sgZWFybGllciBvbiBmb3JlaWduIHBhZ2VzICovCj4gZGlmZiAtLWdpdCBhL3hl bi9hcmNoL3g4Ni9tbS5jIGIveGVuL2FyY2gveDg2L21tLmMKPiBpbmRleCA3ZmJjOTRlLi5kYmNm NmNiIDEwMDY0NAo+IC0tLSBhL3hlbi9hcmNoL3g4Ni9tbS5jCj4gKysrIGIveGVuL2FyY2gveDg2 L21tLmMKPiBAQCAtNDc3NSw3ICs0Nzc1LDcgQEAgaW50IHhlbm1lbV9hZGRfdG9fcGh5c21hcF9v bmUoCj4gICAgICB1bnNpZ25lZCBpbnQgc3BhY2UsCj4gICAgICB1bmlvbiB4ZW5fYWRkX3RvX3Bo eXNtYXBfYmF0Y2hfZXh0cmEgZXh0cmEsCj4gICAgICB1bnNpZ25lZCBsb25nIGlkeCwKPiAtICAg IHhlbl9wZm5fdCBncGZuKQo+ICsgICAgZ2ZuX3QgZ3BmbikKPiAgewo+ICAgICAgc3RydWN0IHBh Z2VfaW5mbyAqcGFnZSA9IE5VTEw7Cj4gICAgICB1bnNpZ25lZCBsb25nIGdmbiA9IDA7IC8qIGdj YyAuLi4gKi8KPiBAQCAtNDgzNCw3ICs0ODM0LDcgQEAgaW50IHhlbm1lbV9hZGRfdG9fcGh5c21h cF9vbmUoCj4gICAgICAgICAgICAgIGJyZWFrOwo+ICAgICAgICAgIH0KPiAgICAgICAgICBjYXNl IFhFTk1BUFNQQUNFX2dtZm5fZm9yZWlnbjoKPiAtICAgICAgICAgICAgcmV0dXJuIHAybV9hZGRf Zm9yZWlnbihkLCBpZHgsIGdwZm4sIGV4dHJhLmZvcmVpZ25fZG9taWQpOwo+ICsgICAgICAgICAg ICByZXR1cm4gcDJtX2FkZF9mb3JlaWduKGQsIGlkeCwgZ2ZuX3goZ3BmbiksIGV4dHJhLmZvcmVp Z25fZG9taWQpOwo+ICAgICAgICAgIGRlZmF1bHQ6Cj4gICAgICAgICAgICAgIGJyZWFrOwo+ICAg ICAgfQo+IEBAIC00ODQ5LDE5ICs0ODQ5LDE4IEBAIGludCB4ZW5tZW1fYWRkX3RvX3BoeXNtYXBf b25lKAo+ICAgICAgfQo+ICAKPiAgICAgIC8qIFJlbW92ZSBwcmV2aW91c2x5IG1hcHBlZCBwYWdl IGlmIGl0IHdhcyBwcmVzZW50LiAqLwo+IC0gICAgcHJldl9tZm4gPSBtZm5feChnZXRfZ2ZuKGQs IGdwZm4sICZwMm10KSk7Cj4gKyAgICBwcmV2X21mbiA9IG1mbl94KGdldF9nZm4oZCwgZ2ZuX3go Z3BmbiksICZwMm10KSk7Cj4gICAgICBpZiAoIG1mbl92YWxpZChwcmV2X21mbikgKQo+ICAgICAg ewo+ICAgICAgICAgIGlmICggaXNfeGVuX2hlYXBfbWZuKHByZXZfbWZuKSApCj4gICAgICAgICAg ICAgIC8qIFhlbiBoZWFwIGZyYW1lcyBhcmUgc2ltcGx5IHVuaG9va2VkIGZyb20gdGhpcyBwaHlz IHNsb3QuICovCj4gLSAgICAgICAgICAgIGd1ZXN0X3BoeXNtYXBfcmVtb3ZlX3BhZ2UoZCwgX2dm bihncGZuKSwgX21mbihwcmV2X21mbiksCj4gLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgUEFHRV9PUkRFUl80Syk7Cj4gKyAgICAgICAgICAgIGd1ZXN0X3BoeXNtYXBfcmVt b3ZlX3BhZ2UoZCwgZ3BmbiwgX21mbihwcmV2X21mbiksIFBBR0VfT1JERVJfNEspOwo+ICAgICAg ICAgIGVsc2UKPiAgICAgICAgICAgICAgLyogTm9ybWFsIGRvbWFpbiBtZW1vcnkgaXMgZnJlZWQs IHRvIGF2b2lkIGxlYWtpbmcgbWVtb3J5LiAqLwo+IC0gICAgICAgICAgICBndWVzdF9yZW1vdmVf cGFnZShkLCBncGZuKTsKPiArICAgICAgICAgICAgZ3Vlc3RfcmVtb3ZlX3BhZ2UoZCwgZ2ZuX3go Z3BmbikpOwo+ICAgICAgfQo+ICAgICAgLyogSW4gdGhlIFhFTk1BUFNQQUNFX2dtZm4gY2FzZSB3 ZSBzdGlsbCBob2xkIGEgcmVmIG9uIHRoZSBvbGQgcGFnZS4gKi8KPiAtICAgIHB1dF9nZm4oZCwg Z3Bmbik7Cj4gKyAgICBwdXRfZ2ZuKGQsIGdmbl94KGdwZm4pKTsKPiAgCj4gICAgICAvKiBVbm1h cCBmcm9tIG9sZCBsb2NhdGlvbiwgaWYgYW55LiAqLwo+ICAgICAgb2xkX2dwZm4gPSBnZXRfZ3Bm bl9mcm9tX21mbihtZm4pOwo+IEBAIC00ODcyLDcgKzQ4NzEsNyBAQCBpbnQgeGVubWVtX2FkZF90 b19waHlzbWFwX29uZSgKPiAgICAgICAgICBndWVzdF9waHlzbWFwX3JlbW92ZV9wYWdlKGQsIF9n Zm4ob2xkX2dwZm4pLCBfbWZuKG1mbiksIFBBR0VfT1JERVJfNEspOwo+ICAKPiAgICAgIC8qIE1h cCBhdCBuZXcgbG9jYXRpb24uICovCj4gLSAgICByYyA9IGd1ZXN0X3BoeXNtYXBfYWRkX3BhZ2Uo ZCwgX2dmbihncGZuKSwgX21mbihtZm4pLCBQQUdFX09SREVSXzRLKTsKPiArICAgIHJjID0gZ3Vl c3RfcGh5c21hcF9hZGRfcGFnZShkLCBncGZuLCBfbWZuKG1mbiksIFBBR0VfT1JERVJfNEspOwo+ ICAKPiAgICAgIC8qIEluIHRoZSBYRU5NQVBTUEFDRV9nbWZuLCB3ZSB0b29rIGEgcmVmIG9mIHRo ZSBnZm4gYXQgdGhlIHRvcCAqLwo+ICAgICAgaWYgKCBzcGFjZSA9PSBYRU5NQVBTUEFDRV9nbWZu IHx8IHNwYWNlID09IFhFTk1BUFNQQUNFX2dtZm5fcmFuZ2UgKQo+IGRpZmYgLS1naXQgYS94ZW4v Y29tbW9uL21lbW9yeS5jIGIveGVuL2NvbW1vbi9tZW1vcnkuYwo+IGluZGV4IGE4YTc1ZTAuLjgx MjMzNGIgMTAwNjQ0Cj4gLS0tIGEveGVuL2NvbW1vbi9tZW1vcnkuYwo+ICsrKyBiL3hlbi9jb21t b24vbWVtb3J5LmMKPiBAQCAtNjQ5LDcgKzY0OSw3IEBAIHN0YXRpYyBpbnQgeGVubWVtX2FkZF90 b19waHlzbWFwKHN0cnVjdCBkb21haW4gKmQsCj4gIAo+ICAgICAgaWYgKCB4YXRwLT5zcGFjZSAh PSBYRU5NQVBTUEFDRV9nbWZuX3JhbmdlICkKPiAgICAgICAgICByZXR1cm4geGVubWVtX2FkZF90 b19waHlzbWFwX29uZShkLCB4YXRwLT5zcGFjZSwgZXh0cmEsCj4gLSAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgeGF0cC0+aWR4LCB4YXRwLT5ncGZuKTsKPiArICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4YXRwLT5pZHgsIF9nZm4oeGF0cC0+ Z3BmbikpOwo+ICAKPiAgICAgIGlmICggeGF0cC0+c2l6ZSA8IHN0YXJ0ICkKPiAgICAgICAgICBy ZXR1cm4gLUVJTFNFUTsKPiBAQCAtNjY2LDcgKzY2Niw3IEBAIHN0YXRpYyBpbnQgeGVubWVtX2Fk ZF90b19waHlzbWFwKHN0cnVjdCBkb21haW4gKmQsCj4gICAgICB3aGlsZSAoIHhhdHAtPnNpemUg PiBkb25lICkKPiAgICAgIHsKPiAgICAgICAgICByYyA9IHhlbm1lbV9hZGRfdG9fcGh5c21hcF9v bmUoZCwgeGF0cC0+c3BhY2UsIGV4dHJhLAo+IC0gICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICB4YXRwLT5pZHgsIHhhdHAtPmdwZm4pOwo+ICsgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICB4YXRwLT5pZHgsIF9nZm4oeGF0cC0+Z3BmbikpOwo+ICAgICAg ICAgIGlmICggcmMgPCAwICkKPiAgICAgICAgICAgICAgYnJlYWs7Cj4gIAo+IEBAIC03MzUsNyAr NzM1LDcgQEAgc3RhdGljIGludCB4ZW5tZW1fYWRkX3RvX3BoeXNtYXBfYmF0Y2goc3RydWN0IGRv bWFpbiAqZCwKPiAgCj4gICAgICAgICAgcmMgPSB4ZW5tZW1fYWRkX3RvX3BoeXNtYXBfb25lKGQs IHhhdHBiLT5zcGFjZSwKPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg eGF0cGItPnUsCj4gLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkeCwg Z3Bmbik7Cj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkeCwgX2dm bihncGZuKSk7Cj4gIAo+ICAgICAgICAgIGlmICggdW5saWtlbHkoX19jb3B5X3RvX2d1ZXN0X29m ZnNldCh4YXRwYi0+ZXJycywgMCwgJnJjLCAxKSkgKQo+ICAgICAgICAgIHsKPiBkaWZmIC0tZ2l0 IGEveGVuL2luY2x1ZGUveGVuL21tLmggYi94ZW4vaW5jbHVkZS94ZW4vbW0uaAo+IGluZGV4IGI2 MmY0NzMuLmFmYmIxYTEgMTAwNjQ0Cj4gLS0tIGEveGVuL2luY2x1ZGUveGVuL21tLmgKPiArKysg Yi94ZW4vaW5jbHVkZS94ZW4vbW0uaAo+IEBAIC01NDgsNyArNTQ4LDcgQEAgdm9pZCBzY3J1Yl9v bmVfcGFnZShzdHJ1Y3QgcGFnZV9pbmZvICopOwo+ICAKPiAgaW50IHhlbm1lbV9hZGRfdG9fcGh5 c21hcF9vbmUoc3RydWN0IGRvbWFpbiAqZCwgdW5zaWduZWQgaW50IHNwYWNlLAo+ICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICB1bmlvbiB4ZW5fYWRkX3RvX3BoeXNtYXBfYmF0Y2hfZXh0 cmEgZXh0cmEsCj4gLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGxvbmcg aWR4LCB4ZW5fcGZuX3QgZ3Bmbik7Cj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVu c2lnbmVkIGxvbmcgaWR4LCBnZm5fdCBnZm4pOwo+ICAKPiAgLyogUmV0dXJucyAxIG9uIHN1Y2Nl c3MsIDAgb24gZXJyb3IsIG5lZ2F0aXZlIGlmIHRoZSByaW5nCj4gICAqIGZvciBldmVudCBwcm9w YWdhdGlvbiBpcyBmdWxsIGluIHRoZSBwcmVzZW5jZSBvZiBwYWdpbmcgKi8KPiAtLSAKPiAxLjku MQo+IAoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KWGVu LWRldmVsIG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVuLm9yZwpodHRwOi8vbGlzdHMu eGVuLm9yZy94ZW4tZGV2ZWwK