From mboxrd@z Thu Jan 1 00:00:00 1970 From: Yi Sun Subject: [PATCH v1 12/13] tools: implemet new set value interface suitable for all psr allocation features Date: Wed, 9 Aug 2017 15:41:51 +0800 Message-ID: <1502264512-4648-13-git-send-email-yi.y.sun@linux.intel.com> References: <1502264512-4648-1-git-send-email-yi.y.sun@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail6.bemta6.messagelabs.com ([193.109.254.103]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1dfLsy-00023e-JX for xen-devel@lists.xenproject.org; Wed, 09 Aug 2017 07:58:36 +0000 In-Reply-To: <1502264512-4648-1-git-send-email-yi.y.sun@linux.intel.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: xen-devel@lists.xenproject.org Cc: kevin.tian@intel.com, wei.liu2@citrix.com, andrew.cooper3@citrix.com, dario.faggioli@citrix.com, ian.jackson@eu.citrix.com, Yi Sun , julien.grall@arm.com, mengxu@cis.upenn.edu, jbeulich@suse.com, chao.p.peng@linux.intel.com, roger.pau@citrix.com List-Id: xen-devel@lists.xenproject.org VGhpcyBwYXRjaCBpbXBsZW1lbnRzIGEgbmV3IHNldCB2YWx1ZSBpbnRlcmZhY2UgaW4gdG9vbHMg c3VpdGFibGUgZm9yIGFsbCBwc3IKYWxsb2NhdGlvbiBmZWF0dXJlcyBhbmQgdGhlIHdob2xlIGZs b3cuIEl0IGFsc28gZW5hYmxlcyBNQkEgc3VwcG9ydCB0byBzZXQKTUJBIHZhbHVlIGluIHRvb2xz LgoKU2lnbmVkLW9mZi1ieTogWWkgU3VuIDx5aS55LnN1bkBsaW51eC5pbnRlbC5jb20+Ci0tLQog dG9vbHMvbGlieGMvaW5jbHVkZS94ZW5jdHJsLmggfCAgNiArKy0tLQogdG9vbHMvbGlieGMveGNf cHNyLmMgICAgICAgICAgfCAgOSArKysrLS0tCiB0b29scy9saWJ4bC9saWJ4bF9wc3IuYyAgICAg ICB8IDU2ICsrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIHRvb2xz L3hsL3hsLmggICAgICAgICAgICAgICAgIHwgIDEgKwogdG9vbHMveGwveGxfY21kdGFibGUuYyAg ICAgICAgfCAgNiArKysrKwogdG9vbHMveGwveGxfcHNyLmMgICAgICAgICAgICAgfCA1NSArKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKIDYgZmlsZXMgY2hhbmdlZCwg OTkgaW5zZXJ0aW9ucygrKSwgMzQgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvdG9vbHMvbGli eGMvaW5jbHVkZS94ZW5jdHJsLmggYi90b29scy9saWJ4Yy9pbmNsdWRlL3hlbmN0cmwuaAppbmRl eCBkN2VhYmZiLi4zMTYxYmY2IDEwMDY0NAotLS0gYS90b29scy9saWJ4Yy9pbmNsdWRlL3hlbmN0 cmwuaAorKysgYi90b29scy9saWJ4Yy9pbmNsdWRlL3hlbmN0cmwuaApAQCAtMjQ5OSw5ICsyNDk5 LDkgQEAgaW50IHhjX3Bzcl9jbXRfZ2V0X2RhdGEoeGNfaW50ZXJmYWNlICp4Y2gsIHVpbnQzMl90 IHJtaWQsIHVpbnQzMl90IGNwdSwKICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQ2NF90ICp0 c2MpOwogaW50IHhjX3Bzcl9jbXRfZW5hYmxlZCh4Y19pbnRlcmZhY2UgKnhjaCk7CiAKLWludCB4 Y19wc3JfY2F0X3NldF9kb21haW5fZGF0YSh4Y19pbnRlcmZhY2UgKnhjaCwgdWludDMyX3QgZG9t aWQsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeGNfcHNyX3ZhbF90eXBlIHR5cGUs IHVpbnQzMl90IHRhcmdldCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50NjRf dCBkYXRhKTsKK2ludCB4Y19wc3Jfc2V0X2RvbWFpbl9kYXRhKHhjX2ludGVyZmFjZSAqeGNoLCB1 aW50MzJfdCBkb21pZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIHhjX3Bzcl92YWxfdHlw ZSB0eXBlLCB1aW50MzJfdCB0YXJnZXQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50 NjRfdCBkYXRhKTsKIGludCB4Y19wc3JfZ2V0X2RvbWFpbl9kYXRhKHhjX2ludGVyZmFjZSAqeGNo LCB1aW50MzJfdCBkb21pZCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHhjX3Bzcl92YWxf dHlwZSB0eXBlLCB1aW50MzJfdCB0YXJnZXQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB1 aW50NjRfdCAqZGF0YSk7CmRpZmYgLS1naXQgYS90b29scy9saWJ4Yy94Y19wc3IuYyBiL3Rvb2xz L2xpYnhjL3hjX3Bzci5jCmluZGV4IGRlNTAxYjAuLjRkZGU3NmYgMTAwNjQ0Ci0tLSBhL3Rvb2xz L2xpYnhjL3hjX3Bzci5jCisrKyBiL3Rvb2xzL2xpYnhjL3hjX3Bzci5jCkBAIC0yNDgsOSArMjQ4 LDkgQEAgaW50IHhjX3Bzcl9jbXRfZW5hYmxlZCh4Y19pbnRlcmZhY2UgKnhjaCkKIAogICAgIHJl dHVybiAwOwogfQotaW50IHhjX3Bzcl9jYXRfc2V0X2RvbWFpbl9kYXRhKHhjX2ludGVyZmFjZSAq eGNoLCB1aW50MzJfdCBkb21pZCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4Y19w c3JfdmFsX3R5cGUgdHlwZSwgdWludDMyX3QgdGFyZ2V0LAotICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIHVpbnQ2NF90IGRhdGEpCitpbnQgeGNfcHNyX3NldF9kb21haW5fZGF0YSh4Y19p bnRlcmZhY2UgKnhjaCwgdWludDMyX3QgZG9taWQsCisgICAgICAgICAgICAgICAgICAgICAgICAg ICB4Y19wc3JfdmFsX3R5cGUgdHlwZSwgdWludDMyX3QgdGFyZ2V0LAorICAgICAgICAgICAgICAg ICAgICAgICAgICAgdWludDY0X3QgZGF0YSkKIHsKICAgICBERUNMQVJFX0RPTUNUTDsKICAgICB1 aW50MzJfdCBjbWQ7CkBAIC0yNjksNiArMjY5LDkgQEAgaW50IHhjX3Bzcl9jYXRfc2V0X2RvbWFp bl9kYXRhKHhjX2ludGVyZmFjZSAqeGNoLCB1aW50MzJfdCBkb21pZCwKICAgICBjYXNlIFhDX1BT Ul9DQVRfTDJfQ0JNOgogICAgICAgICBjbWQgPSBYRU5fRE9NQ1RMX1BTUl9DQVRfT1BfU0VUX0wy X0NCTTsKICAgICAgICAgYnJlYWs7CisgICAgY2FzZSBYQ19QU1JfTUJBX1RIUlRMOgorICAgICAg ICBjbWQgPSBYRU5fRE9NQ1RMX1BTUl9NQkFfT1BfU0VUX1RIUlRMOworICAgICAgICBicmVhazsK ICAgICBkZWZhdWx0OgogICAgICAgICBlcnJubyA9IEVJTlZBTDsKICAgICAgICAgcmV0dXJuIC0x OwpkaWZmIC0tZ2l0IGEvdG9vbHMvbGlieGwvbGlieGxfcHNyLmMgYi90b29scy9saWJ4bC9saWJ4 bF9wc3IuYwppbmRleCA0YjkxZTliLi5mZTBhODY4IDEwMDY0NAotLS0gYS90b29scy9saWJ4bC9s aWJ4bF9wc3IuYworKysgYi90b29scy9saWJ4bC9saWJ4bF9wc3IuYwpAQCAtMzI4LDMzICszMjgs NyBAQCBpbnQgbGlieGxfcHNyX2NhdF9zZXRfY2JtKGxpYnhsX2N0eCAqY3R4LCB1aW50MzJfdCBk b21pZCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgbGlieGxfcHNyX2NibV90eXBlIHR5cGUs IGxpYnhsX2JpdG1hcCAqdGFyZ2V0X21hcCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgdWlu dDY0X3QgY2JtKQogewotICAgIEdDX0lOSVQoY3R4KTsKLSAgICBpbnQgcmM7Ci0gICAgaW50IHNv Y2tldGlkLCBucl9zb2NrZXRzOwotCi0gICAgcmMgPSBsaWJ4bF9fY291bnRfcGh5c2ljYWxfc29j a2V0cyhnYywgJm5yX3NvY2tldHMpOwotICAgIGlmIChyYykgewotICAgICAgICBMT0dFRChFUlJP UiwgZG9taWQsICJmYWlsZWQgdG8gZ2V0IHN5c3RlbSBzb2NrZXQgY291bnQiKTsKLSAgICAgICAg Z290byBvdXQ7Ci0gICAgfQotCi0gICAgbGlieGxfZm9yX2VhY2hfc2V0X2JpdChzb2NrZXRpZCwg KnRhcmdldF9tYXApIHsKLSAgICAgICAgeGNfcHNyX3ZhbF90eXBlIHhjX3R5cGU7Ci0KLSAgICAg ICAgaWYgKHNvY2tldGlkID49IG5yX3NvY2tldHMpCi0gICAgICAgICAgICBicmVhazsKLQotICAg ICAgICB4Y190eXBlID0gbGlieGxfX3Bzcl9jYm1fdHlwZV90b19saWJ4Y19wc3JfdmFsX3R5cGUo dHlwZSk7Ci0gICAgICAgIGlmICh4Y19wc3JfY2F0X3NldF9kb21haW5fZGF0YShjdHgtPnhjaCwg ZG9taWQsIHhjX3R5cGUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBz b2NrZXRpZCwgY2JtKSkgewotICAgICAgICAgICAgbGlieGxfX3Bzcl9hbGxvY19sb2dfZXJyX21z ZyhnYywgZXJybm8sIHR5cGUpOwotICAgICAgICAgICAgcmMgPSBFUlJPUl9GQUlMOwotICAgICAg ICB9Ci0gICAgfQotCi1vdXQ6Ci0gICAgR0NfRlJFRTsKLSAgICByZXR1cm4gcmM7CisgICAgcmV0 dXJuIGxpYnhsX3Bzcl9zZXRfdmFsKGN0eCwgZG9taWQsIHR5cGUsIHRhcmdldF9tYXAsIGNibSk7 CiB9CiAKIGludCBsaWJ4bF9wc3JfY2F0X2dldF9jYm0obGlieGxfY3R4ICpjdHgsIHVpbnQzMl90 IGRvbWlkLApAQCAtNDM0LDcgKzQwOCwzMyBAQCBpbnQgbGlieGxfcHNyX3NldF92YWwobGlieGxf Y3R4ICpjdHgsIHVpbnQzMl90IGRvbWlkLAogICAgICAgICAgICAgICAgICAgICAgIGxpYnhsX3Bz cl9jYm1fdHlwZSB0eXBlLCBsaWJ4bF9iaXRtYXAgKnRhcmdldF9tYXAsCiAgICAgICAgICAgICAg ICAgICAgICAgdWludDY0X3QgdmFsKQogewotICAgIHJldHVybiBFUlJPUl9GQUlMOworICAgIEdD X0lOSVQoY3R4KTsKKyAgICBpbnQgcmM7CisgICAgaW50IHNvY2tldGlkLCBucl9zb2NrZXRzOwor CisgICAgcmMgPSBsaWJ4bF9fY291bnRfcGh5c2ljYWxfc29ja2V0cyhnYywgJm5yX3NvY2tldHMp OworICAgIGlmIChyYykgeworICAgICAgICBMT0dFRChFUlJPUiwgZG9taWQsICJmYWlsZWQgdG8g Z2V0IHN5c3RlbSBzb2NrZXQgY291bnQiKTsKKyAgICAgICAgZ290byBvdXQ7CisgICAgfQorCisg ICAgbGlieGxfZm9yX2VhY2hfc2V0X2JpdChzb2NrZXRpZCwgKnRhcmdldF9tYXApIHsKKyAgICAg ICAgeGNfcHNyX3ZhbF90eXBlIHhjX3R5cGU7CisKKyAgICAgICAgaWYgKHNvY2tldGlkID49IG5y X3NvY2tldHMpCisgICAgICAgICAgICBicmVhazsKKworICAgICAgICB4Y190eXBlID0gbGlieGxf X3Bzcl9jYm1fdHlwZV90b19saWJ4Y19wc3JfdmFsX3R5cGUodHlwZSk7CisgICAgICAgIGlmICh4 Y19wc3Jfc2V0X2RvbWFpbl9kYXRhKGN0eC0+eGNoLCBkb21pZCwgeGNfdHlwZSwKKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgc29ja2V0aWQsIHZhbCkpIHsKKyAgICAgICAgICAg IGxpYnhsX19wc3JfYWxsb2NfbG9nX2Vycl9tc2coZ2MsIGVycm5vLCB0eXBlKTsKKyAgICAgICAg ICAgIHJjID0gRVJST1JfRkFJTDsKKyAgICAgICAgfQorICAgIH0KKworb3V0OgorICAgIEdDX0ZS RUU7CisgICAgcmV0dXJuIHJjOwogfQogCiBpbnQgbGlieGxfcHNyX2dldF92YWwobGlieGxfY3R4 ICpjdHgsIHVpbnQzMl90IGRvbWlkLApkaWZmIC0tZ2l0IGEvdG9vbHMveGwveGwuaCBiL3Rvb2xz L3hsL3hsLmgKaW5kZXggNTkwNjVjNC4uMmNiZTg5YyAxMDA2NDQKLS0tIGEvdG9vbHMveGwveGwu aAorKysgYi90b29scy94bC94bC5oCkBAIC0yMDYsNiArMjA2LDcgQEAgaW50IG1haW5fcHNyX2Nt dF9zaG93KGludCBhcmdjLCBjaGFyICoqYXJndik7CiAjaWZkZWYgTElCWExfSEFWRV9QU1JfQ0FU CiBpbnQgbWFpbl9wc3JfY2F0X2NibV9zZXQoaW50IGFyZ2MsIGNoYXIgKiphcmd2KTsKIGludCBt YWluX3Bzcl9jYXRfc2hvdyhpbnQgYXJnYywgY2hhciAqKmFyZ3YpOworaW50IG1haW5fcHNyX21i YV9zZXQoaW50IGFyZ2MsIGNoYXIgKiphcmd2KTsKIGludCBtYWluX3Bzcl9tYmFfc2hvdyhpbnQg YXJnYywgY2hhciAqKmFyZ3YpOwogI2VuZGlmCiBpbnQgbWFpbl9xZW11X21vbml0b3JfY29tbWFu ZChpbnQgYXJnYywgY2hhciAqKmFyZ3YpOwpkaWZmIC0tZ2l0IGEvdG9vbHMveGwveGxfY21kdGFi bGUuYyBiL3Rvb2xzL3hsL3hsX2NtZHRhYmxlLmMKaW5kZXggMTllNTAwNC4uNWY3MTIyZCAxMDA2 NDQKLS0tIGEvdG9vbHMveGwveGxfY21kdGFibGUuYworKysgYi90b29scy94bC94bF9jbWR0YWJs ZS5jCkBAIC01NjIsNiArNTYyLDEyIEBAIHN0cnVjdCBjbWRfc3BlYyBjbWRfdGFibGVbXSA9IHsK ICAgICAgICJbb3B0aW9uc10gPERvbWFpbj4iLAogICAgICAgIi1sIDxsZXZlbD4gICAgICAgIFNw ZWNpZnkgdGhlIGNhY2hlIGxldmVsIHRvIHByb2Nlc3MsIG90aGVyd2lzZSBMMyBjYWNoZSBpcyBw cm9jZXNzZWRcbiIKICAgICB9LAorICAgIHsgInBzci1tYmEtc2V0IiwKKyAgICAgICZtYWluX3Bz cl9tYmFfc2V0LCAwLCAxLAorICAgICAgIlNldCB0aHJvdHRsaW5nIHZhbHVlIChUSFJUTCkgZm9y IGEgZG9tYWluIiwKKyAgICAgICJbb3B0aW9uc10gPERvbWFpbj4gPFRIUlRMPiIsCisgICAgICAi LXMgPHNvY2tldD4gICAgICAgU3BlY2lmeSB0aGUgc29ja2V0IHRvIHByb2Nlc3MsIG90aGVyd2lz ZSBhbGwgc29ja2V0cyBhcmUgcHJvY2Vzc2VkXG4iCisgICAgfSwKICAgICB7ICJwc3ItbWJhLXNo b3ciLAogICAgICAgJm1haW5fcHNyX21iYV9zaG93LCAwLCAxLAogICAgICAgIlNob3cgTWVtb3J5 IEJhbmR3aWR0aCBBbGxvY2F0aW9uIGluZm9ybWF0aW9uIiwKZGlmZiAtLWdpdCBhL3Rvb2xzL3hs L3hsX3Bzci5jIGIvdG9vbHMveGwveGxfcHNyLmMKaW5kZXggZDdlZGFiMi4uZTZlNTQ1OCAxMDA2 NDQKLS0tIGEvdG9vbHMveGwveGxfcHNyLmMKKysrIGIvdG9vbHMveGwveGxfcHNyLmMKQEAgLTU0 OCw2ICs1NDgsNjEgQEAgaW50IG1haW5fcHNyX21iYV9zaG93KGludCBhcmdjLCBjaGFyICoqYXJn dikKICAgICByZXR1cm4gcHNyX3ZhbF9zaG93KGRvbWlkLCBMSUJYTF9QU1JfRkVBVF9UWVBFX01C QV9JTkZPLCAwKTsKIH0KIAoraW50IG1haW5fcHNyX21iYV9zZXQoaW50IGFyZ2MsIGNoYXIgKiph cmd2KQoreworICAgIHVpbnQzMl90IGRvbWlkOworICAgIGxpYnhsX3Bzcl9jYm1fdHlwZSB0eXBl OworICAgIHVpbnQ2NF90IHRocnRsOworICAgIGludCByZXQsIG9wdCA9IDA7CisgICAgbGlieGxf Yml0bWFwIHRhcmdldF9tYXA7CisgICAgY2hhciAqdmFsdWU7CisgICAgbGlieGxfc3RyaW5nX2xp c3Qgc29ja2V0X2xpc3Q7CisgICAgdW5zaWduZWQgbG9uZyBzdGFydCwgZW5kOworICAgIHVuc2ln bmVkIGludCBpLCBqLCBsZW47CisKKyAgICBzdGF0aWMgc3RydWN0IG9wdGlvbiBvcHRzW10gPSB7 CisgICAgICAgIHsic29ja2V0IiwgMSwgMCwgJ3MnfSwKKyAgICAgICAgQ09NTU9OX0xPTkdfT1BU UworICAgIH07CisKKyAgICBsaWJ4bF9zb2NrZXRfYml0bWFwX2FsbG9jKGN0eCwgJnRhcmdldF9t YXAsIDApOworICAgIGxpYnhsX2JpdG1hcF9zZXRfbm9uZSgmdGFyZ2V0X21hcCk7CisKKyAgICBT V0lUQ0hfRk9SRUFDSF9PUFQob3B0LCAiczoiLCBvcHRzLCAicHNyLW1iYS1zZXQiLCAwKSB7Cisg ICAgY2FzZSAncyc6CisgICAgICAgIHRyaW0oaXNzcGFjZSwgb3B0YXJnLCAmdmFsdWUpOworICAg ICAgICBzcGxpdF9zdHJpbmdfaW50b19zdHJpbmdfbGlzdCh2YWx1ZSwgIiwiLCAmc29ja2V0X2xp c3QpOworICAgICAgICBsZW4gPSBsaWJ4bF9zdHJpbmdfbGlzdF9sZW5ndGgoJnNvY2tldF9saXN0 KTsKKyAgICAgICAgZm9yIChpID0gMDsgaSA8IGxlbjsgaSsrKSB7CisgICAgICAgICAgIHBhcnNl X3JhbmdlKHNvY2tldF9saXN0W2ldLCAmc3RhcnQsICZlbmQpOworICAgICAgICAgICAgZm9yIChq ID0gc3RhcnQ7IGogPD0gZW5kOyBqKyspCisgICAgICAgICAgICAgICAgbGlieGxfYml0bWFwX3Nl dCgmdGFyZ2V0X21hcCwgaik7CisgICAgICAgIH0KKworICAgICAgICBsaWJ4bF9zdHJpbmdfbGlz dF9kaXNwb3NlKCZzb2NrZXRfbGlzdCk7CisgICAgICAgIGZyZWUodmFsdWUpOworICAgICAgICBi cmVhazsKKyAgICB9CisKKyAgICB0eXBlID0gTElCWExfUFNSX0NCTV9UWVBFX01CQV9USFJUTDsK KworICAgIGlmIChsaWJ4bF9iaXRtYXBfaXNfZW1wdHkoJnRhcmdldF9tYXApKQorICAgICAgICBs aWJ4bF9iaXRtYXBfc2V0X2FueSgmdGFyZ2V0X21hcCk7CisKKyAgICBpZiAoYXJnYyAhPSBvcHRp bmQgKyAyKSB7CisgICAgICAgIGhlbHAoInBzci1tYmEtc2V0Iik7CisgICAgICAgIHJldHVybiAy OworICAgIH0KKworICAgIGRvbWlkID0gZmluZF9kb21haW4oYXJndltvcHRpbmRdKTsKKyAgICB0 aHJ0bCA9IHN0cnRvbGwoYXJndltvcHRpbmQgKyAxXSwgTlVMTCAsIDApOworCisgICAgcmV0ID0g bGlieGxfcHNyX3NldF92YWwoY3R4LCBkb21pZCwgdHlwZSwgJnRhcmdldF9tYXAsIHRocnRsKTsK KworICAgIGxpYnhsX2JpdG1hcF9kaXNwb3NlKCZ0YXJnZXRfbWFwKTsKKyAgICByZXR1cm4gcmV0 OworfQorCiBzdGF0aWMgaW50IHBzcl9tYmFfaHdpbmZvKHZvaWQpCiB7CiAgICAgaW50IHJjOwot LSAKMS45LjEKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f XwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW4ub3JnCmh0dHBzOi8v bGlzdHMueGVuLm9yZy94ZW4tZGV2ZWwK