From mboxrd@z Thu Jan 1 00:00:00 1970 From: Yi Sun Subject: [RFC 14/16] tools: implemet get value flow for MBA. Date: Tue, 10 Jan 2017 15:42:33 +0800 Message-ID: <1484034155-4521-15-git-send-email-yi.y.sun@linux.intel.com> References: <1484034155-4521-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.bemta3.messagelabs.com ([195.245.230.39]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cQr63-0004CO-7t for xen-devel@lists.xenproject.org; Tue, 10 Jan 2017 07:43:55 +0000 In-Reply-To: <1484034155-4521-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: wei.liu2@citrix.com, he.chen@linux.intel.com, andrew.cooper3@citrix.com, ian.jackson@eu.citrix.com, Yi Sun , jbeulich@suse.com, chao.p.peng@linux.intel.com List-Id: xen-devel@lists.xenproject.org VGhpcyBwYXRjaCBpbXBsZW1lbnRzIGdldCB2YWx1ZSBmbG93IGluIHRvb2xzIGZvciBNQkEuCgpT aWduZWQtb2ZmLWJ5OiBZaSBTdW4gPHlpLnkuc3VuQGxpbnV4LmludGVsLmNvbT4KLS0tCiB0b29s cy9saWJ4Yy9pbmNsdWRlL3hlbmN0cmwuaCB8ICAgMSArCiB0b29scy9saWJ4Yy94Y19wc3IuYyAg ICAgICAgICB8ICAgMyArKwogdG9vbHMvbGlieGwvbGlieGwuaCAgICAgICAgICAgfCAgIDMgKysK IHRvb2xzL2xpYnhsL2xpYnhsX3Bzci5jICAgICAgIHwgIDIxICsrKysrKysrKwogdG9vbHMvbGli eGwvbGlieGxfdHlwZXMuaWRsICAgfCAgIDEgKwogdG9vbHMvbGlieGwveGwuaCAgICAgICAgICAg ICAgfCAgIDMgKysKIHRvb2xzL2xpYnhsL3hsX2NtZGltcGwuYyAgICAgIHwgMTAxICsrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwogdG9vbHMvbGlieGwveGxfY21kdGFi bGUuYyAgICAgfCAgIDggKysrKwogOCBmaWxlcyBjaGFuZ2VkLCAxNDEgaW5zZXJ0aW9ucygrKQoK ZGlmZiAtLWdpdCBhL3Rvb2xzL2xpYnhjL2luY2x1ZGUveGVuY3RybC5oIGIvdG9vbHMvbGlieGMv aW5jbHVkZS94ZW5jdHJsLmgKaW5kZXggZmZkMGY2My4uMjkxOTFkNSAxMDA2NDQKLS0tIGEvdG9v bHMvbGlieGMvaW5jbHVkZS94ZW5jdHJsLmgKKysrIGIvdG9vbHMvbGlieGMvaW5jbHVkZS94ZW5j dHJsLmgKQEAgLTI2MDMsNiArMjYwMyw3IEBAIGVudW0geGNfcHNyX3ZhbF90eXBlIHsKICAgICBY Q19QU1JfQ0FUX0wzX0NCTV9DT0RFID0gMiwKICAgICBYQ19QU1JfQ0FUX0wzX0NCTV9EQVRBID0g MywKICAgICBYQ19QU1JfQ0FUX0wyX0NCTSAgICAgID0gNCwKKyAgICBYQ19QU1JfTUJBX1RIUlRM ICAgICAgID0gNSwKIH07CiB0eXBlZGVmIGVudW0geGNfcHNyX3ZhbF90eXBlIHhjX3Bzcl92YWxf dHlwZTsKIApkaWZmIC0tZ2l0IGEvdG9vbHMvbGlieGMveGNfcHNyLmMgYi90b29scy9saWJ4Yy94 Y19wc3IuYwppbmRleCAzODFlZjAxLi45MzQ4NTc4IDEwMDY0NAotLS0gYS90b29scy9saWJ4Yy94 Y19wc3IuYworKysgYi90b29scy9saWJ4Yy94Y19wc3IuYwpAQCAtMzA1LDYgKzMwNSw5IEBAIGlu dCB4Y19wc3JfZ2V0X2RvbWFpbl9kYXRhKHhjX2ludGVyZmFjZSAqeGNoLCB1aW50MzJfdCBkb21p ZCwKICAgICBjYXNlIFhDX1BTUl9DQVRfTDJfQ0JNOgogICAgICAgICBjbWQgPSBYRU5fRE9NQ1RM X1BTUl9DQVRfT1BfR0VUX0wyX0NCTTsKICAgICAgICAgYnJlYWs7CisgICAgY2FzZSBYQ19QU1Jf TUJBX1RIUlRMOgorICAgICAgICBjbWQgPSBYRU5fRE9NQ1RMX1BTUl9NQkFfT1BfR0VUX1RIUlRM OworICAgICAgICBicmVhazsKICAgICBkZWZhdWx0OgogICAgICAgICBlcnJubyA9IEVJTlZBTDsK ICAgICAgICAgcmV0dXJuIC0xOwpkaWZmIC0tZ2l0IGEvdG9vbHMvbGlieGwvbGlieGwuaCBiL3Rv b2xzL2xpYnhsL2xpYnhsLmgKaW5kZXggNzU3NWNjZC4uNGM0MmMwMCAxMDA2NDQKLS0tIGEvdG9v bHMvbGlieGwvbGlieGwuaAorKysgYi90b29scy9saWJ4bC9saWJ4bC5oCkBAIC0yMTc1LDYgKzIx NzUsOSBAQCBpbnQgbGlieGxfcHNyX2NhdF9zZXRfY2JtKGxpYnhsX2N0eCAqY3R4LCB1aW50MzJf dCBkb21pZCwKIGludCBsaWJ4bF9wc3JfY2F0X2dldF9jYm0obGlieGxfY3R4ICpjdHgsIHVpbnQz Ml90IGRvbWlkLAogICAgICAgICAgICAgICAgICAgICAgICAgICBsaWJ4bF9wc3JfY2JtX3R5cGUg dHlwZSwgdWludDMyX3QgdGFyZ2V0LAogICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50NjRf dCAqY2JtX3IpOworaW50IGxpYnhsX3Bzcl9nZXRfdmFsKGxpYnhsX2N0eCAqY3R4LCB1aW50MzJf dCBkb21pZCwKKyAgICAgICAgICAgICAgICAgICAgICBsaWJ4bF9wc3JfY2JtX3R5cGUgdHlwZSwg dWludDMyX3QgdGFyZ2V0LAorICAgICAgICAgICAgICAgICAgICAgIHVpbnQ2NF90ICp2YWwpOwog CiAvKgogICogT24gc3VjY2VzcywgdGhlIGZ1bmN0aW9uIHJldHVybnMgYW4gYXJyYXkgb2YgZWxl bWVudHMgaW4gJ2luZm8nLApkaWZmIC0tZ2l0IGEvdG9vbHMvbGlieGwvbGlieGxfcHNyLmMgYi90 b29scy9saWJ4bC9saWJ4bF9wc3IuYwppbmRleCAxM2Q0NGI2Li5mYWMyNjE3IDEwMDY0NAotLS0g YS90b29scy9saWJ4bC9saWJ4bF9wc3IuYworKysgYi90b29scy9saWJ4bC9saWJ4bF9wc3IuYwpA QCAtODgsNiArODgsOSBAQCBzdGF0aWMgdm9pZCBsaWJ4bF9fcHNyX2FsbG9jX2xvZ19lcnJfbXNn KGxpYnhsX19nYyAqZ2MsCiAgICAgY2FzZSBMSUJYTF9QU1JfQ0JNX1RZUEVfTDJfQ0JNOgogICAg ICAgICBmZWF0ID0gIkwyIENBVCI7CiAgICAgICAgIGJyZWFrOworICAgIGNhc2UgTElCWExfUFNS X0NCTV9UWVBFX01CQV9USFJUTDoKKyAgICAgICAgZmVhdCA9ICJNQkEiOworICAgICAgICBicmVh azsKICAgICBkZWZhdWx0OgogICAgICAgICBMT0dFKEVSUk9SLCAiSW5wdXQgdHlwZSAlZCBpcyB3 cm9uZyFcbiIsIHR5cGUpOwogICAgICAgICBsaWJ4bF9fcHNyX2xvZ19lcnJfbXNnKGdjLCBlcnIp OwpAQCAtNDA1LDYgKzQwOCwyNCBAQCBpbnQgbGlieGxfcHNyX2NhdF9nZXRfY2JtKGxpYnhsX2N0 eCAqY3R4LCB1aW50MzJfdCBkb21pZCwKICAgICByZXR1cm4gcmM7CiB9CiAKK2ludCBsaWJ4bF9w c3JfZ2V0X3ZhbChsaWJ4bF9jdHggKmN0eCwgdWludDMyX3QgZG9taWQsCisgICAgICAgICAgICAg ICAgICAgICAgbGlieGxfcHNyX2NibV90eXBlIHR5cGUsIHVpbnQzMl90IHRhcmdldCwKKyAgICAg ICAgICAgICAgICAgICAgICB1aW50NjRfdCAqdmFsKQoreworICAgIEdDX0lOSVQoY3R4KTsKKyAg ICBpbnQgcmMgPSAwOworICAgIHhjX3Bzcl92YWxfdHlwZSB4Y190eXBlID0gbGlieGxfX3Bzcl9j Ym1fdHlwZV90b19saWJ4Y19wc3JfdmFsX3R5cGUodHlwZSk7CisKKyAgICBpZiAoeGNfcHNyX2dl dF9kb21haW5fZGF0YShjdHgtPnhjaCwgZG9taWQsIHhjX3R5cGUsCisgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgdGFyZ2V0LCB2YWwpKSB7CisgICAgICAgIGxpYnhsX19wc3JfYWxsb2Nf bG9nX2Vycl9tc2coZ2MsIHR5cGUsIGVycm5vKTsKKyAgICAgICAgcmMgPSBFUlJPUl9GQUlMOwor ICAgIH0KKworICAgIEdDX0ZSRUU7CisgICAgcmV0dXJuIHJjOworfQorCiBzdGF0aWMgaW5saW5l IHhjX3Bzcl9mZWF0X3R5cGUgbGlieGxfX3Bzcl9mZWF0X3R5cGVfdG9fbGlieGNfcHNyX2ZlYXRf dHlwZSgKICAgICBsaWJ4bF9wc3JfZmVhdF90eXBlIHR5cGUsIGludCBsdmwpCiB7CmRpZmYgLS1n aXQgYS90b29scy9saWJ4bC9saWJ4bF90eXBlcy5pZGwgYi90b29scy9saWJ4bC9saWJ4bF90eXBl cy5pZGwKaW5kZXggYmQ4ZDJiOC4uNTc5Nzk0YSAxMDA2NDQKLS0tIGEvdG9vbHMvbGlieGwvbGli eGxfdHlwZXMuaWRsCisrKyBiL3Rvb2xzL2xpYnhsL2xpYnhsX3R5cGVzLmlkbApAQCAtOTAwLDYg KzkwMCw3IEBAIGxpYnhsX3Bzcl9jYm1fdHlwZSA9IEVudW1lcmF0aW9uKCJwc3JfY2JtX3R5cGUi LCBbCiAgICAgKDIsICJMM19DQk1fQ09ERSIpLAogICAgICgzLCAiTDNfQ0JNX0RBVEEiKSwKICAg ICAoNCwgIkwyX0NCTSIpLAorICAgICg1LCAiTUJBX1RIUlRMIiksCiAgICAgXSkKIAogbGlieGxf cHNyX2NhdF9pbmZvID0gU3RydWN0KCJwc3JfY2F0X2luZm8iLCBbCmRpZmYgLS1naXQgYS90b29s cy9saWJ4bC94bC5oIGIvdG9vbHMvbGlieGwveGwuaAppbmRleCAwYThjODEzLi4yZDBlNjc2IDEw MDY0NAotLS0gYS90b29scy9saWJ4bC94bC5oCisrKyBiL3Rvb2xzL2xpYnhsL3hsLmgKQEAgLTEz Myw2ICsxMzMsOSBAQCBpbnQgbWFpbl9wc3JfY210X3Nob3coaW50IGFyZ2MsIGNoYXIgKiphcmd2 KTsKIGludCBtYWluX3Bzcl9jYXRfY2JtX3NldChpbnQgYXJnYywgY2hhciAqKmFyZ3YpOwogaW50 IG1haW5fcHNyX2NhdF9zaG93KGludCBhcmdjLCBjaGFyICoqYXJndik7CiAjZW5kaWYKKyNpZmRl ZiBMSUJYTF9IQVZFX1BTUl9NQkEKK2ludCBtYWluX3Bzcl9tYmFfc2hvdyhpbnQgYXJnYywgY2hh ciAqKmFyZ3YpOworI2VuZGlmCiBpbnQgbWFpbl9xZW11X21vbml0b3JfY29tbWFuZChpbnQgYXJn YywgY2hhciAqKmFyZ3YpOwogCiB2b2lkIGhlbHAoY29uc3QgY2hhciAqY29tbWFuZCk7CmRpZmYg LS1naXQgYS90b29scy9saWJ4bC94bF9jbWRpbXBsLmMgYi90b29scy9saWJ4bC94bF9jbWRpbXBs LmMKaW5kZXggMjFlZjJjZi4uMjI2MzYzNSAxMDA2NDQKLS0tIGEvdG9vbHMvbGlieGwveGxfY21k aW1wbC5jCisrKyBiL3Rvb2xzL2xpYnhsL3hsX2NtZGltcGwuYwpAQCAtOTU1MSw2ICs5NTUxLDEw NyBAQCBzdGF0aWMgaW50IHBzcl9tYmFfaHdpbmZvKHZvaWQpCiAgICAgbGlieGxfcHNyX2h3X2lu Zm9fbGlzdF9mcmVlKGluZm8sIG5yKTsKICAgICByZXR1cm4gcmM7CiB9CisKK3N0YXRpYyB2b2lk IHBzcl9tYmFfcHJpbnRfb25lX2RvbWFpbl90aHJ0bF90eXBlKHVpbnQzMl90IGRvbWlkLAorICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3Qgc29j a2V0aWQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBs aWJ4bF9wc3JfY2JtX3R5cGUgdHlwZSkKK3sKKyAgICB1aW50NjRfdCB0aHJ0bDsKKworICAgIGlm ICghbGlieGxfcHNyX2dldF92YWwoY3R4LCBkb21pZCwgdHlwZSwgc29ja2V0aWQsICZ0aHJ0bCkp CisgICAgICAgIHByaW50ZigiJSMxNiJQUkl4NjQsIHRocnRsKTsKKyAgICBlbHNlCisgICAgICAg IHByaW50ZigiJTE2cyIsICJlcnJvciIpOworfQorCitzdGF0aWMgdm9pZCBwc3JfbWJhX3ByaW50 X29uZV9kb21haW5fdGhydGwodWludDMyX3QgZG9taWQsIHVpbnQzMl90IHNvY2tldGlkKQorewor ICAgIGNoYXIgKmRvbWFpbl9uYW1lOworCisgICAgZG9tYWluX25hbWUgPSBsaWJ4bF9kb21pZF90 b19uYW1lKGN0eCwgZG9taWQpOworICAgIHByaW50ZigiJTVkJTI1cyIsIGRvbWlkLCBkb21haW5f bmFtZSk7CisgICAgZnJlZShkb21haW5fbmFtZSk7CisKKyAgICBwc3JfbWJhX3ByaW50X29uZV9k b21haW5fdGhydGxfdHlwZShkb21pZCwgc29ja2V0aWQsCisgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgTElCWExfUFNSX0NCTV9UWVBFX01CQV9USFJUTCk7CisgICAgcHJp bnRmKCJcbiIpOworfQorCitzdGF0aWMgaW50IHBzcl9tYmFfcHJpbnRfZG9tYWluX3RocnRsKHVp bnQzMl90IGRvbWlkLCB1aW50MzJfdCBzb2NrZXRpZCkKK3sKKyAgICBpbnQgaSwgbnJfZG9tYWlu czsKKyAgICBsaWJ4bF9kb21pbmZvICpsaXN0OworCisgICAgaWYgKGRvbWlkICE9IElOVkFMSURf RE9NSUQpIHsKKyAgICAgICAgcHNyX21iYV9wcmludF9vbmVfZG9tYWluX3RocnRsKGRvbWlkLCBz b2NrZXRpZCk7CisgICAgICAgIHJldHVybiAwOworICAgIH0KKworICAgIGlmICghKGxpc3QgPSBs aWJ4bF9saXN0X2RvbWFpbihjdHgsICZucl9kb21haW5zKSkpIHsKKyAgICAgICAgZnByaW50Zihz dGRlcnIsICJGYWlsZWQgdG8gZ2V0IGRvbWFpbiBsaXN0IGZvciB0aHJ0bCBkaXNwbGF5XG4iKTsK KyAgICAgICAgcmV0dXJuIC0xOworICAgIH0KKworICAgIGZvciAoaSA9IDA7IGkgPCBucl9kb21h aW5zOyBpKyspCisgICAgICAgIHBzcl9tYmFfcHJpbnRfb25lX2RvbWFpbl90aHJ0bChsaXN0W2ld LmRvbWlkLCBzb2NrZXRpZCk7CisgICAgbGlieGxfZG9taW5mb19saXN0X2ZyZWUobGlzdCwgbnJf ZG9tYWlucyk7CisKKyAgICByZXR1cm4gMDsKK30KKworc3RhdGljIGludCBwc3JfbWJhX3ByaW50 X3NvY2tldCh1aW50MzJfdCBkb21pZCwgbGlieGxfcHNyX2h3X2luZm8gKmluZm8pCit7CisgICAg cHJpbnRmKCIlLTE2czogJXVcbiIsICJTb2NrZXQgSUQiLCBpbmZvLT5pZCk7CisgICAgcHJpbnRm KCIlLTE2czogJXVcbiIsICJEZWZhdWx0IFRIUlRMIiwgMCk7CisgICAgcHJpbnRmKCIlNXMlMjVz JTE2c1xuIiwgIklEIiwgIk5BTUUiLCAiVEhSVEwiKTsKKworICAgIHJldHVybiBwc3JfbWJhX3By aW50X2RvbWFpbl90aHJ0bChkb21pZCwgaW5mby0+aWQpOworfQorCitzdGF0aWMgaW50IHBzcl9t YmFfc2hvdyh1aW50MzJfdCBkb21pZCkKK3sKKyAgICBpbnQgaSwgbnI7CisgICAgaW50IHJjOwor ICAgIGxpYnhsX3Bzcl9od19pbmZvICppbmZvOworCisgICAgcmMgPSBsaWJ4bF9wc3JfZ2V0X2h3 X2luZm8oY3R4LCAmaW5mbywgJm5yLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIExJ QlhMX1BTUl9GRUFUX1RZUEVfTUJBX0lORk8sIDApOworICAgIGlmIChyYykgeworICAgICAgICBm cHJpbnRmKHN0ZGVyciwgIkZhaWxlZCB0byBnZXQgbWJhIGluZm9cbiIpOworICAgICAgICByZXR1 cm4gcmM7CisgICAgfQorCisgICAgZm9yIChpID0gMDsgaSA8IG5yOyBpKyspIHsKKyAgICAgICAg cmMgPSBwc3JfbWJhX3ByaW50X3NvY2tldChkb21pZCwgaW5mbyArIGkpOworICAgICAgICBpZiAo cmMpCisgICAgICAgICAgICBnb3RvIG91dDsKKyAgICB9CisKK291dDoKKyAgICBsaWJ4bF9wc3Jf aHdfaW5mb19saXN0X2ZyZWUoaW5mbywgbnIpOworICAgIHJldHVybiByYzsKK30KKworaW50IG1h aW5fcHNyX21iYV9zaG93KGludCBhcmdjLCBjaGFyICoqYXJndikKK3sKKyAgICBpbnQgb3B0Owor ICAgIHVpbnQzMl90IGRvbWlkOworCisgICAgU1dJVENIX0ZPUkVBQ0hfT1BUKG9wdCwgIiIsIE5V TEwsICJwc3ItbWJhLXNob3ciLCAwKSB7CisgICAgICAgIC8qIE5vIG9wdGlvbnMgKi8KKyAgICB9 CisKKyAgICBpZiAob3B0aW5kID49IGFyZ2MpCisgICAgICAgIGRvbWlkID0gSU5WQUxJRF9ET01J RDsKKyAgICBlbHNlIGlmIChvcHRpbmQgPT0gYXJnYyAtIDEpCisgICAgICAgIGRvbWlkID0gZmlu ZF9kb21haW4oYXJndltvcHRpbmRdKTsKKyAgICBlbHNlIHsKKyAgICAgICAgaGVscCgicHNyLW1i YS1zaG93Iik7CisgICAgICAgIHJldHVybiAyOworICAgIH0KKworICAgIHJldHVybiBwc3JfbWJh X3Nob3coZG9taWQpOworfQogI2VuZGlmCiAKIGludCBtYWluX3Bzcl9jYXRfY2JtX3NldChpbnQg YXJnYywgY2hhciAqKmFyZ3YpCmRpZmYgLS1naXQgYS90b29scy9saWJ4bC94bF9jbWR0YWJsZS5j IGIvdG9vbHMvbGlieGwveGxfY21kdGFibGUuYwppbmRleCA5ZTFlZTZmLi5iN2ZjMjc2IDEwMDY0 NAotLS0gYS90b29scy9saWJ4bC94bF9jbWR0YWJsZS5jCisrKyBiL3Rvb2xzL2xpYnhsL3hsX2Nt ZHRhYmxlLmMKQEAgLTU2NSw2ICs1NjUsMTQgQEAgc3RydWN0IGNtZF9zcGVjIGNtZF90YWJsZVtd ID0gewogICAgIH0sCiAKICNlbmRpZgorI2lmZGVmIExJQlhMX0hBVkVfUFNSX01CQQorICAgIHsg InBzci1tYmEtc2hvdyIsCisgICAgICAmbWFpbl9wc3JfbWJhX3Nob3csIDAsIDEsCisgICAgICAi U2hvdyBNZW1vcnkgQmFuZHdpZHRoIEFsbG9jYXRpb24gaW5mb3JtYXRpb24iLAorICAgICAgIjxE b21haW4+IiwKKyAgICB9LAorCisjZW5kaWYKICAgICB7ICJ1c2JjdHJsLWF0dGFjaCIsCiAgICAg ICAmbWFpbl91c2JjdHJsX2F0dGFjaCwgMCwgMSwKICAgICAgICJDcmVhdGUgYSB2aXJ0dWFsIFVT QiBjb250cm9sbGVyIGZvciBhIGRvbWFpbiIsCi0tIAoxLjkuMQoKCl9fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fClhlbi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVu LWRldmVsQGxpc3RzLnhlbi5vcmcKaHR0cHM6Ly9saXN0cy54ZW4ub3JnL3hlbi1kZXZlbAo=