From mboxrd@z Thu Jan 1 00:00:00 1970 From: Vijay Kilari Subject: Re: [RFC PATCH v2 11/25] x86: NUMA: Move common code from srat.c Date: Wed, 10 May 2017 14:30:50 +0530 Message-ID: References: <1490716413-19796-1-git-send-email-vijay.kilari@gmail.com> <1490716413-19796-12-git-send-email-vijay.kilari@gmail.com> <0035c991-d3f3-bf30-2509-f1e861211d47@arm.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <0035c991-d3f3-bf30-2509-f1e861211d47@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 , Stefano Stabellini , Wei Liu , George Dunlap , Andrew Cooper , Ian Jackson , "xen-devel@lists.xen.org" , Jan Beulich , Vijaya Kumar K List-Id: xen-devel@lists.xenproject.org IGFuZAoKT24gTW9uLCBNYXkgOCwgMjAxNyBhdCAxMDozNiBQTSwgSnVsaWVuIEdyYWxsIDxqdWxp ZW4uZ3JhbGxAYXJtLmNvbT4gd3JvdGU6Cj4gSGkgVmlqYXksCj4KPgo+IE9uIDI4LzAzLzE3IDE2 OjUzLCB2aWpheS5raWxhcmlAZ21haWwuY29tIHdyb3RlOgo+Pgo+PiBGcm9tOiBWaWpheWEgS3Vt YXIgSyA8VmlqYXlhLkt1bWFyQGNhdml1bS5jb20+Cj4+Cj4+IE1vdmUgY29kZSBmcm9tIHhlbi9h cmNoL3g4Ni9zcmF0LmMgdG8geGVuL2NvbW1vbi9udW1hLmMKPj4gc28gdGhhdCBpdCBjYW4gYmUg dXNlZCBieSBvdGhlciBhcmNocy4KPj4gRmV3IGdlbmVyaWMgc3RhdGljIGZ1bmN0aW9ucyBpbiB4 ODYvc3JhdC5jIGFyZSBtYWRlCj4+IG5vbi1zdGF0aWMgY29tbW9uL251bWEuYwo+Pgo+PiBTaWdu ZWQtb2ZmLWJ5OiBWaWpheWEgS3VtYXIgSyA8VmlqYXlhLkt1bWFyQGNhdml1bS5jb20+Cj4+IC0t LQo+PiAgeGVuL2FyY2gveDg2L3NyYXQuYyAgICAgICAgfCAxNTIKPj4gKystLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCj4+ICB4ZW4vY29tbW9uL251bWEuYyAgICAg ICAgICB8IDE0Ngo+PiArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr Cj4+ICB4ZW4vaW5jbHVkZS9hc20teDg2L2FjcGkuaCB8ICAgMyAtCj4+ICB4ZW4vaW5jbHVkZS9h c20teDg2L251bWEuaCB8ICAgMiAtCj4+ICB4ZW4vaW5jbHVkZS94ZW4vbnVtYS5oICAgICB8ICAx NCArKysrKwo+PiAgNSBmaWxlcyBjaGFuZ2VkLCAxNjQgaW5zZXJ0aW9ucygrKSwgMTUzIGRlbGV0 aW9ucygtKQo+Pgo+PiBkaWZmIC0tZ2l0IGEveGVuL2FyY2gveDg2L3NyYXQuYyBiL3hlbi9hcmNo L3g4Ni9zcmF0LmMKPj4gaW5kZXggMmNjODdhMy4uNTU5NDdiYiAxMDA2NDQKPj4gLS0tIGEveGVu L2FyY2gveDg2L3NyYXQuYwo+PiArKysgYi94ZW4vYXJjaC94ODYvc3JhdC5jCj4+IEBAIC0yMyw5 ICsyMyw4IEBACj4+Cj4+ICBzdGF0aWMgc3RydWN0IGFjcGlfdGFibGVfc2xpdCAqX19yZWFkX21v c3RseSBhY3BpX3NsaXQ7Cj4+Cj4+IC1zdGF0aWMgbm9kZW1hc2tfdCBfX2luaXRkYXRhIG1lbW9y eV9ub2Rlc19wYXJzZWQ7Cj4+IC1zdGF0aWMgbm9kZW1hc2tfdCBfX2luaXRkYXRhIHByb2Nlc3Nv cl9ub2Rlc19wYXJzZWQ7Cj4+IC1zdGF0aWMgc3RydWN0IG5vZGUgX19pbml0ZGF0YSBub2Rlc1tN QVhfTlVNTk9ERVNdOwo+PiArZXh0ZXJuIG5vZGVtYXNrX3QgcHJvY2Vzc29yX25vZGVzX3BhcnNl ZDsKPj4gK2V4dGVybiBub2RlbWFza190IG1lbW9yeV9ub2Rlc19wYXJzZWQ7Cj4KPgo+IE9uIHYx LCBKYW4gY2xlYXJseSBOQUsgdG8gY2hhbmdlcyBsaWtlIHRoaXMuIERlY2xhcmF0aW9ucyBiZWxv bmcgaW4gaGVhZGVyCj4gZmlsZXMuIEl0IGlzIGEgZGlmZmVyZW50IHZhcmlhYmxlIGNvbXBhcmUg dG8gdjEsIGJ1dCBJIHdvdWxkIGhhdmUgZXhwZWN0ZWQKPiB5b3UgdG8gYXBwbHkgd2hhdCBoZSBz YWlkIGV2ZXJ5d2hlcmUuLi4KCk9rIEkgd2lsbCBtb3ZlIHRoZXNlIHRvIGhlYWRlciBmaWxlcy4K Ck9uZSBtb3JlIGNoYW5nZSB0aGF0IEkgbWFkZSBpcyBtb3ZlZCBmcm9tIHN0YXRpYyB0byBnbG9i YWwuCmJlY2F1c2UgY3JlYXRpbmcgYWNjZXNzb3IgZnVuY3Rpb25zIGFyb3VuZCB0aGVzZSBub2Rl c21hc2tfdCBpcyB0cmlja3kgYmVjYXVzZQp0aGUgbWFjcm9zIChkZWZpbmVkIGluIG5vZGVtYXNr LmgpIGRvZXMgbm90IHRha2UgcG9pbnRlciBwYXJhbWV0ZXJzLgoKSSB3aWxsIGFkZCBjb21tZW50 LgoKPgo+IFsuLi5dCj4KPj4gZGlmZiAtLWdpdCBhL3hlbi9jb21tb24vbnVtYS5jIGIveGVuL2Nv bW1vbi9udW1hLmMKPj4gaW5kZXggMjA3ZWJkOC4uMTc4OWJiYSAxMDA2NDQKPj4gLS0tIGEveGVu L2NvbW1vbi9udW1hLmMKPj4gKysrIGIveGVuL2NvbW1vbi9udW1hLmMKPj4gQEAgLTMyLDYgKzMy LDggQEAKPj4gIHN0YXRpYyBpbnQgbnVtYV9zZXR1cChjaGFyICpzKTsKPj4gIGN1c3RvbV9wYXJh bSgibnVtYSIsIG51bWFfc2V0dXApOwo+Pgo+PiArbm9kZW1hc2tfdCBfX2luaXRkYXRhIG1lbW9y eV9ub2Rlc19wYXJzZWQ7Cj4+ICtub2RlbWFza190IF9faW5pdGRhdGEgcHJvY2Vzc29yX25vZGVz X3BhcnNlZDsKPj4gIHN0cnVjdCBub2RlX2RhdGEgbm9kZV9kYXRhW01BWF9OVU1OT0RFU107Cj4+ Cj4+ICAvKiBNYXBwaW5nIGZyb20gcGR4IHRvIG5vZGUgaWQgKi8KPj4gQEAgLTQ3LDYgKzQ5LDEw IEBAIGNwdW1hc2tfdCBfX3JlYWRfbW9zdGx5IG5vZGVfdG9fY3B1bWFza1tNQVhfTlVNTk9ERVNd Owo+Pgo+PiAgc3RhdGljIGJvb2wgbnVtYV9vZmYgPSAwOwo+PiAgc3RhdGljIGJvb2wgYWNwaV9u dW1hID0gMTsKPj4gK3N0YXRpYyBpbnQgbnVtX25vZGVfbWVtYmxrczsKPj4gK3N0YXRpYyBzdHJ1 Y3Qgbm9kZSBub2RlX21lbWJsa19yYW5nZVtOUl9OT0RFX01FTUJMS1NdOwo+PiArc3RhdGljIG5v ZGVpZF90IG1lbWJsa19ub2RlaWRbTlJfTk9ERV9NRU1CTEtTXTsKPj4gK3N0YXRpYyBzdHJ1Y3Qg bm9kZSBfX2luaXRkYXRhIG5vZGVzW01BWF9OVU1OT0RFU107Cj4KPgo+IEl0IHdvdWxkIG1ha2Ug c2Vuc2UgdG8ga2VlcCB0aG9zZSB2YXJpYWJsZXMgdG9nZXRoZXIgd2l0aAo+IHttZW1vcnkscHJv Y2Vzc29yfV9ub2Rlc19wYXJzZWQuCgpvawo+Cj4gWy4uLl0KPgo+PiAraW50IHZhbGlkX251bWFf cmFuZ2UocGFkZHJfdCBzdGFydCwgcGFkZHJfdCBlbmQsIG5vZGVpZF90IG5vZGUpCj4+ICt7Cj4+ ICsgICAgaW50IGk7Cj4+ICsKPj4gKyAgICBmb3IgKGkgPSAwOyBpIDwgZ2V0X251bV9ub2RlX21l bWJsa3MoKTsgaSsrKSB7Cj4KPgo+IGNvbW1vbi9udW1hLmMgaXMgdXNpbmcgWGVuIGNvZGluZyBz dHlsZSB3aGlsc3QgYXJjaC94ODYvc3JhdC5jIGlzIHVzaW5nCj4gTGludXggY29kaW5nIHN0eWxl Lgo+Cj4gWW91IGRlY2lkZWQgdG8gdmFsaWRseSBzd2l0Y2ggdG8gc29mdCB0YWIsIG1ha2luZyBx dWl0ZSBkaWZmaWN1bHQgdG8gY2hlY2sKPiBpZiB0aGlzIHBhdGNoIGlzIG9ubHkgY29kZSBtb3Zl bWVudC4gQnV0IHlvdSBkaWQgbm90IGdvIGZhciBlbm91Z2ggYW5kIGZpeAo+IHRoZSBjb2Rpbmcg c3R5bGUgb2YgdGhlIGNvZGUgbW92ZWQuCj4KPiBQbGVhc2UgZG8gaXQgcHJvcGVybHkgYW5kIG5v dCBoYWxmIG9mIGl0LiBGb3Igc2ltcGxpY2l0eSBJIHdvdWxkIGJlIE9LIHRoYXQKPiBpdCBpcyBk b25lIGluIHRoaXMgcGF0Y2guIEJ1dCB0aGlzIG5lZWRzIHRvIGJlIGNsZWFybHkgd3JpdHRlbiBp biB0aGUgY29tbWl0Cj4gbWVzc2FnZS4KCkkgd2lsbCBhZGQgaW4gY29tbWl0IG1lc3NhZ2UgYWJv dXQgY29kaW5nIHN0eWxlIGNoYW5nZXMgdG8gZGVzdGluYXRpb24gZmlsZQpjb21wYXJlZCB0byBz b3VyY2UgZmlsZS4KCj4KPj4gKyAgICAgICAgc3RydWN0IG5vZGUgKm5kID0gZ2V0X25vZGVfbWVt YmxrX3JhbmdlKGkpOwo+PiArCj4+ICsgICAgICAgIGlmIChuZC0+c3RhcnQgPD0gc3RhcnQgJiYg bmQtPmVuZCA+IGVuZCAmJgo+PiArICAgICAgICAgICAgZ2V0X21lbWJsa19ub2RlaWQoaSkgPT0g bm9kZSkKPj4gKyAgICAgICAgICAgIHJldHVybiAxOwo+PiArICAgIH0KPj4gKwo+PiArICAgIHJl dHVybiAwOwo+PiArfQo+Cj4KPiBbLi4uXQo+Cj4KPj4gZGlmZiAtLWdpdCBhL3hlbi9pbmNsdWRl L2FzbS14ODYvbnVtYS5oIGIveGVuL2luY2x1ZGUvYXNtLXg4Ni9udW1hLmgKPj4gaW5kZXggNDIx ZThiNy4uN2NmZjIyMCAxMDA2NDQKPj4gLS0tIGEveGVuL2luY2x1ZGUvYXNtLXg4Ni9udW1hLmgK Pj4gKysrIGIveGVuL2luY2x1ZGUvYXNtLXg4Ni9udW1hLmgKPj4gQEAgLTQ3LDggKzQ3LDYgQEAg c3RhdGljIGlubGluZSBfX2F0dHJpYnV0ZV9fKChwdXJlKSkgbm9kZWlkX3QKPj4gcGh5c190b19u aWQocGFkZHJfdCBhZGRyKQo+PiAgI2RlZmluZSBub2RlX2VuZF9wZm4obmlkKSAgICAgICAoTk9E RV9EQVRBKG5pZCktPm5vZGVfc3RhcnRfcGZuICsgXAo+PiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgTk9ERV9EQVRBKG5pZCktPm5vZGVfc3Bhbm5lZF9wYWdlcykKPj4KPj4gLWV4 dGVybiBpbnQgdmFsaWRfbnVtYV9yYW5nZShwYWRkcl90IHN0YXJ0LCBwYWRkcl90IGVuZCwgbm9k ZWlkX3Qgbm9kZSk7Cj4+IC0KPj4gIHZvaWQgc3JhdF9wYXJzZV9yZWdpb25zKHVpbnQ2NF90IGFk ZHIpOwo+PiAgZXh0ZXJuIHVpbnQ4X3QgX19ub2RlX2Rpc3RhbmNlKG5vZGVpZF90IGEsIG5vZGVp ZF90IGIpOwo+PiAgdW5zaWduZWQgaW50IGFyY2hfZ2V0X2RtYV9iaXRzaXplKHZvaWQpOwo+PiBk aWZmIC0tZ2l0IGEveGVuL2luY2x1ZGUveGVuL251bWEuaCBiL3hlbi9pbmNsdWRlL3hlbi9udW1h LmgKPj4gaW5kZXggZWVkNDBhZi4uZWU1MzUyNiAxMDA2NDQKPj4gLS0tIGEveGVuL2luY2x1ZGUv eGVuL251bWEuaAo+PiArKysgYi94ZW4vaW5jbHVkZS94ZW4vbnVtYS5oCj4+IEBAIC0xMyw2ICsx Myw3IEBACj4+ICAjZGVmaW5lIE5VTUFfTk9fRElTVEFOQ0UgMHhGRgo+Pgo+PiAgI2RlZmluZSBN QVhfTlVNTk9ERVMgICAgKDEgPDwgTk9ERVNfU0hJRlQpCj4+ICsjZGVmaW5lIE5SX05PREVfTUVN QkxLUyAoTUFYX05VTU5PREVTICogMikKPj4KPj4gIHN0cnVjdCBub2RlIHsKPj4gICAgICBwYWRk cl90IHN0YXJ0Owo+PiBAQCAtMjgsNiArMjksMTkgQEAgZXh0ZXJuIG5vZGVpZF90IGFjcGlfc2V0 dXBfbm9kZSh1bnNpZ25lZCBpbnQgcHhtKTsKPj4gIGV4dGVybiB2b2lkIHNyYXRfZGV0ZWN0X25v ZGUoaW50IGNwdSk7Cj4+ICBleHRlcm4gdm9pZCBzZXR1cF9ub2RlX2Jvb3RtZW0obm9kZWlkX3Qg bm9kZWlkLCBwYWRkcl90IHN0YXJ0LCBwYWRkcl90Cj4+IGVuZCk7Cj4+ICBleHRlcm4gdm9pZCBp bml0X2NwdV90b19ub2RlKHZvaWQpOwo+PiArZXh0ZXJuIGludCB2YWxpZF9udW1hX3JhbmdlKHBh ZGRyX3Qgc3RhcnQsIHBhZGRyX3QgZW5kLCBub2RlaWRfdCBub2RlKTsKPj4gK2V4dGVybiBpbnQg Y29uZmxpY3RpbmdfbWVtYmxrcyhwYWRkcl90IHN0YXJ0LCBwYWRkcl90IGVuZCk7Cj4+ICtleHRl cm4gdm9pZCBjdXRvZmZfbm9kZShpbnQgaSwgcGFkZHJfdCBzdGFydCwgcGFkZHJfdCBlbmQpOwo+ PiArZXh0ZXJuIHN0cnVjdCBub2RlICpnZXRfbnVtYV9ub2RlKGludCBpZCk7Cj4+ICtleHRlcm4g bm9kZWlkX3QgZ2V0X21lbWJsa19ub2RlaWQoaW50IG1lbWJsayk7Cj4+ICtleHRlcm4gbm9kZWlk X3QgKmdldF9tZW1ibGtfbm9kZWlkX21hcCh2b2lkKTsKPj4gK2V4dGVybiBzdHJ1Y3Qgbm9kZSAq Z2V0X25vZGVfbWVtYmxrX3JhbmdlKGludCBtZW1ibGspOwo+PiArZXh0ZXJuIHN0cnVjdCBub2Rl ICpnZXRfbWVtYmxrKGludCBtZW1ibGspOwo+PiArZXh0ZXJuIGludCBudW1hX2FkZF9tZW1ibGso bm9kZWlkX3Qgbm9kZWlkLCBwYWRkcl90IHN0YXJ0LCB1aW50NjRfdAo+PiBzaXplKTsKPj4gK2V4 dGVybiBpbnQgZ2V0X251bV9ub2RlX21lbWJsa3Modm9pZCk7Cj4+ICtleHRlcm4gaW50IGFyY2hf c2FuaXRpemVfbm9kZXNfbWVtb3J5KHZvaWQpOwo+PiArZXh0ZXJuIHZvaWQgbnVtYV9mYWlsZWQo dm9pZCk7Cj4+ICtleHRlcm4gaW50IG51bWFfc2Nhbl9ub2Rlcyh1aW50NjRfdCBzdGFydCwgdWlu dDY0X3QgZW5kKTsKPgo+Cj4gU2VlIG15IGNvbW1lbnQgb24gdGhlIHByZXZpb3VzIHBhdGNoLgoK SSB1bmRlcnN0YW5kIHRoYXQgd2UgY2FuIGRyb3AgdGhpcyBleHRlcm4KPgo+Pgo+PiAgI2RlZmlu ZSB2Y3B1X3RvX25vZGUodikgKGNwdV90b19ub2RlKCh2KS0+cHJvY2Vzc29yKSkKPj4KPj4KPgo+ IENoZWVycywKPgo+IC0tCj4gSnVsaWVuIEdyYWxsCgpfX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fXwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBs aXN0cy54ZW4ub3JnCmh0dHBzOi8vbGlzdHMueGVuLm9yZy94ZW4tZGV2ZWwK