From mboxrd@z Thu Jan 1 00:00:00 1970 From: vijay.kilari@gmail.com Subject: [RFC PATCH v3 15/24] ARM: NUMA: DT: Add CPU NUMA support Date: Tue, 18 Jul 2017 17:11:37 +0530 Message-ID: <1500378106-2620-16-git-send-email-vijay.kilari@gmail.com> References: <1500378106-2620-1-git-send-email-vijay.kilari@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1500378106-2620-1-git-send-email-vijay.kilari@gmail.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: kevin.tian@intel.com, sstabellini@kernel.org, wei.liu2@citrix.com, George.Dunlap@eu.citrix.com, andrew.cooper3@citrix.com, dario.faggioli@citrix.com, ian.jackson@eu.citrix.com, tim@xen.org, julien.grall@arm.com, jbeulich@suse.com, Vijaya Kumar K List-Id: xen-devel@lists.xenproject.org RnJvbTogVmlqYXlhIEt1bWFyIEsgPFZpamF5YS5LdW1hckBjYXZpdW0uY29tPgoKRm9yIGVhY2gg Y3B1LCB1cGRhdGUgY3B1X3RvX25vZGVbXSB3aXRoIG5vZGUgaWQgZnJvbQp0aGUgbnVtYS1ub2Rl LWlkIERUIHByb3BlcnR5LiBBbHNvLCBpbml0aWFsaXplIGNwdV90b19ub2RlW10Kd2l0aCBub2Rl IDAuCgpBZGQgbWFjcm9zIHRvIGFjY2VzcyBjcHVfdG9fbm9kZVtdIGluZm9ybWF0aW9uLgoKU2ln bmVkLW9mZi1ieTogVmlqYXlhIEt1bWFyIEsgPFZpamF5YS5LdW1hckBjYXZpdW0uY29tPgotLS0K djM6IC0gRHJvcHBlZCBudW1hX2FkZF9jcHUgZGVjbGFyYXRpb24gZnJvbSBhc20tYXJtL251bWEu aAogICAgLSBEcm9wcGVkIHN0YWxlIGRlY2xhcmF0aW9ucwogICAgLSBDYWxsIG51bWFfYWRkX2Nw dSBmb3IgY3B1MAotLS0KIHhlbi9hcmNoL2FybS9udW1hL251bWEuYyAgIHwgMjEgKysrKysrKysr KysrKysrKysrKysrCiB4ZW4vYXJjaC9hcm0vc2V0dXAuYyAgICAgICB8ICAyICsrCiB4ZW4vYXJj aC9hcm0vc21wYm9vdC5jICAgICB8IDI1ICsrKysrKysrKysrKysrKysrKysrKysrKy0KIHhlbi9p bmNsdWRlL2FzbS1hcm0vbnVtYS5oIHwgIDcgKysrKysrKwogeGVuL2luY2x1ZGUvYXNtLXg4Ni9u dW1hLmggfCAgMSAtCiB4ZW4vaW5jbHVkZS94ZW4vbnVtYS5oICAgICB8ICAxICsKIDYgZmlsZXMg Y2hhbmdlZCwgNTUgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS94 ZW4vYXJjaC9hcm0vbnVtYS9udW1hLmMgYi94ZW4vYXJjaC9hcm0vbnVtYS9udW1hLmMKaW5kZXgg YzAwYjkyYy4uZGM4MGFhNSAxMDA2NDQKLS0tIGEveGVuL2FyY2gvYXJtL251bWEvbnVtYS5jCisr KyBiL3hlbi9hcmNoL2FybS9udW1hL251bWEuYwpAQCAtMjIsMTEgKzIyLDMxIEBACiAKIHN0YXRp YyB1aW50OF90ICgqbm9kZV9kaXN0YW5jZV9mbikobm9kZWlkX3QgYSwgbm9kZWlkX3QgYik7CiAK Ky8qCisgKiBTZXR1cCBlYXJseSBjcHVfdG9fbm9kZS4KKyAqLwordm9pZCBfX2luaXQgaW5pdF9j cHVfdG9fbm9kZSh2b2lkKQoreworICAgIGludCBpOworCisgICAgZm9yICggaSA9IDA7IGkgPCBO Ul9DUFVTOyBpKysgKQorICAgICAgICBudW1hX3NldF9ub2RlKGksIDApOworfQorCiB2b2lkIG51 bWFfZmFpbGVkKHZvaWQpCiB7CiAgICAgbnVtYV9vZmYgPSB0cnVlOwogICAgIGluaXRfZHRfbnVt YV9kaXN0YW5jZSgpOwogICAgIG5vZGVfZGlzdGFuY2VfZm4gPSBOVUxMOworICAgIGluaXRfY3B1 X3RvX25vZGUoKTsKK30KKwordm9pZCBfX2luaXQgbnVtYV9zZXRfY3B1X25vZGUoaW50IGNwdSwg dW5zaWduZWQgaW50IG5pZCkKK3sKKyAgICBpZiAoICFub2RlX2lzc2V0KG5pZCwgcHJvY2Vzc29y X25vZGVzX3BhcnNlZCkgfHwgbmlkID49IE1BWF9OVU1OT0RFUyApCisgICAgICAgIG5pZCA9IDA7 CisKKyAgICBudW1hX3NldF9ub2RlKGNwdSwgbmlkKTsKIH0KIAogdWludDhfdCBfX25vZGVfZGlz dGFuY2Uobm9kZWlkX3QgYSwgbm9kZWlkX3QgYikKQEAgLTQ5LDYgKzY5LDcgQEAgdm9pZCBfX2lu aXQgbnVtYV9pbml0KHZvaWQpCiAgICAgaW50IHJldCA9IDA7CiAKICAgICBub2Rlc19jbGVhcihw cm9jZXNzb3Jfbm9kZXNfcGFyc2VkKTsKKyAgICBpbml0X2NwdV90b19ub2RlKCk7CiAgICAgaW5p dF9kdF9udW1hX2Rpc3RhbmNlKCk7CiAKICAgICBpZiAoIG51bWFfb2ZmICkKZGlmZiAtLWdpdCBh L3hlbi9hcmNoL2FybS9zZXR1cC5jIGIveGVuL2FyY2gvYXJtL3NldHVwLmMKaW5kZXggYTZkMTQ5 OS4uYjljOGIwZCAxMDA2NDQKLS0tIGEveGVuL2FyY2gvYXJtL3NldHVwLmMKKysrIGIveGVuL2Fy Y2gvYXJtL3NldHVwLmMKQEAgLTc4Nyw2ICs3ODcsOCBAQCB2b2lkIF9faW5pdCBzdGFydF94ZW4o dW5zaWduZWQgbG9uZyBib290X3BoeXNfb2Zmc2V0LAogCiAgICAgcHJvY2Vzc29yX2lkKCk7CiAK KyAgICBudW1hX2FkZF9jcHUoMCk7CisKICAgICBzbXBfaW5pdF9jcHVzKCk7CiAgICAgY3B1cyA9 IHNtcF9nZXRfbWF4X2NwdXMoKTsKICAgICBwcmludGsoWEVOTE9HX0lORk8gIlNNUDogQWxsb3dp bmcgJXUgQ1BVc1xuIiwgY3B1cyk7CmRpZmYgLS1naXQgYS94ZW4vYXJjaC9hcm0vc21wYm9vdC5j IGIveGVuL2FyY2gvYXJtL3NtcGJvb3QuYwppbmRleCAzMmU4NzIyLi5mY2Y5YWZjIDEwMDY0NAot LS0gYS94ZW4vYXJjaC9hcm0vc21wYm9vdC5jCisrKyBiL3hlbi9hcmNoL2FybS9zbXBib290LmMK QEAgLTI5LDYgKzI5LDcgQEAKICNpbmNsdWRlIDx4ZW4vdGltZXIuaD4KICNpbmNsdWRlIDx4ZW4v aXJxLmg+CiAjaW5jbHVkZSA8eGVuL2NvbnNvbGUuaD4KKyNpbmNsdWRlIDx4ZW4vbnVtYS5oPgog I2luY2x1ZGUgPGFzbS9jcHVlcnJhdGEuaD4KICNpbmNsdWRlIDxhc20vZ2ljLmg+CiAjaW5jbHVk ZSA8YXNtL3BzY2kuaD4KQEAgLTEwNiw2ICsxMDcsNyBAQCBzdGF0aWMgdm9pZCBfX2luaXQgZHRf c21wX2luaXRfY3B1cyh2b2lkKQogICAgICAgICBbMCAuLi4gTlJfQ1BVUyAtIDFdID0gTVBJRFJf SU5WQUxJRAogICAgIH07CiAgICAgYm9vbF90IGJvb3RjcHVfdmFsaWQgPSAwOworICAgIG5vZGVp ZF90ICpjcHVfdG9fbm9kZW1hcDsKICAgICBpbnQgcmM7CiAKICAgICBtcGlkciA9IGJvb3RfY3B1 X2RhdGEubXBpZHIuYml0cyAmIE1QSURSX0hXSURfTUFTSzsKQEAgLTExNywxMSArMTE5LDE4IEBA IHN0YXRpYyB2b2lkIF9faW5pdCBkdF9zbXBfaW5pdF9jcHVzKHZvaWQpCiAgICAgICAgIHJldHVy bjsKICAgICB9CiAKKyAgICBjcHVfdG9fbm9kZW1hcCA9IHh6YWxsb2NfYXJyYXkobm9kZWlkX3Qs IE5SX0NQVVMpOworICAgIGlmICggIWNwdV90b19ub2RlbWFwICkKKyAgICB7CisgICAgICAgIHBy aW50ayhYRU5MT0dfV0FSTklORyAiRmFpbGVkIHRvIGFsbG9jYXRlIG1lbW9yeSBmb3IgY3B1X3Rv X25vZGVtYXBcbiIpOworICAgICAgICByZXR1cm47CisgICAgfQorCiAgICAgZHRfZm9yX2VhY2hf Y2hpbGRfbm9kZSggY3B1cywgY3B1ICkKICAgICB7CiAgICAgICAgIGNvbnN0IF9fYmUzMiAqcHJv cDsKICAgICAgICAgdTY0IGFkZHI7Ci0gICAgICAgIHUzMiByZWdfbGVuOworICAgICAgICB1aW50 MzJfdCByZWdfbGVuLCBuaWQ7CiAgICAgICAgIHJlZ2lzdGVyX3QgaHdpZDsKIAogICAgICAgICBp ZiAoICFkdF9kZXZpY2VfdHlwZV9pc19lcXVhbChjcHUsICJjcHUiKSApCkBAIC0xNDYsNiArMTU1 LDE1IEBAIHN0YXRpYyB2b2lkIF9faW5pdCBkdF9zbXBfaW5pdF9jcHVzKHZvaWQpCiAgICAgICAg ICAgICBjb250aW51ZTsKICAgICAgICAgfQogCisgICAgICAgIGlmICggIWR0X3Byb3BlcnR5X3Jl YWRfdTMyKGNwdSwgIm51bWEtbm9kZS1pZCIsICZuaWQpICkKKyAgICAgICAgeworICAgICAgICAg ICAgcHJpbnRrKFhFTkxPR19XQVJOSU5HICJjcHUgbm9kZSBgJXNgOiBudW1hLW5vZGUtaWQgbm90 IGZvdW5kXG4iLAorICAgICAgICAgICAgICAgICAgIGR0X25vZGVfZnVsbF9uYW1lKGNwdSkpOwor ICAgICAgICAgICAgbmlkID0gMDsKKyAgICAgICAgfQorCisgICAgICAgIGNwdV90b19ub2RlbWFw W2NwdWlkeF0gPSBuaWQ7CisKICAgICAgICAgYWRkciA9IGR0X3JlYWRfbnVtYmVyKHByb3AsIGR0 X25fYWRkcl9jZWxscyhjcHUpKTsKIAogICAgICAgICBod2lkID0gYWRkcjsKQEAgLTIyNCw2ICsy NDIsNyBAQCBzdGF0aWMgdm9pZCBfX2luaXQgZHRfc21wX2luaXRfY3B1cyh2b2lkKQogICAgIHsK ICAgICAgICAgcHJpbnRrKFhFTkxPR19XQVJOSU5HICJEVCBtaXNzaW5nIGJvb3QgQ1BVIE1QSURS WzIzOjBdXG4iCiAgICAgICAgICAgICAgICAiVXNpbmcgb25seSAxIENQVVxuIik7CisgICAgICAg IHhmcmVlKGNwdV90b19ub2RlbWFwKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KIApAQCAtMjMz LDcgKzI1MiwxMCBAQCBzdGF0aWMgdm9pZCBfX2luaXQgZHRfc21wX2luaXRfY3B1cyh2b2lkKQog ICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgIGNwdW1hc2tfc2V0X2NwdShpLCAmY3B1X3Bv c3NpYmxlX21hcCk7CiAgICAgICAgIGNwdV9sb2dpY2FsX21hcChpKSA9IHRtcF9tYXBbaV07Cisg ICAgICAgIG51bWFfc2V0X2NwdV9ub2RlKGksIGNwdV90b19ub2RlbWFwW2ldKTsKICAgICB9CisK KyAgICB4ZnJlZShjcHVfdG9fbm9kZW1hcCk7CiB9CiAKIHZvaWQgX19pbml0IHNtcF9pbml0X2Nw dXModm9pZCkKQEAgLTMxMyw2ICszMzUsNyBAQCB2b2lkIHN0YXJ0X3NlY29uZGFyeSh1bnNpZ25l ZCBsb25nIGJvb3RfcGh5c19vZmZzZXQsCiAgICAgICovCiAgICAgc21wX3dtYigpOwogCisgICAg bnVtYV9hZGRfY3B1KGNwdWlkKTsKICAgICAvKiBOb3cgcmVwb3J0IHRoaXMgQ1BVIGlzIHVwICov CiAgICAgY3B1bWFza19zZXRfY3B1KGNwdWlkLCAmY3B1X29ubGluZV9tYXApOwogCmRpZmYgLS1n aXQgYS94ZW4vaW5jbHVkZS9hc20tYXJtL251bWEuaCBiL3hlbi9pbmNsdWRlL2FzbS1hcm0vbnVt YS5oCmluZGV4IGQxZGM4M2EuLjBkMzE0NmMgMTAwNjQ0Ci0tLSBhL3hlbi9pbmNsdWRlL2FzbS1h cm0vbnVtYS5oCisrKyBiL3hlbi9pbmNsdWRlL2FzbS1hcm0vbnVtYS5oCkBAIC0xMCwxMiArMTAs MTkgQEAgdm9pZCBpbml0X2R0X251bWFfZGlzdGFuY2Uodm9pZCk7CiAjaWZkZWYgQ09ORklHX05V TUEKIHZvaWQgbnVtYV9pbml0KHZvaWQpOwogaW50IGR0X251bWFfaW5pdCh2b2lkKTsKK3ZvaWQg bnVtYV9zZXRfY3B1X25vZGUoaW50IGNwdSwgdW5zaWduZWQgaW50IG5pZCk7CisKICNlbHNlCiBz dGF0aWMgaW5saW5lIHZvaWQgbnVtYV9pbml0KHZvaWQpCiB7CiAgICAgcmV0dXJuOwogfQogCitz dGF0aWMgaW5saW5lIHZvaWQgbnVtYV9zZXRfY3B1X25vZGUoaW50IGNwdSwgdW5zaWduZWQgaW50 IG5pZCkKK3sKKyAgICByZXR1cm47Cit9CisKIC8qIEZha2Ugb25lIG5vZGUgZm9yIG5vdy4gU2Vl IGFsc28gbm9kZV9vbmxpbmVfbWFwLiAqLwogI2RlZmluZSBjcHVfdG9fbm9kZShjcHUpIDAKICNk ZWZpbmUgbm9kZV90b19jcHVtYXNrKG5vZGUpICAgKGNwdV9vbmxpbmVfbWFwKQpkaWZmIC0tZ2l0 IGEveGVuL2luY2x1ZGUvYXNtLXg4Ni9udW1hLmggYi94ZW4vaW5jbHVkZS9hc20teDg2L251bWEu aAppbmRleCBjYTBhMmE2Li5mYzQ3NDdmIDEwMDY0NAotLS0gYS94ZW4vaW5jbHVkZS9hc20teDg2 L251bWEuaAorKysgYi94ZW4vaW5jbHVkZS9hc20teDg2L251bWEuaApAQCAtMTUsNyArMTUsNiBA QCBleHRlcm4gbm9kZWlkX3QgYWNwaV9zZXR1cF9ub2RlKHVuc2lnbmVkIGludCBweG0pOwogZXh0 ZXJuIHZvaWQgc3JhdF9kZXRlY3Rfbm9kZShpbnQgY3B1KTsKIAogZXh0ZXJuIG5vZGVpZF90IGFw aWNpZF90b19ub2RlW107Ci1leHRlcm4gdm9pZCBpbml0X2NwdV90b19ub2RlKHZvaWQpOwogCiB2 b2lkIHNyYXRfcGFyc2VfcmVnaW9ucyhwYWRkcl90IGFkZHIpOwogdW5zaWduZWQgaW50IGFyY2hf Z2V0X2RtYV9iaXRzaXplKHZvaWQpOwpkaWZmIC0tZ2l0IGEveGVuL2luY2x1ZGUveGVuL251bWEu aCBiL3hlbi9pbmNsdWRlL3hlbi9udW1hLmgKaW5kZXggMTBlZjRjNC4uOGEzMDZlNyAxMDA2NDQK LS0tIGEveGVuL2luY2x1ZGUveGVuL251bWEuaAorKysgYi94ZW4vaW5jbHVkZS94ZW4vbnVtYS5o CkBAIC0zMCw2ICszMCw3IEBAIGV4dGVybiBzOCBhY3BpX251bWE7CiB2b2lkIG51bWFfaW5pdG1l bV9pbml0KHVuc2lnbmVkIGxvbmcgc3RhcnRfcGZuLCB1bnNpZ25lZCBsb25nIGVuZF9wZm4pOwog aW50IHNyYXRfZGlzYWJsZWQodm9pZCk7CiBpbnQgdmFsaWRfbnVtYV9yYW5nZShwYWRkcl90IHN0 YXJ0LCBwYWRkcl90IGVuZCwgbm9kZWlkX3Qgbm9kZSk7Cit2b2lkIGluaXRfY3B1X3RvX25vZGUo dm9pZCk7CiAKICNpZmRlZiBDT05GSUdfTlVNQQogI2RlZmluZSBjcHVfdG9fbm9kZShjcHUpICAg ICAgICAgKGNwdV90b19ub2RlW2NwdV0pCi0tIAoyLjcuNAoKCl9fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fClhlbi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVuLWRl dmVsQGxpc3RzLnhlbi5vcmcKaHR0cHM6Ly9saXN0cy54ZW4ub3JnL3hlbi1kZXZlbAo=