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 14:58:52 +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 IEphbiBCZXVsaWNoIDxqYmV1bGljaEBzdXNlLmNvbT4KCkFja2VkLWJ5OiBTdGVmYW5vIFN0YWJl bGxpbmkgPHNzdGFiZWxsaW5pQGtlcm5lbC5vcmc+CgoKPiAtLS0KPiBDYzogU3RlZmFubyBTdGFi ZWxsaW5pIDxzc3RhYmVsbGluaUBrZXJuZWwub3JnPgo+IENjOiBKYW4gQmV1bGljaCA8amJldWxp Y2hAc3VzZS5jb20+Cj4gQ2M6IEFuZHJldyBDb29wZXIgPGFuZHJldy5jb29wZXIzQGNpdHJpeC5j b20+Cj4gQ2M6IEdlb3JnZSBEdW5sYXAgPGdlb3JnZS5kdW5sYXBAZXUuY2l0cml4LmNvbT4KPiBD YzogSWFuIEphY2tzb24gPGlhbi5qYWNrc29uQGV1LmNpdHJpeC5jb20+Cj4gQ2M6IEtvbnJhZCBS emVzenV0ZWsgV2lsayA8a29ucmFkLndpbGtAb3JhY2xlLmNvbT4KPiBDYzogVGltIERlZWdhbiA8 dGltQHhlbi5vcmc+Cj4gQ2M6IFdlaSBMaXUgPHdlaS5saXUyQGNpdHJpeC5jb20+Cj4gCj4gICAg IENoYW5nZXMgaW4gdjM6Cj4gICAgICAgICAtIEFkZCBKYW4ncyBhY2tlZC1ieSBmb3Igbm9uLUFS TSBiaXRzCj4gLS0tCj4gIHhlbi9hcmNoL2FybS9tbS5jICAgIHwgMTAgKysrKystLS0tLQo+ICB4 ZW4vYXJjaC94ODYvbW0uYyAgICB8IDE1ICsrKysrKystLS0tLS0tLQo+ICB4ZW4vY29tbW9uL21l bW9yeS5jICB8ICA2ICsrKy0tLQo+ICB4ZW4vaW5jbHVkZS94ZW4vbW0uaCB8ICAyICstCj4gIDQg ZmlsZXMgY2hhbmdlZCwgMTYgaW5zZXJ0aW9ucygrKSwgMTcgZGVsZXRpb25zKC0pCj4gCj4gZGlm ZiAtLWdpdCBhL3hlbi9hcmNoL2FybS9tbS5jIGIveGVuL2FyY2gvYXJtL21tLmMKPiBpbmRleCA1 YWI5Yjc1Li42ODgyZDU0IDEwMDY0NAo+IC0tLSBhL3hlbi9hcmNoL2FybS9tbS5jCj4gKysrIGIv eGVuL2FyY2gvYXJtL21tLmMKPiBAQCAtMTA0Niw3ICsxMDQ2LDcgQEAgaW50IHhlbm1lbV9hZGRf dG9fcGh5c21hcF9vbmUoCj4gICAgICB1bnNpZ25lZCBpbnQgc3BhY2UsCj4gICAgICB1bmlvbiB4 ZW5fYWRkX3RvX3BoeXNtYXBfYmF0Y2hfZXh0cmEgZXh0cmEsCj4gICAgICB1bnNpZ25lZCBsb25n IGlkeCwKPiAtICAgIHhlbl9wZm5fdCBncGZuKQo+ICsgICAgZ2ZuX3QgZ2ZuKQo+ICB7Cj4gICAg ICB1bnNpZ25lZCBsb25nIG1mbiA9IDA7Cj4gICAgICBpbnQgcmM7Cj4gQEAgLTEwODEsOCArMTA4 MSw4IEBAIGludCB4ZW5tZW1fYWRkX3RvX3BoeXNtYXBfb25lKAo+ICAgICAgICAgICAgICBlbHNl Cj4gICAgICAgICAgICAgICAgICByZXR1cm4gLUVJTlZBTDsKPiAgICAgICAgICB9Cj4gLSAgICAg ICAgCj4gLSAgICAgICAgZC0+YXJjaC5ncmFudF90YWJsZV9ncGZuW2lkeF0gPSBncGZuOwo+ICsK PiArICAgICAgICBkLT5hcmNoLmdyYW50X3RhYmxlX2dwZm5baWR4XSA9IGdmbl94KGdmbik7Cj4g IAo+ICAgICAgICAgIHQgPSBwMm1fcmFtX3J3Owo+ICAKPiBAQCAtMTE0NSw3ICsxMTQ1LDcgQEAg aW50IHhlbm1lbV9hZGRfdG9fcGh5c21hcF9vbmUoCj4gICAgICAgICAgaWYgKCBleHRyYS5yZXMw ICkKPiAgICAgICAgICAgICAgcmV0dXJuIC1FT1BOT1RTVVBQOwo+ICAKPiAtICAgICAgICByYyA9 IG1hcF9kZXZfbW1pb19yZWdpb24oZCwgZ3BmbiwgMSwgaWR4KTsKPiArICAgICAgICByYyA9IG1h cF9kZXZfbW1pb19yZWdpb24oZCwgZ2ZuX3goZ2ZuKSwgMSwgaWR4KTsKPiAgICAgICAgICByZXR1 cm4gcmM7Cj4gIAo+ICAgICAgZGVmYXVsdDoKPiBAQCAtMTE1Myw3ICsxMTUzLDcgQEAgaW50IHhl bm1lbV9hZGRfdG9fcGh5c21hcF9vbmUoCj4gICAgICB9Cj4gIAo+ICAgICAgLyogTWFwIGF0IG5l dyBsb2NhdGlvbi4gKi8KPiAtICAgIHJjID0gZ3Vlc3RfcGh5c21hcF9hZGRfZW50cnkoZCwgX2dm bihncGZuKSwgX21mbihtZm4pLCAwLCB0KTsKPiArICAgIHJjID0gZ3Vlc3RfcGh5c21hcF9hZGRf ZW50cnkoZCwgZ2ZuLCBfbWZuKG1mbiksIDAsIHQpOwo+ICAKPiAgICAgIC8qIElmIHdlIGZhaWwg dG8gYWRkIHRoZSBtYXBwaW5nLCB3ZSBuZWVkIHRvIGRyb3AgdGhlIHJlZmVyZW5jZSB3ZQo+ICAg ICAgICogdG9vayBlYXJsaWVyIG9uIGZvcmVpZ24gcGFnZXMgKi8KPiBkaWZmIC0tZ2l0IGEveGVu L2FyY2gveDg2L21tLmMgYi94ZW4vYXJjaC94ODYvbW0uYwo+IGluZGV4IDdmYmM5NGUuLmRiY2Y2 Y2IgMTAwNjQ0Cj4gLS0tIGEveGVuL2FyY2gveDg2L21tLmMKPiArKysgYi94ZW4vYXJjaC94ODYv bW0uYwo+IEBAIC00Nzc1LDcgKzQ3NzUsNyBAQCBpbnQgeGVubWVtX2FkZF90b19waHlzbWFwX29u ZSgKPiAgICAgIHVuc2lnbmVkIGludCBzcGFjZSwKPiAgICAgIHVuaW9uIHhlbl9hZGRfdG9fcGh5 c21hcF9iYXRjaF9leHRyYSBleHRyYSwKPiAgICAgIHVuc2lnbmVkIGxvbmcgaWR4LAo+IC0gICAg eGVuX3Bmbl90IGdwZm4pCj4gKyAgICBnZm5fdCBncGZuKQo+ICB7Cj4gICAgICBzdHJ1Y3QgcGFn ZV9pbmZvICpwYWdlID0gTlVMTDsKPiAgICAgIHVuc2lnbmVkIGxvbmcgZ2ZuID0gMDsgLyogZ2Nj IC4uLiAqLwo+IEBAIC00ODM0LDcgKzQ4MzQsNyBAQCBpbnQgeGVubWVtX2FkZF90b19waHlzbWFw X29uZSgKPiAgICAgICAgICAgICAgYnJlYWs7Cj4gICAgICAgICAgfQo+ICAgICAgICAgIGNhc2Ug WEVOTUFQU1BBQ0VfZ21mbl9mb3JlaWduOgo+IC0gICAgICAgICAgICByZXR1cm4gcDJtX2FkZF9m b3JlaWduKGQsIGlkeCwgZ3BmbiwgZXh0cmEuZm9yZWlnbl9kb21pZCk7Cj4gKyAgICAgICAgICAg IHJldHVybiBwMm1fYWRkX2ZvcmVpZ24oZCwgaWR4LCBnZm5feChncGZuKSwgZXh0cmEuZm9yZWln bl9kb21pZCk7Cj4gICAgICAgICAgZGVmYXVsdDoKPiAgICAgICAgICAgICAgYnJlYWs7Cj4gICAg ICB9Cj4gQEAgLTQ4NDksMTkgKzQ4NDksMTggQEAgaW50IHhlbm1lbV9hZGRfdG9fcGh5c21hcF9v bmUoCj4gICAgICB9Cj4gIAo+ICAgICAgLyogUmVtb3ZlIHByZXZpb3VzbHkgbWFwcGVkIHBhZ2Ug aWYgaXQgd2FzIHByZXNlbnQuICovCj4gLSAgICBwcmV2X21mbiA9IG1mbl94KGdldF9nZm4oZCwg Z3BmbiwgJnAybXQpKTsKPiArICAgIHByZXZfbWZuID0gbWZuX3goZ2V0X2dmbihkLCBnZm5feChn cGZuKSwgJnAybXQpKTsKPiAgICAgIGlmICggbWZuX3ZhbGlkKHByZXZfbWZuKSApCj4gICAgICB7 Cj4gICAgICAgICAgaWYgKCBpc194ZW5faGVhcF9tZm4ocHJldl9tZm4pICkKPiAgICAgICAgICAg ICAgLyogWGVuIGhlYXAgZnJhbWVzIGFyZSBzaW1wbHkgdW5ob29rZWQgZnJvbSB0aGlzIHBoeXMg c2xvdC4gKi8KPiAtICAgICAgICAgICAgZ3Vlc3RfcGh5c21hcF9yZW1vdmVfcGFnZShkLCBfZ2Zu KGdwZm4pLCBfbWZuKHByZXZfbWZuKSwKPiAtICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBQQUdFX09SREVSXzRLKTsKPiArICAgICAgICAgICAgZ3Vlc3RfcGh5c21hcF9yZW1v dmVfcGFnZShkLCBncGZuLCBfbWZuKHByZXZfbWZuKSwgUEFHRV9PUkRFUl80Syk7Cj4gICAgICAg ICAgZWxzZQo+ICAgICAgICAgICAgICAvKiBOb3JtYWwgZG9tYWluIG1lbW9yeSBpcyBmcmVlZCwg dG8gYXZvaWQgbGVha2luZyBtZW1vcnkuICovCj4gLSAgICAgICAgICAgIGd1ZXN0X3JlbW92ZV9w YWdlKGQsIGdwZm4pOwo+ICsgICAgICAgICAgICBndWVzdF9yZW1vdmVfcGFnZShkLCBnZm5feChn cGZuKSk7Cj4gICAgICB9Cj4gICAgICAvKiBJbiB0aGUgWEVOTUFQU1BBQ0VfZ21mbiBjYXNlIHdl IHN0aWxsIGhvbGQgYSByZWYgb24gdGhlIG9sZCBwYWdlLiAqLwo+IC0gICAgcHV0X2dmbihkLCBn cGZuKTsKPiArICAgIHB1dF9nZm4oZCwgZ2ZuX3goZ3BmbikpOwo+ICAKPiAgICAgIC8qIFVubWFw IGZyb20gb2xkIGxvY2F0aW9uLCBpZiBhbnkuICovCj4gICAgICBvbGRfZ3BmbiA9IGdldF9ncGZu X2Zyb21fbWZuKG1mbik7Cj4gQEAgLTQ4NzIsNyArNDg3MSw3IEBAIGludCB4ZW5tZW1fYWRkX3Rv X3BoeXNtYXBfb25lKAo+ICAgICAgICAgIGd1ZXN0X3BoeXNtYXBfcmVtb3ZlX3BhZ2UoZCwgX2dm bihvbGRfZ3BmbiksIF9tZm4obWZuKSwgUEFHRV9PUkRFUl80Syk7Cj4gIAo+ICAgICAgLyogTWFw IGF0IG5ldyBsb2NhdGlvbi4gKi8KPiAtICAgIHJjID0gZ3Vlc3RfcGh5c21hcF9hZGRfcGFnZShk LCBfZ2ZuKGdwZm4pLCBfbWZuKG1mbiksIFBBR0VfT1JERVJfNEspOwo+ICsgICAgcmMgPSBndWVz dF9waHlzbWFwX2FkZF9wYWdlKGQsIGdwZm4sIF9tZm4obWZuKSwgUEFHRV9PUkRFUl80Syk7Cj4g IAo+ICAgICAgLyogSW4gdGhlIFhFTk1BUFNQQUNFX2dtZm4sIHdlIHRvb2sgYSByZWYgb2YgdGhl IGdmbiBhdCB0aGUgdG9wICovCj4gICAgICBpZiAoIHNwYWNlID09IFhFTk1BUFNQQUNFX2dtZm4g fHwgc3BhY2UgPT0gWEVOTUFQU1BBQ0VfZ21mbl9yYW5nZSApCj4gZGlmZiAtLWdpdCBhL3hlbi9j b21tb24vbWVtb3J5LmMgYi94ZW4vY29tbW9uL21lbW9yeS5jCj4gaW5kZXggYThhNzVlMC4uODEy MzM0YiAxMDA2NDQKPiAtLS0gYS94ZW4vY29tbW9uL21lbW9yeS5jCj4gKysrIGIveGVuL2NvbW1v bi9tZW1vcnkuYwo+IEBAIC02NDksNyArNjQ5LDcgQEAgc3RhdGljIGludCB4ZW5tZW1fYWRkX3Rv X3BoeXNtYXAoc3RydWN0IGRvbWFpbiAqZCwKPiAgCj4gICAgICBpZiAoIHhhdHAtPnNwYWNlICE9 IFhFTk1BUFNQQUNFX2dtZm5fcmFuZ2UgKQo+ICAgICAgICAgIHJldHVybiB4ZW5tZW1fYWRkX3Rv X3BoeXNtYXBfb25lKGQsIHhhdHAtPnNwYWNlLCBleHRyYSwKPiAtICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICB4YXRwLT5pZHgsIHhhdHAtPmdwZm4pOwo+ICsgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHhhdHAtPmlkeCwgX2dmbih4YXRwLT5n cGZuKSk7Cj4gIAo+ICAgICAgaWYgKCB4YXRwLT5zaXplIDwgc3RhcnQgKQo+ICAgICAgICAgIHJl dHVybiAtRUlMU0VROwo+IEBAIC02NjYsNyArNjY2LDcgQEAgc3RhdGljIGludCB4ZW5tZW1fYWRk X3RvX3BoeXNtYXAoc3RydWN0IGRvbWFpbiAqZCwKPiAgICAgIHdoaWxlICggeGF0cC0+c2l6ZSA+ IGRvbmUgKQo+ICAgICAgewo+ICAgICAgICAgIHJjID0geGVubWVtX2FkZF90b19waHlzbWFwX29u ZShkLCB4YXRwLT5zcGFjZSwgZXh0cmEsCj4gLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIHhhdHAtPmlkeCwgeGF0cC0+Z3Bmbik7Cj4gKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHhhdHAtPmlkeCwgX2dmbih4YXRwLT5ncGZuKSk7Cj4gICAgICAg ICAgaWYgKCByYyA8IDAgKQo+ICAgICAgICAgICAgICBicmVhazsKPiAgCj4gQEAgLTczNSw3ICs3 MzUsNyBAQCBzdGF0aWMgaW50IHhlbm1lbV9hZGRfdG9fcGh5c21hcF9iYXRjaChzdHJ1Y3QgZG9t YWluICpkLAo+ICAKPiAgICAgICAgICByYyA9IHhlbm1lbV9hZGRfdG9fcGh5c21hcF9vbmUoZCwg eGF0cGItPnNwYWNlLAo+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4 YXRwYi0+dSwKPiAtICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWR4LCBn cGZuKTsKPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWR4LCBfZ2Zu KGdwZm4pKTsKPiAgCj4gICAgICAgICAgaWYgKCB1bmxpa2VseShfX2NvcHlfdG9fZ3Vlc3Rfb2Zm c2V0KHhhdHBiLT5lcnJzLCAwLCAmcmMsIDEpKSApCj4gICAgICAgICAgewo+IGRpZmYgLS1naXQg YS94ZW4vaW5jbHVkZS94ZW4vbW0uaCBiL3hlbi9pbmNsdWRlL3hlbi9tbS5oCj4gaW5kZXggYjYy ZjQ3My4uYWZiYjFhMSAxMDA2NDQKPiAtLS0gYS94ZW4vaW5jbHVkZS94ZW4vbW0uaAo+ICsrKyBi L3hlbi9pbmNsdWRlL3hlbi9tbS5oCj4gQEAgLTU0OCw3ICs1NDgsNyBAQCB2b2lkIHNjcnViX29u ZV9wYWdlKHN0cnVjdCBwYWdlX2luZm8gKik7Cj4gIAo+ICBpbnQgeGVubWVtX2FkZF90b19waHlz bWFwX29uZShzdHJ1Y3QgZG9tYWluICpkLCB1bnNpZ25lZCBpbnQgc3BhY2UsCj4gICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIHVuaW9uIHhlbl9hZGRfdG9fcGh5c21hcF9iYXRjaF9leHRy YSBleHRyYSwKPiAtICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgbG9uZyBp ZHgsIHhlbl9wZm5fdCBncGZuKTsKPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5z aWduZWQgbG9uZyBpZHgsIGdmbl90IGdmbik7Cj4gIAo+ICAvKiBSZXR1cm5zIDEgb24gc3VjY2Vz cywgMCBvbiBlcnJvciwgbmVnYXRpdmUgaWYgdGhlIHJpbmcKPiAgICogZm9yIGV2ZW50IHByb3Bh Z2F0aW9uIGlzIGZ1bGwgaW4gdGhlIHByZXNlbmNlIG9mIHBhZ2luZyAqLwo+IC0tIAo+IDEuOS4x Cj4gCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpYZW4t ZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW4ub3JnCmh0dHA6Ly9saXN0cy54 ZW4ub3JnL3hlbi1kZXZlbAo=