From mboxrd@z Thu Jan 1 00:00:00 1970 From: vijay.kilari@gmail.com Subject: [RFC PATCH v3 04/24] x86: NUMA: Rename and sanitize memnode shift code Date: Tue, 18 Jul 2017 17:11:26 +0530 Message-ID: <1500378106-2620-5-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 RnJvbTogVmlqYXlhIEt1bWFyIEsgPFZpamF5YS5LdW1hckBjYXZpdW0uY29tPgoKbWVtbm9kZV9z aGlmdCB2YXJpYWJsZSBpcyBjaGFuZ2VkIGZyb20gaW50IHRvIHVuc2lnbmVkIGludC4KV2l0aCB0 aGlzIGNoYW5nZSwgY29tcHV0ZV9tZW1ub2RlX3NoaWZ0KCkgcmV0dXJucyBlcnJvciB2YWx1ZQpp bnN0ZWFkIG9mIHJldHVybmluZyBzaGlmdCB2YWx1ZS4gVGhlIG1lbW5vZGVfc2hpZnQgaXMgdXBk YXRlZCBpbnNpZGUKY29tcHV0ZV9tZW1ub2RlX3NoaWZ0KCkuCgpBbHNvLCBmb2xsb3dpbmcgY2hh bmdlcyBhcmUgbWFkZQogIC0gUmVuYW1lIGNvbXB1dGVfaGFzaF9zaGlmdCB0byBjb21wdXRlX21l bW5vZGVfc2hpZnQKICAtIFVwZGF0ZSBpbnQgdG8gdW5zaWduZWQgaW50IGZvciBwYXJhbXMgaW4g ZXh0cmFjdF9sc2JfZnJvbV9ub2RlcygpCiAgLSBSZXR1cm4gdmFsdWVzIG9mIHBvcHVsYXRlX21l bW5vZGVtYXAoKSBpcyBjaGFuZ2VkCgpTaWduZWQtb2ZmLWJ5OiBWaWpheWEgS3VtYXIgSyA8Vmlq YXlhLkt1bWFyQGNhdml1bS5jb20+Ci0tLQp2MzoKICAtIFVwZGF0ZSBpbnQgdG8gdW5zaWduZWQg aW50IGZvciBwYXJhbXMgaW4gZXh0cmFjdF9sc2JfZnJvbV9ub2RlcygpCiAgLSBSZXR1cm4gdmFs dWVzIG9mIHBvcHVsYXRlX21lbW5vZGVtYXAoKSBpcyBjaGFuZ2VkCi0tLQogeGVuL2FyY2gveDg2 L251bWEuYyAgICAgICAgfCA1MyArKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0t LS0tLS0tLS0tCiB4ZW4vYXJjaC94ODYvc3JhdC5jICAgICAgICB8ICA3ICsrKy0tLQogeGVuL2lu Y2x1ZGUvYXNtLXg4Ni9udW1hLmggfCAgNiArKystLS0KIDMgZmlsZXMgY2hhbmdlZCwgMzQgaW5z ZXJ0aW9ucygrKSwgMzIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEveGVuL2FyY2gveDg2L251 bWEuYyBiL3hlbi9hcmNoL3g4Ni9udW1hLmMKaW5kZXggYWE0YTdjMS4uMmVhMmVjMCAxMDA2NDQK LS0tIGEveGVuL2FyY2gveDg2L251bWEuYworKysgYi94ZW4vYXJjaC94ODYvbnVtYS5jCkBAIC0y NCw3ICsyNCw3IEBAIGN1c3RvbV9wYXJhbSgibnVtYSIsIG51bWFfc2V0dXApOwogc3RydWN0IG5v ZGVfZGF0YSBub2RlX2RhdGFbTUFYX05VTU5PREVTXTsKIAogLyogTWFwcGluZyBmcm9tIHBkeCB0 byBub2RlIGlkICovCi1pbnQgbWVtbm9kZV9zaGlmdDsKK3Vuc2lnbmVkIGludCBtZW1ub2RlX3No aWZ0OwogCiAvKgogICogSW4gY2FzZSBvZiBudW1hIGluaXQgZmFpbHVyZSBvciBudW1hIG9mZiwK QEAgLTU5LDE1ICs1OSwxNiBAQCBpbnQgc3JhdF9kaXNhYmxlZCh2b2lkKQogLyoKICAqIEdpdmVu IGEgc2hpZnQgdmFsdWUsIHRyeSB0byBwb3B1bGF0ZSBtZW1ub2RlbWFwW10KICAqIFJldHVybnMg OgotICogMSBpZiBPSwotICogMCBpZiBtZW1ub2RtYXBbXSB0b28gc21hbGwgKG9mIHNoaWZ0IHRv byBzbWFsbCkKLSAqIC0xIGlmIG5vZGUgb3ZlcmxhcCBvciBsb3N0IHJhbSAoc2hpZnQgdG9vIGJp ZykKKyAqIDAgaWYgT0sKKyAqIC1FTk9TUEMgaWYgbWVtbm9kbWFwW10gdG9vIHNtYWxsIChvciBz aGlmdCB0b28gc21hbGwpCisgKiAtRUlOVkFMIGlmIG5vZGUgb3ZlcmxhcCBvciBsb3N0IHJhbSAo c2hpZnQgdG9vIGJpZykKICAqLwogc3RhdGljIGludCBfX2luaXQgcG9wdWxhdGVfbWVtbm9kZW1h cChjb25zdCBzdHJ1Y3Qgbm9kZSAqbm9kZXMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIGludCBudW1ub2RlcywgaW50IHNoaWZ0LCBub2RlaWRfdCAqbm9kZWlkcykKKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50IG51bW5vZGVz LCB1bnNpZ25lZCBpbnQgc2hpZnQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIG5vZGVpZF90ICpub2RlaWRzKQogewogICAgIHVuc2lnbmVkIGxvbmcgc3BkeCwgZXBkeDsK LSAgICBpbnQgaSwgcmVzID0gLTE7CisgICAgaW50IGksIHJlcyA9IC1FSU5WQUw7CiAKICAgICBt ZW1zZXQobWVtbm9kZW1hcCwgTlVNQV9OT19OT0RFLCBtZW1ub2RlbWFwc2l6ZSAqIHNpemVvZigq bWVtbm9kZW1hcCkpOwogICAgIGZvciAoIGkgPSAwOyBpIDwgbnVtbm9kZXM7IGkrKyApCkBAIC03 NywxMCArNzgsMTAgQEAgc3RhdGljIGludCBfX2luaXQgcG9wdWxhdGVfbWVtbm9kZW1hcChjb25z dCBzdHJ1Y3Qgbm9kZSAqbm9kZXMsCiAgICAgICAgIGlmICggc3BkeCA+PSBlcGR4ICkKICAgICAg ICAgICAgIGNvbnRpbnVlOwogICAgICAgICBpZiAoIChlcGR4ID4+IHNoaWZ0KSA+PSBtZW1ub2Rl bWFwc2l6ZSApCi0gICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgICAgIHJldHVybiAtRU5P U1BDOwogICAgICAgICBkbyB7CiAgICAgICAgICAgICBpZiAoIG1lbW5vZGVtYXBbc3BkeCA+PiBz aGlmdF0gIT0gTlVNQV9OT19OT0RFICkKLSAgICAgICAgICAgICAgICByZXR1cm4gLTE7CisgICAg ICAgICAgICAgICAgcmV0dXJuIC1FSU5WQUw7CiAKICAgICAgICAgICAgIGlmICggIW5vZGVpZHMg KQogICAgICAgICAgICAgICAgIG1lbW5vZGVtYXBbc3BkeCA+PiBzaGlmdF0gPSBpOwpAQCAtODks NyArOTAsNyBAQCBzdGF0aWMgaW50IF9faW5pdCBwb3B1bGF0ZV9tZW1ub2RlbWFwKGNvbnN0IHN0 cnVjdCBub2RlICpub2RlcywKIAogICAgICAgICAgICAgc3BkeCArPSAoMVVMIDw8IHNoaWZ0KTsK ICAgICAgICAgfSB3aGlsZSAoIHNwZHggPCBlcGR4ICk7Ci0gICAgICAgIHJlcyA9IDE7CisgICAg ICAgIHJlcyA9IDA7CiAgICAgfQogCiAgICAgcmV0dXJuIHJlczsKQEAgLTEwNSw3ICsxMDYsNyBA QCBzdGF0aWMgaW50IF9faW5pdCBhbGxvY2F0ZV9jYWNoZWFsaWduZWRfbWVtbm9kZW1hcCh2b2lk KQogICAgICAgICBwcmludGsoS0VSTl9FUlIKICAgICAgICAgICAgICAgICJOVU1BOiBVbmFibGUg dG8gYWxsb2NhdGUgTWVtb3J5IHRvIE5vZGUgaGFzaCBtYXBcbiIpOwogICAgICAgICBtZW1ub2Rl bWFwc2l6ZSA9IDA7Ci0gICAgICAgIHJldHVybiAtMTsKKyAgICAgICAgcmV0dXJuIC1FTk9NRU07 CiAgICAgfQogCiAgICAgbWVtbm9kZW1hcCA9IG1mbl90b192aXJ0KG1mbik7CkBAIC0xMjIsMTAg KzEyMywxMCBAQCBzdGF0aWMgaW50IF9faW5pdCBhbGxvY2F0ZV9jYWNoZWFsaWduZWRfbWVtbm9k ZW1hcCh2b2lkKQogICogVGhlIExTQiBvZiBhbGwgc3RhcnQgYW5kIGVuZCBhZGRyZXNzZXMgaW4g dGhlIG5vZGUgbWFwIGlzIHRoZSB2YWx1ZSBvZiB0aGUKICAqIG1heGltdW0gcG9zc2libGUgc2hp ZnQuCiAgKi8KLXN0YXRpYyBpbnQgX19pbml0IGV4dHJhY3RfbHNiX2Zyb21fbm9kZXMoY29uc3Qg c3RydWN0IG5vZGUgKm5vZGVzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBpbnQgbnVtbm9kZXMpCitzdGF0aWMgdW5zaWduZWQgaW50IF9faW5pdCBleHRyYWN0X2xz Yl9mcm9tX25vZGVzKGNvbnN0IHN0cnVjdCBub2RlICpub2RlcywKKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50IG51bW5vZGVzKQog ewotICAgIGludCBpLCBub2Rlc191c2VkID0gMDsKKyAgICB1bnNpZ25lZCBpbnQgaSwgbm9kZXNf dXNlZCA9IDA7CiAgICAgdW5zaWduZWQgbG9uZyBzcGR4LCBlcGR4OwogICAgIHVuc2lnbmVkIGxv bmcgYml0ZmllbGQgPSAwLCBtZW10b3AgPSAwOwogCkBAIC0xNDksMjcgKzE1MCwzMCBAQCBzdGF0 aWMgaW50IF9faW5pdCBleHRyYWN0X2xzYl9mcm9tX25vZGVzKGNvbnN0IHN0cnVjdCBub2RlICpu b2RlcywKICAgICByZXR1cm4gaTsKIH0KIAotaW50IF9faW5pdCBjb21wdXRlX2hhc2hfc2hpZnQo c3RydWN0IG5vZGUgKm5vZGVzLCBpbnQgbnVtbm9kZXMsCi0gICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBub2RlaWRfdCAqbm9kZWlkcykKK2ludCBfX2luaXQgY29tcHV0ZV9tZW1ub2RlX3No aWZ0KHN0cnVjdCBub2RlICpub2RlcywgdW5zaWduZWQgaW50IG51bW5vZGVzLAorICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgbm9kZWlkX3QgKm5vZGVpZHMpCiB7Ci0gICAgaW50IHNo aWZ0OworICAgIGludCByZXQ7CisKKyAgICBtZW1ub2RlX3NoaWZ0ID0gZXh0cmFjdF9sc2JfZnJv bV9ub2Rlcyhub2RlcywgbnVtbm9kZXMpOwogCi0gICAgc2hpZnQgPSBleHRyYWN0X2xzYl9mcm9t X25vZGVzKG5vZGVzLCBudW1ub2Rlcyk7CiAgICAgaWYgKCBtZW1ub2RlbWFwc2l6ZSA8PSBBUlJB WV9TSVpFKF9tZW1ub2RlbWFwKSApCiAgICAgICAgIG1lbW5vZGVtYXAgPSBfbWVtbm9kZW1hcDsK ICAgICBlbHNlIGlmICggYWxsb2NhdGVfY2FjaGVhbGlnbmVkX21lbW5vZGVtYXAoKSApCi0gICAg ICAgIHJldHVybiAtMTsKLSAgICBwcmludGsoS0VSTl9ERUJVRyAiTlVNQTogVXNpbmcgJWQgZm9y IHRoZSBoYXNoIHNoaWZ0LlxuIiwgc2hpZnQpOworICAgICAgICByZXR1cm4gLUVOT01FTTsKIAot ICAgIGlmICggcG9wdWxhdGVfbWVtbm9kZW1hcChub2RlcywgbnVtbm9kZXMsIHNoaWZ0LCBub2Rl aWRzKSAhPSAxICkKKyAgICBwcmludGsoS0VSTl9ERUJVRyAiTlVNQTogVXNpbmcgJXUgZm9yIHRo ZSBoYXNoIHNoaWZ0LlxuIiwgbWVtbm9kZV9zaGlmdCk7CisKKyAgICByZXQgPSBwb3B1bGF0ZV9t ZW1ub2RlbWFwKG5vZGVzLCBudW1ub2RlcywgbWVtbm9kZV9zaGlmdCwgbm9kZWlkcyk7CisgICAg aWYgKCByZXQgKQogICAgIHsKICAgICAgICAgcHJpbnRrKEtFUk5fSU5GTyAiWW91ciBtZW1vcnkg aXMgbm90IGFsaWduZWQgeW91IG5lZWQgdG8gIgogICAgICAgICAgICAgICAgInJlYnVpbGQgeW91 ciBoeXBlcnZpc29yIHdpdGggYSBiaWdnZXIgTk9ERU1BUFNJWkUgIgotICAgICAgICAgICAgICAg InNoaWZ0PSVkXG4iLCBzaGlmdCk7Ci0gICAgICAgIHJldHVybiAtMTsKKyAgICAgICAgICAgICAg ICJzaGlmdD0ldVxuIiwgbWVtbm9kZV9zaGlmdCk7CisgICAgICAgIHJldHVybiByZXQ7CiAgICAg fQogCi0gICAgcmV0dXJuIHNoaWZ0OworICAgIHJldHVybiAwOwogfQogLyogaW5pdGlhbGl6ZSBO T0RFX0RBVEEgZ2l2ZW4gbm9kZWlkIGFuZCBzdGFydC9lbmQgKi8KIHZvaWQgX19pbml0IHNldHVw X25vZGVfYm9vdG1lbShub2RlaWRfdCBub2RlaWQsIHBhZGRyX3Qgc3RhcnQsIHBhZGRyX3QgZW5k KQpAQCAtMjQyLDggKzI0Niw3IEBAIHN0YXRpYyBpbnQgX19pbml0IG51bWFfZW11bGF0aW9uKHVp bnQ2NF90IHN0YXJ0X3BmbiwgdWludDY0X3QgZW5kX3BmbikKICAgICAgICAgICAgICAgIChub2Rl c1tpXS5lbmQgLSBub2Rlc1tpXS5zdGFydCkgPj4gMjApOwogICAgICAgICBub2RlX3NldF9vbmxp bmUoaSk7CiAgICAgfQotICAgIG1lbW5vZGVfc2hpZnQgPSBjb21wdXRlX2hhc2hfc2hpZnQobm9k ZXMsIG51bWFfZmFrZSwgTlVMTCk7Ci0gICAgaWYgKCBtZW1ub2RlX3NoaWZ0IDwgMCApCisgICAg aWYgKCBjb21wdXRlX21lbW5vZGVfc2hpZnQobm9kZXMsIG51bWFfZmFrZSwgTlVMTCkgKQogICAg IHsKICAgICAgICAgbWVtbm9kZV9zaGlmdCA9IDA7CiAgICAgICAgIHByaW50ayhLRVJOX0VSUiAi Tm8gTlVNQSBoYXNoIGZ1bmN0aW9uIGZvdW5kLiBFbXVsYXRpb24gZGlzYWJsZWQuXG4iKTsKZGlm ZiAtLWdpdCBhL3hlbi9hcmNoL3g4Ni9zcmF0LmMgYi94ZW4vYXJjaC94ODYvc3JhdC5jCmluZGV4 IDIwOWZmYzcuLjUzNWM5ZDcgMTAwNjQ0Ci0tLSBhL3hlbi9hcmNoL3g4Ni9zcmF0LmMKKysrIGIv eGVuL2FyY2gveDg2L3NyYXQuYwpAQCAtNDcwLDEwICs0NzAsOSBAQCBpbnQgX19pbml0IGFjcGlf c2Nhbl9ub2RlcyhwYWRkcl90IHN0YXJ0LCBwYWRkcl90IGVuZCkKIAkJcmV0dXJuIC0xOwogCX0K IAotCW1lbW5vZGVfc2hpZnQgPSBjb21wdXRlX2hhc2hfc2hpZnQobm9kZV9tZW1ibGtfcmFuZ2Us IG51bV9ub2RlX21lbWJsa3MsCi0JCQkJbWVtYmxrX25vZGVpZCk7Ci0KLQlpZiAobWVtbm9kZV9z aGlmdCA8IDApIHsKKwlpZiAoY29tcHV0ZV9tZW1ub2RlX3NoaWZ0KG5vZGVfbWVtYmxrX3Jhbmdl LCBudW1fbm9kZV9tZW1ibGtzLAorCQkJCSAgbWVtYmxrX25vZGVpZCkpIHsKKwkJbWVtbm9kZV9z aGlmdCA9IDA7CiAJCXByaW50ayhLRVJOX0VSUgogCQkgICAgICJTUkFUOiBObyBOVU1BIG5vZGUg aGFzaCBmdW5jdGlvbiBmb3VuZC4gQ29udGFjdCBtYWludGFpbmVyXG4iKTsKIAkJYmFkX3NyYXQo KTsKZGlmZiAtLWdpdCBhL3hlbi9pbmNsdWRlL2FzbS14ODYvbnVtYS5oIGIveGVuL2luY2x1ZGUv YXNtLXg4Ni9udW1hLmgKaW5kZXggNWU4NDc0Zi4uMWJhYzI1YyAxMDA2NDQKLS0tIGEveGVuL2lu Y2x1ZGUvYXNtLXg4Ni9udW1hLmgKKysrIGIveGVuL2luY2x1ZGUvYXNtLXg4Ni9udW1hLmgKQEAg LTIzLDggKzIzLDggQEAgc3RydWN0IG5vZGUgewogICAgIHBhZGRyX3QgZW5kOwogfTsKIAotZXh0 ZXJuIGludCBjb21wdXRlX2hhc2hfc2hpZnQoc3RydWN0IG5vZGUgKm5vZGVzLCBpbnQgbnVtbm9k ZXMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBub2RlaWRfdCAqbm9kZWlkcyk7Citl eHRlcm4gaW50IGNvbXB1dGVfbWVtbm9kZV9zaGlmdChzdHJ1Y3Qgbm9kZSAqbm9kZXMsIHVuc2ln bmVkIGludCBudW1ub2RlcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5vZGVp ZF90ICpub2RlaWRzKTsKIGV4dGVybiBub2RlaWRfdCBweG1fdG9fbm9kZSh1bnNpZ25lZCBpbnQg cHhtKTsKIAogI2RlZmluZSBaT05FX0FMSUdOICgxVUwgPDwgKE1BWF9PUkRFUitQQUdFX1NISUZU KSkKQEAgLTQ0LDcgKzQ0LDcgQEAgZXh0ZXJuIG5vZGVpZF90IGFwaWNpZF90b19ub2RlW107CiBl eHRlcm4gdm9pZCBpbml0X2NwdV90b19ub2RlKHZvaWQpOwogCiAvKiBTaW1wbGUgcGVyZmVjdCBo YXNoIHRvIG1hcCBwZHggdG8gbm9kZSBudW1iZXJzICovCi1leHRlcm4gaW50IG1lbW5vZGVfc2hp ZnQ7CitleHRlcm4gdW5zaWduZWQgaW50IG1lbW5vZGVfc2hpZnQ7CiBleHRlcm4gdW5zaWduZWQg bG9uZyBtZW1ub2RlbWFwc2l6ZTsKIGV4dGVybiB1aW50OF90ICptZW1ub2RlbWFwOwogCi0tIAoy LjcuNAoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fClhl bi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhlbi5vcmcKaHR0cHM6Ly9saXN0 cy54ZW4ub3JnL3hlbi1kZXZlbAo=