From mboxrd@z Thu Jan 1 00:00:00 1970 From: Yi Sun Subject: [RFC v2 11/12] tools: implemet new set value interface suitable for all psr allocation features. Date: Thu, 20 Jul 2017 16:49:12 +0800 Message-ID: <1500540553-29199-12-git-send-email-yi.y.sun@linux.intel.com> References: <1500540553-29199-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 1dY7Na-0007ZP-Ph for xen-devel@lists.xenproject.org; Thu, 20 Jul 2017 09:04:19 +0000 In-Reply-To: <1500540553-29199-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 ICB8IDU1ICsrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0KIHRvb2xz L3hsL3hsLmggICAgICAgICAgICAgICAgIHwgIDEgKwogdG9vbHMveGwveGxfY21kdGFibGUuYyAg ICAgICAgfCAgNiArKysrKwogdG9vbHMveGwveGxfcHNyLmMgICAgICAgICAgICAgfCA1NSArKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCiA2IGZpbGVzIGNoYW5nZWQs IDk5IGluc2VydGlvbnMoKyksIDMzIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3Rvb2xzL2xp YnhjL2luY2x1ZGUveGVuY3RybC5oIGIvdG9vbHMvbGlieGMvaW5jbHVkZS94ZW5jdHJsLmgKaW5k ZXggZGVmMThmNS4uNDY4YjQ3YiAxMDA2NDQKLS0tIGEvdG9vbHMvbGlieGMvaW5jbHVkZS94ZW5j dHJsLmgKKysrIGIvdG9vbHMvbGlieGMvaW5jbHVkZS94ZW5jdHJsLmgKQEAgLTI1MDEsOSArMjUw MSw5IEBAIGludCB4Y19wc3JfY210X2dldF9kYXRhKHhjX2ludGVyZmFjZSAqeGNoLCB1aW50MzJf dCBybWlkLCB1aW50MzJfdCBjcHUsCiAgICAgICAgICAgICAgICAgICAgICAgICB1aW50NjRfdCAq dHNjKTsKIGludCB4Y19wc3JfY210X2VuYWJsZWQoeGNfaW50ZXJmYWNlICp4Y2gpOwogCi1pbnQg eGNfcHNyX2NhdF9zZXRfZG9tYWluX2RhdGEoeGNfaW50ZXJmYWNlICp4Y2gsIHVpbnQzMl90IGRv bWlkLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHhjX3Bzcl92YWxfdHlwZSB0eXBl LCB1aW50MzJfdCB0YXJnZXQsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDY0 X3QgZGF0YSk7CitpbnQgeGNfcHNyX3NldF9kb21haW5fZGF0YSh4Y19pbnRlcmZhY2UgKnhjaCwg dWludDMyX3QgZG9taWQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICB4Y19wc3JfdmFsX3R5 cGUgdHlwZSwgdWludDMyX3QgdGFyZ2V0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgdWlu dDY0X3QgZGF0YSk7CiBpbnQgeGNfcHNyX2dldF9kb21haW5fZGF0YSh4Y19pbnRlcmZhY2UgKnhj aCwgdWludDMyX3QgZG9taWQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB4Y19wc3JfdmFs X3R5cGUgdHlwZSwgdWludDMyX3QgdGFyZ2V0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAg dWludDY0X3QgKmRhdGEpOwpkaWZmIC0tZ2l0IGEvdG9vbHMvbGlieGMveGNfcHNyLmMgYi90b29s cy9saWJ4Yy94Y19wc3IuYwppbmRleCA4MzEzMzYwLi5lZDM5OGYzIDEwMDY0NAotLS0gYS90b29s cy9saWJ4Yy94Y19wc3IuYworKysgYi90b29scy9saWJ4Yy94Y19wc3IuYwpAQCAtMjQ4LDkgKzI0 OCw5IEBAIGludCB4Y19wc3JfY210X2VuYWJsZWQoeGNfaW50ZXJmYWNlICp4Y2gpCiAKICAgICBy ZXR1cm4gMDsKIH0KLWludCB4Y19wc3JfY2F0X3NldF9kb21haW5fZGF0YSh4Y19pbnRlcmZhY2Ug KnhjaCwgdWludDMyX3QgZG9taWQsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeGNf cHNyX3ZhbF90eXBlIHR5cGUsIHVpbnQzMl90IHRhcmdldCwKLSAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICB1aW50NjRfdCBkYXRhKQoraW50IHhjX3Bzcl9zZXRfZG9tYWluX2RhdGEoeGNf aW50ZXJmYWNlICp4Y2gsIHVpbnQzMl90IGRvbWlkLAorICAgICAgICAgICAgICAgICAgICAgICAg ICAgeGNfcHNyX3ZhbF90eXBlIHR5cGUsIHVpbnQzMl90IHRhcmdldCwKKyAgICAgICAgICAgICAg ICAgICAgICAgICAgIHVpbnQ2NF90IGRhdGEpCiB7CiAgICAgREVDTEFSRV9ET01DVEw7CiAgICAg dWludDMyX3QgY21kOwpAQCAtMjY5LDYgKzI2OSw5IEBAIGludCB4Y19wc3JfY2F0X3NldF9kb21h aW5fZGF0YSh4Y19pbnRlcmZhY2UgKnhjaCwgdWludDMyX3QgZG9taWQsCiAgICAgY2FzZSBYQ19Q U1JfQ0FUX0wyX0NCTToKICAgICAgICAgY21kID0gWEVOX0RPTUNUTF9QU1JfQ0FUX09QX1NFVF9M Ml9DQk07CiAgICAgICAgIGJyZWFrOworICAgIGNhc2UgWENfUFNSX01CQV9USFJUTDoKKyAgICAg ICAgY21kID0gWEVOX0RPTUNUTF9QU1JfTUJBX09QX1NFVF9USFJUTDsKKyAgICAgICAgYnJlYWs7 CiAgICAgZGVmYXVsdDoKICAgICAgICAgZXJybm8gPSBFSU5WQUw7CiAgICAgICAgIHJldHVybiAt MTsKZGlmZiAtLWdpdCBhL3Rvb2xzL2xpYnhsL2xpYnhsX3Bzci5jIGIvdG9vbHMvbGlieGwvbGli eGxfcHNyLmMKaW5kZXggNGIzYWZiNi4uYjQ3ZTViNyAxMDA2NDQKLS0tIGEvdG9vbHMvbGlieGwv bGlieGxfcHNyLmMKKysrIGIvdG9vbHMvbGlieGwvbGlieGxfcHNyLmMKQEAgLTMyOCwzMyArMzI4 LDggQEAgaW50IGxpYnhsX3Bzcl9jYXRfc2V0X2NibShsaWJ4bF9jdHggKmN0eCwgdWludDMyX3Qg ZG9taWQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpYnhsX3Bzcl9jYm1fdHlwZSB0eXBl LCBsaWJ4bF9iaXRtYXAgKnRhcmdldF9tYXAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgIHVp bnQ2NF90IGNibSkKIHsKLSAgICBHQ19JTklUKGN0eCk7Ci0gICAgaW50IHJjOwotICAgIGludCBz b2NrZXRpZCwgbnJfc29ja2V0czsKIAotICAgIHJjID0gbGlieGxfX2NvdW50X3BoeXNpY2FsX3Nv Y2tldHMoZ2MsICZucl9zb2NrZXRzKTsKLSAgICBpZiAocmMpIHsKLSAgICAgICAgTE9HRUQoRVJS T1IsIGRvbWlkLCAiZmFpbGVkIHRvIGdldCBzeXN0ZW0gc29ja2V0IGNvdW50Iik7Ci0gICAgICAg IGdvdG8gb3V0OwotICAgIH0KLQotICAgIGxpYnhsX2Zvcl9lYWNoX3NldF9iaXQoc29ja2V0aWQs ICp0YXJnZXRfbWFwKSB7Ci0gICAgICAgIHhjX3Bzcl92YWxfdHlwZSB4Y190eXBlOwotCi0gICAg ICAgIGlmIChzb2NrZXRpZCA+PSBucl9zb2NrZXRzKQotICAgICAgICAgICAgYnJlYWs7Ci0KLSAg ICAgICAgeGNfdHlwZSA9IGxpYnhsX19wc3JfY2JtX3R5cGVfdG9fbGlieGNfcHNyX3ZhbF90eXBl KHR5cGUpOwotICAgICAgICBpZiAoeGNfcHNyX2NhdF9zZXRfZG9tYWluX2RhdGEoY3R4LT54Y2gs IGRvbWlkLCB4Y190eXBlLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg c29ja2V0aWQsIGNibSkpIHsKLSAgICAgICAgICAgIGxpYnhsX19wc3JfYWxsb2NfbG9nX2Vycl9t c2coZ2MsIGVycm5vLCB0eXBlKTsKLSAgICAgICAgICAgIHJjID0gRVJST1JfRkFJTDsKLSAgICAg ICAgfQotICAgIH0KLQotb3V0OgotICAgIEdDX0ZSRUU7Ci0gICAgcmV0dXJuIHJjOworICAgIHJl dHVybiBsaWJ4bF9wc3Jfc2V0X3ZhbChjdHgsIGRvbWlkLCB0eXBlLCB0YXJnZXRfbWFwLCBjYm0p OwogfQogCiBpbnQgbGlieGxfcHNyX2NhdF9nZXRfY2JtKGxpYnhsX2N0eCAqY3R4LCB1aW50MzJf dCBkb21pZCwKQEAgLTQzNCw3ICs0MDksMzMgQEAgaW50IGxpYnhsX3Bzcl9zZXRfdmFsKGxpYnhs X2N0eCAqY3R4LCB1aW50MzJfdCBkb21pZCwKICAgICAgICAgICAgICAgICAgICAgICBsaWJ4bF9w c3JfY2JtX3R5cGUgdHlwZSwgbGlieGxfYml0bWFwICp0YXJnZXRfbWFwLAogICAgICAgICAgICAg ICAgICAgICAgIHVpbnQ2NF90IHZhbCkKIHsKLSAgICByZXR1cm4gRVhJVF9GQUlMVVJFOworICAg IEdDX0lOSVQoY3R4KTsKKyAgICBpbnQgcmM7CisgICAgaW50IHNvY2tldGlkLCBucl9zb2NrZXRz OworCisgICAgcmMgPSBsaWJ4bF9fY291bnRfcGh5c2ljYWxfc29ja2V0cyhnYywgJm5yX3NvY2tl dHMpOworICAgIGlmIChyYykgeworICAgICAgICBMT0dFRChFUlJPUiwgZG9taWQsICJmYWlsZWQg dG8gZ2V0IHN5c3RlbSBzb2NrZXQgY291bnQiKTsKKyAgICAgICAgZ290byBvdXQ7CisgICAgfQor CisgICAgbGlieGxfZm9yX2VhY2hfc2V0X2JpdChzb2NrZXRpZCwgKnRhcmdldF9tYXApIHsKKyAg ICAgICAgeGNfcHNyX3ZhbF90eXBlIHhjX3R5cGU7CisKKyAgICAgICAgaWYgKHNvY2tldGlkID49 IG5yX3NvY2tldHMpCisgICAgICAgICAgICBicmVhazsKKworICAgICAgICB4Y190eXBlID0gbGli eGxfX3Bzcl9jYm1fdHlwZV90b19saWJ4Y19wc3JfdmFsX3R5cGUodHlwZSk7CisgICAgICAgIGlm ICh4Y19wc3Jfc2V0X2RvbWFpbl9kYXRhKGN0eC0+eGNoLCBkb21pZCwgeGNfdHlwZSwKKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc29ja2V0aWQsIHZhbCkpIHsKKyAgICAgICAg ICAgIGxpYnhsX19wc3JfYWxsb2NfbG9nX2Vycl9tc2coZ2MsIGVycm5vLCB0eXBlKTsKKyAgICAg ICAgICAgIHJjID0gRVJST1JfRkFJTDsKKyAgICAgICAgfQorICAgIH0KKworb3V0OgorICAgIEdD X0ZSRUU7CisgICAgcmV0dXJuIHJjOwogfQogCiBpbnQgbGlieGxfcHNyX2dldF92YWwobGlieGxf Y3R4ICpjdHgsIHVpbnQzMl90IGRvbWlkLApkaWZmIC0tZ2l0IGEvdG9vbHMveGwveGwuaCBiL3Rv b2xzL3hsL3hsLmgKaW5kZXggYWQ4OWRmNC4uN2U0NjlkZSAxMDA2NDQKLS0tIGEvdG9vbHMveGwv eGwuaAorKysgYi90b29scy94bC94bC5oCkBAIC0yMDcsNiArMjA3LDcgQEAgaW50IG1haW5fcHNy X2NtdF9zaG93KGludCBhcmdjLCBjaGFyICoqYXJndik7CiBpbnQgbWFpbl9wc3JfY2F0X2NibV9z ZXQoaW50IGFyZ2MsIGNoYXIgKiphcmd2KTsKIGludCBtYWluX3Bzcl9jYXRfc2hvdyhpbnQgYXJn YywgY2hhciAqKmFyZ3YpOwogI2lmZGVmIExJQlhMX0hBVkVfUFNSX01CQQoraW50IG1haW5fcHNy X21iYV9zZXQoaW50IGFyZ2MsIGNoYXIgKiphcmd2KTsKIGludCBtYWluX3Bzcl9tYmFfc2hvdyhp bnQgYXJnYywgY2hhciAqKmFyZ3YpOwogI2VuZGlmCiAjZW5kaWYKZGlmZiAtLWdpdCBhL3Rvb2xz L3hsL3hsX2NtZHRhYmxlLmMgYi90b29scy94bC94bF9jbWR0YWJsZS5jCmluZGV4IDJkYzBjZDku Ljk1NGI1MmQgMTAwNjQ0Ci0tLSBhL3Rvb2xzL3hsL3hsX2NtZHRhYmxlLmMKKysrIGIvdG9vbHMv eGwveGxfY21kdGFibGUuYwpAQCAtNTY1LDYgKzU2NSwxMiBAQCBzdHJ1Y3QgY21kX3NwZWMgY21k X3RhYmxlW10gPSB7CiAgICAgICAiLWwgPGxldmVsPiAgICAgICAgU3BlY2lmeSB0aGUgY2FjaGUg bGV2ZWwgdG8gcHJvY2Vzcywgb3RoZXJ3aXNlIEwzIGNhY2hlIGlzIHByb2Nlc3NlZFxuIgogICAg IH0sCiAjaWZkZWYgTElCWExfSEFWRV9QU1JfTUJBCisgICAgeyAicHNyLW1iYS1zZXQiLAorICAg ICAgJm1haW5fcHNyX21iYV9zZXQsIDAsIDEsCisgICAgICAiU2V0IHRocm90dGxpbmcgdmFsdWUg KFRIUlRMKSBmb3IgYSBkb21haW4iLAorICAgICAgIltvcHRpb25zXSA8RG9tYWluPiA8VEhSVEw+ IiwKKyAgICAgICItcyA8c29ja2V0PiAgICAgICBTcGVjaWZ5IHRoZSBzb2NrZXQgdG8gcHJvY2Vz cywgb3RoZXJ3aXNlIGFsbCBzb2NrZXRzIGFyZSBwcm9jZXNzZWRcbiIKKyAgICB9LAogICAgIHsg InBzci1tYmEtc2hvdyIsCiAgICAgICAmbWFpbl9wc3JfbWJhX3Nob3csIDAsIDEsCiAgICAgICAi U2hvdyBNZW1vcnkgQmFuZHdpZHRoIEFsbG9jYXRpb24gaW5mb3JtYXRpb24iLApkaWZmIC0tZ2l0 IGEvdG9vbHMveGwveGxfcHNyLmMgYi90b29scy94bC94bF9wc3IuYwppbmRleCA0NmVmMTU5Li5l MzlhZTc1IDEwMDY0NAotLS0gYS90b29scy94bC94bF9wc3IuYworKysgYi90b29scy94bC94bF9w c3IuYwpAQCAtNTc5LDYgKzU3OSw2MSBAQCBpbnQgbWFpbl9wc3JfbWJhX3Nob3coaW50IGFyZ2Ms IGNoYXIgKiphcmd2KQogCiAgICAgcmV0dXJuIHBzcl92YWxfc2hvdyhkb21pZCwgTElCWExfUFNS X0ZFQVRfVFlQRV9NQkFfSU5GTywgMCk7CiB9CisKK2ludCBtYWluX3Bzcl9tYmFfc2V0KGludCBh cmdjLCBjaGFyICoqYXJndikKK3sKKyAgICB1aW50MzJfdCBkb21pZDsKKyAgICBsaWJ4bF9wc3Jf Y2JtX3R5cGUgdHlwZTsKKyAgICB1aW50NjRfdCB0aHJ0bDsKKyAgICBpbnQgcmV0LCBvcHQgPSAw OworICAgIGxpYnhsX2JpdG1hcCB0YXJnZXRfbWFwOworICAgIGNoYXIgKnZhbHVlOworICAgIGxp YnhsX3N0cmluZ19saXN0IHNvY2tldF9saXN0OworICAgIHVuc2lnbmVkIGxvbmcgc3RhcnQsIGVu ZDsKKyAgICB1bnNpZ25lZCBpbnQgaSwgaiwgbGVuOworCisgICAgc3RhdGljIHN0cnVjdCBvcHRp b24gb3B0c1tdID0geworICAgICAgICB7InNvY2tldCIsIDEsIDAsICdzJ30sCisgICAgICAgIENP TU1PTl9MT05HX09QVFMKKyAgICB9OworCisgICAgbGlieGxfc29ja2V0X2JpdG1hcF9hbGxvYyhj dHgsICZ0YXJnZXRfbWFwLCAwKTsKKyAgICBsaWJ4bF9iaXRtYXBfc2V0X25vbmUoJnRhcmdldF9t YXApOworCisgICAgU1dJVENIX0ZPUkVBQ0hfT1BUKG9wdCwgInM6Iiwgb3B0cywgInBzci1tYmEt c2V0IiwgMCkgeworICAgIGNhc2UgJ3MnOgorICAgICAgICB0cmltKGlzc3BhY2UsIG9wdGFyZywg JnZhbHVlKTsKKyAgICAgICAgc3BsaXRfc3RyaW5nX2ludG9fc3RyaW5nX2xpc3QodmFsdWUsICIs IiwgJnNvY2tldF9saXN0KTsKKyAgICAgICAgbGVuID0gbGlieGxfc3RyaW5nX2xpc3RfbGVuZ3Ro KCZzb2NrZXRfbGlzdCk7CisgICAgICAgIGZvciAoaSA9IDA7IGkgPCBsZW47IGkrKykgeworICAg ICAgICAgICBwYXJzZV9yYW5nZShzb2NrZXRfbGlzdFtpXSwgJnN0YXJ0LCAmZW5kKTsKKyAgICAg ICAgICAgIGZvciAoaiA9IHN0YXJ0OyBqIDw9IGVuZDsgaisrKQorICAgICAgICAgICAgICAgIGxp YnhsX2JpdG1hcF9zZXQoJnRhcmdldF9tYXAsIGopOworICAgICAgICB9CisKKyAgICAgICAgbGli eGxfc3RyaW5nX2xpc3RfZGlzcG9zZSgmc29ja2V0X2xpc3QpOworICAgICAgICBmcmVlKHZhbHVl KTsKKyAgICAgICAgYnJlYWs7CisgICAgfQorCisgICAgdHlwZSA9IExJQlhMX1BTUl9DQk1fVFlQ RV9NQkFfVEhSVEw7CisKKyAgICBpZiAobGlieGxfYml0bWFwX2lzX2VtcHR5KCZ0YXJnZXRfbWFw KSkKKyAgICAgICAgbGlieGxfYml0bWFwX3NldF9hbnkoJnRhcmdldF9tYXApOworCisgICAgaWYg KGFyZ2MgIT0gb3B0aW5kICsgMikgeworICAgICAgICBoZWxwKCJwc3ItbWJhLXNldCIpOworICAg ICAgICByZXR1cm4gMjsKKyAgICB9CisKKyAgICBkb21pZCA9IGZpbmRfZG9tYWluKGFyZ3Zbb3B0 aW5kXSk7CisgICAgdGhydGwgPSBzdHJ0b2xsKGFyZ3Zbb3B0aW5kICsgMV0sIE5VTEwgLCAwKTsK KworICAgIHJldCA9IGxpYnhsX3Bzcl9zZXRfdmFsKGN0eCwgZG9taWQsIHR5cGUsICZ0YXJnZXRf bWFwLCB0aHJ0bCk7CisKKyAgICBsaWJ4bF9iaXRtYXBfZGlzcG9zZSgmdGFyZ2V0X21hcCk7Cisg ICAgcmV0dXJuIHJldDsKK30KICNlbmRpZgogCiBpbnQgbWFpbl9wc3JfY2F0X2NibV9zZXQoaW50 IGFyZ2MsIGNoYXIgKiphcmd2KQotLSAKMS45LjEKCgpfX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fXwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBs aXN0cy54ZW4ub3JnCmh0dHBzOi8vbGlzdHMueGVuLm9yZy94ZW4tZGV2ZWwK