From mboxrd@z Thu Jan 1 00:00:00 1970 From: vijay.kilari@gmail.com Subject: [RFC PATCH v1 06/21] ARM: NUMA: Parse CPU NUMA information Date: Thu, 9 Feb 2017 21:26:58 +0530 Message-ID: <1486655834-9708-7-git-send-email-vijay.kilari@gmail.com> References: <1486655834-9708-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: Received: from mail6.bemta3.messagelabs.com ([195.245.230.39]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cbr81-0007vk-30 for xen-devel@lists.xenproject.org; Thu, 09 Feb 2017 15:59:25 +0000 Received: by mail-pg0-f68.google.com with SMTP id 204so618494pge.2 for ; Thu, 09 Feb 2017 07:59:23 -0800 (PST) In-Reply-To: <1486655834-9708-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: julien.grall@arm.com, sstabellini@kernel.org, andre.przywara@arm.com, dario.faggioli@citrix.com Cc: xen-devel@lists.xenproject.org, Vijaya Kumar K List-Id: xen-devel@lists.xenproject.org RnJvbTogVmlqYXlhIEt1bWFyIEsgPFZpamF5YS5LdW1hckBjYXZpdW0uY29tPgoKUGFyc2UgQ1BV IG5vZGUgYW5kIGZldGNoIG51bWEtbm9kZS1pZCBpbmZvcm1hdGlvbi4KRm9yIGVhY2ggbm9kZS1p ZCBmb3VuZCwgdXBkYXRlIG5vZGVtYXNrX3QgbWFzay4KCkNhbGwgbnVtYV9pbml0KCkgZnJvbSBz ZXR1cF9tbSgpIHdpdGggc3RhcnQgYW5kIGVuZApwZm4gb2YgdGhlIGNvbXBsZXRlIHJhbS4uCgpT aWduZWQtb2ZmLWJ5OiBWaWpheWEgS3VtYXIgSyA8VmlqYXlhLkt1bWFyQGNhdml1bS5jb20+Ci0t LQogeGVuL2FyY2gvYXJtL01ha2VmaWxlICAgICAgICAgfCAgMSArCiB4ZW4vYXJjaC9hcm0vYm9v dGZkdC5jICAgICAgICB8ICA4ICsrLS0tCiB4ZW4vYXJjaC9hcm0vZHRfbnVtYS5jICAgICAgICB8 IDcyICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKIHhlbi9hcmNo L2FybS9udW1hLmMgICAgICAgICAgIHwgMTQgKysrKysrKysrCiB4ZW4vYXJjaC9hcm0vc2V0dXAu YyAgICAgICAgICB8ICAzICsrCiB4ZW4vaW5jbHVkZS9hc20tYXJtL251bWEuaCAgICB8IDE0ICsr KysrKysrKwogeGVuL2luY2x1ZGUveGVuL2RldmljZV90cmVlLmggfCAgNCArKysKIDcgZmlsZXMg Y2hhbmdlZCwgMTEyIGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEv eGVuL2FyY2gvYXJtL01ha2VmaWxlIGIveGVuL2FyY2gvYXJtL01ha2VmaWxlCmluZGV4IGI1ZDdh MTkuLjc2OTQ0ODUgMTAwNjQ0Ci0tLSBhL3hlbi9hcmNoL2FybS9NYWtlZmlsZQorKysgYi94ZW4v YXJjaC9hcm0vTWFrZWZpbGUKQEAgLTUwLDYgKzUwLDcgQEAgb2JqLXkgKz0gdnRpbWVyLm8KIG9i ai15ICs9IHZwc2NpLm8KIG9iai15ICs9IHZ1YXJ0Lm8KIG9iai0kKENPTkZJR19OVU1BKSArPSBu dW1hLm8KK29iai0kKENPTkZJR19OVU1BKSArPSBkdF9udW1hLm8KIAogI29iai1iaW4teSArPSAu Li4ubwogCmRpZmYgLS1naXQgYS94ZW4vYXJjaC9hcm0vYm9vdGZkdC5jIGIveGVuL2FyY2gvYXJt L2Jvb3RmZHQuYwppbmRleCA5NzlmNjc1Li5kMTEyMmQ4IDEwMDY0NAotLS0gYS94ZW4vYXJjaC9h cm0vYm9vdGZkdC5jCisrKyBiL3hlbi9hcmNoL2FybS9ib290ZmR0LmMKQEAgLTE3LDggKzE3LDgg QEAKICNpbmNsdWRlIDx4c20veHNtLmg+CiAjaW5jbHVkZSA8YXNtL3NldHVwLmg+CiAKLXN0YXRp YyBib29sX3QgX19pbml0IGRldmljZV90cmVlX25vZGVfbWF0Y2hlcyhjb25zdCB2b2lkICpmZHQs IGludCBub2RlLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IGNvbnN0IGNoYXIgKm1hdGNoKQorYm9vbF90IF9faW5pdCBkZXZpY2VfdHJlZV9ub2RlX21hdGNo ZXMoY29uc3Qgdm9pZCAqZmR0LCBpbnQgbm9kZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIGNvbnN0IGNoYXIgKm1hdGNoKQogewogICAgIGNvbnN0IGNoYXIgKm5hbWU7 CiAgICAgc2l6ZV90IG1hdGNoX2xlbjsKQEAgLTYzLDggKzYzLDggQEAgc3RhdGljIHZvaWQgX19p bml0IGRldmljZV90cmVlX2dldF9yZWcoY29uc3QgX19iZTMyICoqY2VsbCwgdTMyIGFkZHJlc3Nf Y2VsbHMsCiAgICAgKnNpemUgPSBkdF9uZXh0X2NlbGwoc2l6ZV9jZWxscywgY2VsbCk7CiB9CiAK LXN0YXRpYyB1MzIgX19pbml0IGRldmljZV90cmVlX2dldF91MzIoY29uc3Qgdm9pZCAqZmR0LCBp bnQgbm9kZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hh ciAqcHJvcF9uYW1lLCB1MzIgZGZsdCkKK3UzMiBfX2luaXQgZGV2aWNlX3RyZWVfZ2V0X3UzMihj b25zdCB2b2lkICpmZHQsIGludCBub2RlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IGNvbnN0IGNoYXIgKnByb3BfbmFtZSwgdTMyIGRmbHQpCiB7CiAgICAgY29uc3Qgc3RydWN0IGZk dF9wcm9wZXJ0eSAqcHJvcDsKIApkaWZmIC0tZ2l0IGEveGVuL2FyY2gvYXJtL2R0X251bWEuYyBi L3hlbi9hcmNoL2FybS9kdF9udW1hLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw MC4uNGI5NGMzNgotLS0gL2Rldi9udWxsCisrKyBiL3hlbi9hcmNoL2FybS9kdF9udW1hLmMKQEAg LTAsMCArMSw3MiBAQAorLyoKKyAqIE9GIE5VTUEgUGFyc2luZyBzdXBwb3J0LgorICoKKyAqIENv cHlyaWdodCAoQykgMjAxNSAtIDIwMTYgQ2F2aXVtIEluYy4KKyAqCisgKiBTb21lIGNvZGUgZXh0 cmFjdHMgYXJlIHRha2VuIGZyb20gbGludXggZHJpdmVycy9vZi9vZl9udW1hLmMKKyAqCisgKiBU aGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5k L29yIG1vZGlmeQorICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJs aWMgTGljZW5zZSB2ZXJzaW9uIDIgYXMKKyAqIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2Fy ZSBGb3VuZGF0aW9uLgorICoKKyAqIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUg aG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZ OyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElU WSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyAqIEdOVSBH ZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3Vs ZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UK KyAqIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251 Lm9yZy9saWNlbnNlcy8+LgorICovCisKKyNpbmNsdWRlIDx4ZW4vY29uZmlnLmg+CisjaW5jbHVk ZSA8eGVuL2RldmljZV90cmVlLmg+CisjaW5jbHVkZSA8eGVuL2xpYmZkdC9saWJmZHQuaD4KKyNp bmNsdWRlIDx4ZW4vbW0uaD4KKyNpbmNsdWRlIDx4ZW4vbm9kZW1hc2suaD4KKyNpbmNsdWRlIDxh c20vbW0uaD4KKyNpbmNsdWRlIDx4ZW4vbnVtYS5oPgorCitub2RlbWFza190IG51bWFfbm9kZXNf cGFyc2VkOworCisvKgorICogRXZlbiB0aG91Z2ggd2UgY29ubmVjdCBjcHVzIHRvIG51bWEgZG9t YWlucyBsYXRlciBpbiBTTVAKKyAqIGluaXQsIHdlIG5lZWQgdG8ga25vdyB0aGUgbm9kZSBpZHMg bm93IGZvciBhbGwgY3B1cy4KKyovCitzdGF0aWMgaW50IF9faW5pdCBkdF9udW1hX3Byb2Nlc3Nf Y3B1X25vZGUoY29uc3Qgdm9pZCAqZmR0LCBpbnQgbm9kZSwKKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpuYW1lLAorICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHUzMiBhZGRyZXNzX2NlbGxzLCB1MzIgc2l6ZV9j ZWxscykKK3sKKyAgICB1MzIgbmlkOworCisgICAgbmlkID0gZGV2aWNlX3RyZWVfZ2V0X3UzMihm ZHQsIG5vZGUsICJudW1hLW5vZGUtaWQiLCBNQVhfTlVNTk9ERVMpOworCisgICAgaWYgKCBuaWQg Pj0gTUFYX05VTU5PREVTICkKKyAgICAgICAgcHJpbnRrKFhFTkxPR19XQVJOSU5HICJOVU1BOiBO b2RlIGlkICV1IGV4Y2VlZHMgbWF4aW11bSB2YWx1ZVxuIiwgbmlkKTsKKyAgICBlbHNlCisgICAg ICAgIG5vZGVfc2V0KG5pZCwgbnVtYV9ub2Rlc19wYXJzZWQpOworCisgICAgcmV0dXJuIDA7Cit9 CisKK3N0YXRpYyBpbnQgX19pbml0IGR0X251bWFfc2Nhbl9jcHVfbm9kZShjb25zdCB2b2lkICpm ZHQsIGludCBub2RlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNv bnN0IGNoYXIgKm5hbWUsIGludCBkZXB0aCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICB1MzIgYWRkcmVzc19jZWxscywgdTMyIHNpemVfY2VsbHMsCisgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdm9pZCAqZGF0YSkKKworeworICAgIGlmICgg ZGV2aWNlX3RyZWVfbm9kZV9tYXRjaGVzKGZkdCwgbm9kZSwgImNwdSIpICkKKyAgICAgICAgcmV0 dXJuIGR0X251bWFfcHJvY2Vzc19jcHVfbm9kZShmZHQsIG5vZGUsIG5hbWUsIGFkZHJlc3NfY2Vs bHMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZV9jZWxscyk7 CisKKyAgICByZXR1cm4gMDsKK30KKworaW50IF9faW5pdCBkdF9udW1hX2luaXQodm9pZCkKK3sK KyAgICBpbnQgcmV0OworCisgICAgbm9kZXNfY2xlYXIobnVtYV9ub2Rlc19wYXJzZWQpOworICAg IHJldCA9IGRldmljZV90cmVlX2Zvcl9lYWNoX25vZGUoKHZvaWQgKilkZXZpY2VfdHJlZV9mbGF0 dGVuZWQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdF9udW1hX3NjYW5f Y3B1X25vZGUsIE5VTEwpOworICAgIHJldHVybiByZXQ7Cit9CmRpZmYgLS1naXQgYS94ZW4vYXJj aC9hcm0vbnVtYS5jIGIveGVuL2FyY2gvYXJtL251bWEuYwppbmRleCA1OWQwOWM3Li45YTdmMGJi IDEwMDY0NAotLS0gYS94ZW4vYXJjaC9hcm0vbnVtYS5jCisrKyBiL3hlbi9hcmNoL2FybS9udW1h LmMKQEAgLTIxLDYgKzIxLDIwIEBACiAjaW5jbHVkZSA8eGVuL25vZGVtYXNrLmg+CiAjaW5jbHVk ZSA8YXNtL21tLmg+CiAjaW5jbHVkZSA8eGVuL251bWEuaD4KKyNpbmNsdWRlIDxhc20vYWNwaS5o PgorCitpbnQgX19pbml0IG51bWFfaW5pdCh2b2lkKQoreworICAgIGludCByZXQgPSAwOworCisg ICAgaWYgKCBudW1hX29mZiApCisgICAgICAgIGdvdG8gbm9fbnVtYTsKKworICAgIHJldCA9IGR0 X251bWFfaW5pdCgpOworCitub19udW1hOgorICAgIHJldHVybiByZXQ7Cit9CiAKIGludCBfX2lu aXQgYXJjaF9udW1hX3NldHVwKGNoYXIgKm9wdCkKIHsKZGlmZiAtLWdpdCBhL3hlbi9hcmNoL2Fy bS9zZXR1cC5jIGIveGVuL2FyY2gvYXJtL3NldHVwLmMKaW5kZXggMDQ5ZTQ0OS4uYjY2MThjYSAx MDA2NDQKLS0tIGEveGVuL2FyY2gvYXJtL3NldHVwLmMKKysrIGIveGVuL2FyY2gvYXJtL3NldHVw LmMKQEAgLTM5LDYgKzM5LDcgQEAKICNpbmNsdWRlIDx4ZW4vbGliZmR0L2xpYmZkdC5oPgogI2lu Y2x1ZGUgPHhlbi9hY3BpLmg+CiAjaW5jbHVkZSA8YXNtL2FsdGVybmF0aXZlLmg+CisjaW5jbHVk ZSA8eGVuL251bWEuaD4KICNpbmNsdWRlIDxhc20vcGFnZS5oPgogI2luY2x1ZGUgPGFzbS9jdXJy ZW50Lmg+CiAjaW5jbHVkZSA8YXNtL3NldHVwLmg+CkBAIC03NTMsNiArNzU0LDggQEAgdm9pZCBf X2luaXQgc3RhcnRfeGVuKHVuc2lnbmVkIGxvbmcgYm9vdF9waHlzX29mZnNldCwKICAgICAvKiBQ YXJzZSB0aGUgQUNQSSB0YWJsZXMgZm9yIHBvc3NpYmxlIGJvb3QtdGltZSBjb25maWd1cmF0aW9u ICovCiAgICAgYWNwaV9ib290X3RhYmxlX2luaXQoKTsKIAorICAgIG51bWFfaW5pdCgpOworCiAg ICAgZW5kX2Jvb3RfYWxsb2NhdG9yKCk7CiAKICAgICB2bV9pbml0KCk7CmRpZmYgLS1naXQgYS94 ZW4vaW5jbHVkZS9hc20tYXJtL251bWEuaCBiL3hlbi9pbmNsdWRlL2FzbS1hcm0vbnVtYS5oCmlu ZGV4IGMxZThhN2QuLmNkZmVlY2QgMTAwNjQ0Ci0tLSBhL3hlbi9pbmNsdWRlL2FzbS1hcm0vbnVt YS5oCisrKyBiL3hlbi9pbmNsdWRlL2FzbS1hcm0vbnVtYS5oCkBAIC0xLDE4ICsxLDMyIEBACiAj aWZuZGVmIF9fQVJDSF9BUk1fTlVNQV9ICiAjZGVmaW5lIF9fQVJDSF9BUk1fTlVNQV9ICiAKKyNp bmNsdWRlIDx4ZW4vZXJybm8uaD4KKwogdHlwZWRlZiB1OCBub2RlaWRfdDsKIAogI2RlZmluZSBO T0RFU19TSElGVCAyCiAKICNpZmRlZiBDT05GSUdfTlVNQQogaW50IGFyY2hfbnVtYV9zZXR1cChj aGFyICpvcHQpOworaW50IF9faW5pdCBudW1hX2luaXQodm9pZCk7CitpbnQgX19pbml0IGR0X251 bWFfaW5pdCh2b2lkKTsKICNlbHNlCiBzdGF0aWMgaW5saW5lIGludCBhcmNoX251bWFfc2V0dXAo Y2hhciAqb3B0KQogewogICAgIHJldHVybiAxOwogfQogCitzdGF0aWMgaW5saW5lIGludCBfX2lu aXQgbnVtYV9pbml0KHZvaWQpCit7CisgICAgcmV0dXJuIDA7Cit9CisKK3N0YXRpYyBpbmxpbmUg aW50IF9faW5pdCBkdF9udW1hX2luaXQodm9pZCkKK3sKKyAgICByZXR1cm4gLUVJTlZBTDsKK30K KwogLyogRmFrZSBvbmUgbm9kZSBmb3Igbm93LiBTZWUgYWxzbyBub2RlX29ubGluZV9tYXAuICov CiAjZGVmaW5lIGNwdV90b19ub2RlKGNwdSkgMAogI2RlZmluZSBub2RlX3RvX2NwdW1hc2sobm9k ZSkgICAoY3B1X29ubGluZV9tYXApCmRpZmYgLS1naXQgYS94ZW4vaW5jbHVkZS94ZW4vZGV2aWNl X3RyZWUuaCBiL3hlbi9pbmNsdWRlL3hlbi9kZXZpY2VfdHJlZS5oCmluZGV4IDBhZWNiZTAuLmRl NmIzNTEgMTAwNjQ0Ci0tLSBhL3hlbi9pbmNsdWRlL3hlbi9kZXZpY2VfdHJlZS5oCisrKyBiL3hl bi9pbmNsdWRlL3hlbi9kZXZpY2VfdHJlZS5oCkBAIC0xODgsNiArMTg4LDEwIEBAIGludCBkZXZp Y2VfdHJlZV9mb3JfZWFjaF9ub2RlKGNvbnN0IHZvaWQgKmZkdCwKICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBkZXZpY2VfdHJlZV9ub2RlX2Z1bmMgZnVuYywKICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2b2lkICpkYXRhKTsKIAorYm9vbF90IGRldmlj ZV90cmVlX25vZGVfbWF0Y2hlcyhjb25zdCB2b2lkICpmZHQsIGludCBub2RlLAorICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICptYXRjaCk7Cit1MzIgZGV2aWNlX3Ry ZWVfZ2V0X3UzMihjb25zdCB2b2lkICpmZHQsIGludCBub2RlLAorICAgICAgICAgICAgICAgICAg ICAgICAgY29uc3QgY2hhciAqcHJvcF9uYW1lLCB1MzIgZGZsdCk7CiAvKioKICAqIGR0X3VuZmxh dHRlbl9ob3N0X2RldmljZV90cmVlIC0gVW5mbGF0dGVuIHRoZSBob3N0IGRldmljZSB0cmVlCiAg KgotLSAKMi43LjQKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fXwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW4ub3JnCmh0dHBz Oi8vbGlzdHMueGVuLm9yZy94ZW4tZGV2ZWwK