From mboxrd@z Thu Jan 1 00:00:00 1970 From: Haozhong Zhang Subject: [RFC XEN PATCH v3 29/39] tools: reserve guest memory for ACPI from device model Date: Mon, 11 Sep 2017 12:38:10 +0800 Message-ID: <20170911043820.14617-30-haozhong.zhang@intel.com> References: <20170911043820.14617-1-haozhong.zhang@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20170911043820.14617-1-haozhong.zhang@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.xen.org Cc: Haozhong Zhang , Wei Liu , Ian Jackson , Chao Peng , Dan Williams List-Id: xen-devel@lists.xenproject.org U29tZSB2aXJ0dWFsIGRldmljZXMgKGUuZy4gTlZESU1NKSByZXF1aXJlIGNvbXBsZXggQUNQSSB0 YWJsZXMgYW5kCmRlZmluaXRpb24gYmxvY2tzIChpbiBBTUwpLCB3aGljaCBhIGRldmljZSBtb2Rl bCAoZS5nLiBRRU1VKSBoYXMKYWxyZWFkeSBiZWVuIGFibGUgdG8gY29uc3RydWN0LiBJbnN0ZWFk IG9mIGludHJvZHVjaW5nIHRoZSByZWR1bmRhbnQKaW1wbGVtZW50YXRpb24gdG8gWGVuLCB3ZSB3 b3VsZCBsaWtlIHRvIHJldXNlIHRoZSBkZXZpY2UgbW9kZWwgdG8KY29uc3RydWN0IHRob3NlIEFD UEkgc3R1ZmZzLgoKVGhpcyBjb21taXQgYWxsb3dzIFhlbiB0byByZXNlcnZlIGFuIGFyZWEgaW4g dGhlIGd1ZXN0IG1lbW9yeSBmb3IgdGhlCmRldmljZSBtb2RlbCB0byBwYXNzIGl0cyBBQ1BJIHRh YmxlcyBhbmQgZGVmaW5pdGlvbiBibG9ja3MgdG8gZ3Vlc3QsCndoaWNoIHdpbGwgYmUgbG9hZGVk IGJ5IGh2bWxvYWRlci4gVGhlIGJhc2UgZ3Vlc3QgcGh5c2ljYWwgYWRkcmVzcyBhbmQKdGhlIHNp emUgb2YgdGhlIHJlc2VydmVkIGFyZWEgYXJlIHBhc3NlZCB0byB0aGUgZGV2aWNlIG1vZGVsIHZp YQpYZW5TdG9yZSBrZXlzIGh2bWxvYWRlci9kbS1hY3BpL3thZGRyZXNzLCBsZW5ndGh9LiBBbiB4 bCBjb25maWcKImRtX2FjcGlfcGFnZXMgPSBOIiBpcyBhZGRlZCB0byBzcGVjaWZ5IHRoZSBudW1i ZXIgb2YgcmVzZXJ2ZWQgZ3Vlc3QKbWVtb3J5IHBhZ2VzLgoKU2lnbmVkLW9mZi1ieTogSGFvemhv bmcgWmhhbmcgPGhhb3pob25nLnpoYW5nQGludGVsLmNvbT4KLS0tCkNjOiBJYW4gSmFja3NvbiA8 aWFuLmphY2tzb25AZXUuY2l0cml4LmNvbT4KQ2M6IFdlaSBMaXUgPHdlaS5saXUyQGNpdHJpeC5j b20+Ci0tLQogdG9vbHMvbGlieGMvaW5jbHVkZS94Y19kb20uaCAgICAgICAgICAgIHwgIDEgKwog dG9vbHMvbGlieGMveGNfZG9tX3g4Ni5jICAgICAgICAgICAgICAgIHwgMTMgKysrKysrKysrKysr KwogdG9vbHMvbGlieGwvbGlieGxfZG9tLmMgICAgICAgICAgICAgICAgIHwgMjUgKysrKysrKysr KysrKysrKysrKysrKysrKwogdG9vbHMvbGlieGwvbGlieGxfdHlwZXMuaWRsICAgICAgICAgICAg IHwgIDEgKwogdG9vbHMveGwveGxfcGFyc2UuYyAgICAgICAgICAgICAgICAgICAgIHwgMTcgKysr KysrKysrKysrKysrKy0KIHhlbi9pbmNsdWRlL3B1YmxpYy9odm0vaHZtX3hzX3N0cmluZ3MuaCB8 ICA4ICsrKysrKysrCiA2IGZpbGVzIGNoYW5nZWQsIDY0IGluc2VydGlvbnMoKyksIDEgZGVsZXRp b24oLSkKCmRpZmYgLS1naXQgYS90b29scy9saWJ4Yy9pbmNsdWRlL3hjX2RvbS5oIGIvdG9vbHMv bGlieGMvaW5jbHVkZS94Y19kb20uaAppbmRleCBjZTQ3MDU4YzQxLi43YzU0MTU3NmU3IDEwMDY0 NAotLS0gYS90b29scy9saWJ4Yy9pbmNsdWRlL3hjX2RvbS5oCisrKyBiL3Rvb2xzL2xpYnhjL2lu Y2x1ZGUveGNfZG9tLmgKQEAgLTkzLDYgKzkzLDcgQEAgc3RydWN0IHhjX2RvbV9pbWFnZSB7CiAg ICAgc3RydWN0IHhjX2RvbV9zZWcgcGd0YWJsZXNfc2VnOwogICAgIHN0cnVjdCB4Y19kb21fc2Vn IGRldmljZXRyZWVfc2VnOwogICAgIHN0cnVjdCB4Y19kb21fc2VnIHN0YXJ0X2luZm9fc2VnOyAv KiBIVk1saXRlIG9ubHkgKi8KKyAgICBzdHJ1Y3QgeGNfZG9tX3NlZyBkbV9hY3BpX3NlZzsgICAg LyogcmVzZXJ2ZWQgUEZOcyBmb3IgRE0gQUNQSSAqLwogICAgIHhlbl9wZm5fdCBzdGFydF9pbmZv X3BmbjsKICAgICB4ZW5fcGZuX3QgY29uc29sZV9wZm47CiAgICAgeGVuX3Bmbl90IHhlbnN0b3Jl X3BmbjsKZGlmZiAtLWdpdCBhL3Rvb2xzL2xpYnhjL3hjX2RvbV94ODYuYyBiL3Rvb2xzL2xpYnhj L3hjX2RvbV94ODYuYwppbmRleCBjYjY4ZWZjYmQzLi44NzU1MzUwMjk1IDEwMDY0NAotLS0gYS90 b29scy9saWJ4Yy94Y19kb21feDg2LmMKKysrIGIvdG9vbHMvbGlieGMveGNfZG9tX3g4Ni5jCkBA IC02NzQsNiArNjc0LDE5IEBAIHN0YXRpYyBpbnQgYWxsb2NfbWFnaWNfcGFnZXNfaHZtKHN0cnVj dCB4Y19kb21faW1hZ2UgKmRvbSkKICAgICAgICAgICAgICAgICAgICAgICAgICBpb3JlcV9zZXJ2 ZXJfcGZuKDApKTsKICAgICAgICAgeGNfaHZtX3BhcmFtX3NldCh4Y2gsIGRvbWlkLCBIVk1fUEFS QU1fTlJfSU9SRVFfU0VSVkVSX1BBR0VTLAogICAgICAgICAgICAgICAgICAgICAgICAgIE5SX0lP UkVRX1NFUlZFUl9QQUdFUyk7CisKKyAgICAgICAgaWYgKCBkb20tPmRtX2FjcGlfc2VnLnBhZ2Vz ICkKKyAgICAgICAgeworICAgICAgICAgICAgc2l6ZV90IGFjcGlfc2l6ZSA9IGRvbS0+ZG1fYWNw aV9zZWcucGFnZXMgKiBYQ19ET01fUEFHRV9TSVpFKGRvbSk7CisKKyAgICAgICAgICAgIHJjID0g eGNfZG9tX2FsbG9jX3NlZ21lbnQoZG9tLCAmZG9tLT5kbV9hY3BpX3NlZywgIkRNIEFDUEkiLAor ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwLCBhY3BpX3NpemUpOworICAg ICAgICAgICAgaWYgKCByYyAhPSAwICkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBE T01QUklOVEYoIlVuYWJsZSB0byByZXNlcnZlIG1lbW9yeSBmb3IgRE0gQUNQSSIpOworICAgICAg ICAgICAgICAgIGdvdG8gb3V0OworICAgICAgICAgICAgfQorICAgICAgICB9CiAgICAgfQogCiAg ICAgcmMgPSB4Y19kb21fYWxsb2Nfc2VnbWVudChkb20sICZkb20tPnN0YXJ0X2luZm9fc2VnLApk aWZmIC0tZ2l0IGEvdG9vbHMvbGlieGwvbGlieGxfZG9tLmMgYi90b29scy9saWJ4bC9saWJ4bF9k b20uYwppbmRleCBmNTRmZDQ5YTczLi5iYWQxNzE5ODkyIDEwMDY0NAotLS0gYS90b29scy9saWJ4 bC9saWJ4bF9kb20uYworKysgYi90b29scy9saWJ4bC9saWJ4bF9kb20uYwpAQCAtODk3LDYgKzg5 NywyOSBAQCBzdGF0aWMgaW50IGh2bV9idWlsZF9zZXRfeHNfdmFsdWVzKGxpYnhsX19nYyAqZ2Ms CiAgICAgICAgICAgICBnb3RvIGVycjsKICAgICB9CiAKKyAgICBpZiAoZG9tLT5kbV9hY3BpX3Nl Zy5wYWdlcykgeworICAgICAgICB1aW50NjRfdCBndWVzdF9hZGRyX291dCA9IGRvbS0+ZG1fYWNw aV9zZWcucGZuICogWENfRE9NX1BBR0VfU0laRShkb20pOworCisgICAgICAgIGlmIChndWVzdF9h ZGRyX291dCA+PSAweDEwMDAwMDAwMFVMTCkgeworICAgICAgICAgICAgTE9HKEVSUk9SLAorICAg ICAgICAgICAgICAgICJHdWVzdCBhZGRyZXNzIG9mIERNIEFDUEkgaXMgMHglIlBSSXg2NCIsIGJ1 dCBleHBlY3RlZCBiZWxvdyA0RyIsCisgICAgICAgICAgICAgICAgZ3Vlc3RfYWRkcl9vdXQpOwor ICAgICAgICAgICAgZ290byBlcnI7CisgICAgICAgIH0KKworICAgICAgICBwYXRoID0gR0NTUFJJ TlRGKCIvbG9jYWwvZG9tYWluLyVkLyJIVk1fWFNfRE1fQUNQSV9BRERSRVNTLCBkb21pZCk7Cisg ICAgICAgIHJldCA9IGxpYnhsX194c19wcmludGYoZ2MsIFhCVF9OVUxMLCBwYXRoLCAiMHglIlBS SXg2NCwgZ3Vlc3RfYWRkcl9vdXQpOworICAgICAgICBpZiAocmV0KQorICAgICAgICAgICAgZ290 byBlcnI7CisKKyAgICAgICAgcGF0aCA9IEdDU1BSSU5URigiL2xvY2FsL2RvbWFpbi8lZC8iSFZN X1hTX0RNX0FDUElfTEVOR1RILCBkb21pZCk7CisgICAgICAgIHJldCA9IGxpYnhsX194c19wcmlu dGYoZ2MsIFhCVF9OVUxMLCBwYXRoLCAiMHglIlBSSXg2NCwKKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAodWludDY0X3QpKGRvbS0+ZG1fYWNwaV9zZWcucGFnZXMgKgorICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWENfRE9NX1BBR0VfU0laRShkb20pKSk7 CisgICAgICAgIGlmIChyZXQpCisgICAgICAgICAgICBnb3RvIGVycjsKKyAgICB9CisKICAgICBy ZXR1cm4gMDsKIAogZXJyOgpAQCAtMTE4NCw2ICsxMjA3LDggQEAgaW50IGxpYnhsX19idWlsZF9o dm0obGlieGxfX2djICpnYywgdWludDMyX3QgZG9taWQsCiAgICAgICAgICAgICBkb20tPnZub2Rl X3RvX3Bub2RlW2ldID0gaW5mby0+dm51bWFfbm9kZXNbaV0ucG5vZGU7CiAgICAgfQogCisgICAg ZG9tLT5kbV9hY3BpX3NlZy5wYWdlcyA9IGluZm8tPnUuaHZtLmRtX2FjcGlfcGFnZXM7CisKICAg ICByYyA9IGxpYnhsX19idWlsZF9kb20oZ2MsIGRvbWlkLCBpbmZvLCBzdGF0ZSwgZG9tKTsKICAg ICBpZiAocmMgIT0gMCkKICAgICAgICAgZ290byBvdXQ7CmRpZmYgLS1naXQgYS90b29scy9saWJ4 bC9saWJ4bF90eXBlcy5pZGwgYi90b29scy9saWJ4bC9saWJ4bF90eXBlcy5pZGwKaW5kZXggMTcz ZDcwYWNlYy4uNGFjYzA0NTdmNCAxMDA2NDQKLS0tIGEvdG9vbHMvbGlieGwvbGlieGxfdHlwZXMu aWRsCisrKyBiL3Rvb2xzL2xpYnhsL2xpYnhsX3R5cGVzLmlkbApAQCAtNTY1LDYgKzU2NSw3IEBA IGxpYnhsX2RvbWFpbl9idWlsZF9pbmZvID0gU3RydWN0KCJkb21haW5fYnVpbGRfaW5mbyIsWwog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKCJyZG0iLCBsaWJ4bF9yZG1f cmVzZXJ2ZSksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoInJkbV9t ZW1fYm91bmRhcnlfbWVta2IiLCBNZW1LQiksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAoIm1jYV9jYXBzIiwgICAgICAgICB1aW50NjQpLAorICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgKCJkbV9hY3BpX3BhZ2VzIiwgICAgaW50ZWdlciksCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdKSksCiAgICAgICAgICAgICAg ICAgICgicHYiLCBTdHJ1Y3QoTm9uZSwgWygia2VybmVsIiwgc3RyaW5nKSwKICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgKCJzbGFja19tZW1rYiIsIE1lbUtCKSwKZGlmZiAt LWdpdCBhL3Rvb2xzL3hsL3hsX3BhcnNlLmMgYi90b29scy94bC94bF9wYXJzZS5jCmluZGV4IDAy ZGRkMmU5MGQuLmVkNTYyYTE5NTYgMTAwNjQ0Ci0tLSBhL3Rvb2xzL3hsL3hsX3BhcnNlLmMKKysr IGIvdG9vbHMveGwveGxfcGFyc2UuYwpAQCAtODEwLDcgKzgxMCw3IEBAIHZvaWQgcGFyc2VfY29u ZmlnX2RhdGEoY29uc3QgY2hhciAqY29uZmlnX3NvdXJjZSwKICAgICAgICAgICAgICAgICAgICAg ICAgbGlieGxfZG9tYWluX2NvbmZpZyAqZF9jb25maWcpCiB7CiAgICAgY29uc3QgY2hhciAqYnVm OwotICAgIGxvbmcgbCwgdmNwdXMgPSAwOworICAgIGxvbmcgbCwgdmNwdXMgPSAwLCBucl9kbV9h Y3BpX3BhZ2VzOwogICAgIFhMVV9Db25maWcgKmNvbmZpZzsKICAgICBYTFVfQ29uZmlnTGlzdCAq Y3B1cywgKnZiZHMsICpuaWNzLCAqcGNpcywgKmN2ZmJzLCAqY3B1aWRzLCAqdnRwbXMsCiAgICAg ICAgICAgICAgICAgICAgKnVzYmN0cmxzLCAqdXNiZGV2cywgKnA5ZGV2czsKQEAgLTE5MjksNiAr MTkyOSwyMSBAQCBza2lwX3VzYmRldjoKIAogI3VuZGVmIHBhcnNlX2V4dHJhX2FyZ3MKIAorICAg IGlmIChiX2luZm8tPnR5cGUgPT0gTElCWExfRE9NQUlOX1RZUEVfSFZNICYmCisgICAgICAgIGJf aW5mby0+ZGV2aWNlX21vZGVsX3ZlcnNpb24gIT0gTElCWExfREVWSUNFX01PREVMX1ZFUlNJT05f Tk9ORSkgeworICAgICAgICAvKiBwYXJzZSAnZG1fYWNwaV9wYWdlcycgKi8KKyAgICAgICAgZSA9 IHhsdV9jZmdfZ2V0X2xvbmcoY29uZmlnLCAiZG1fYWNwaV9wYWdlcyIsICZucl9kbV9hY3BpX3Bh Z2VzLCAwKTsKKyAgICAgICAgaWYgKGUgJiYgZSAhPSBFU1JDSCkgeworICAgICAgICAgICAgZnBy aW50ZihzdGRlcnIsICJFUlJPUjogdW5hYmxlIHRvIHBhcnNlIGRtX2FjcGlfcGFnZXMuXG4iKTsK KyAgICAgICAgICAgIGV4aXQoLUVSUk9SX0ZBSUwpOworICAgICAgICB9CisgICAgICAgIGlmICgh ZSAmJiBucl9kbV9hY3BpX3BhZ2VzIDw9IDApIHsKKyAgICAgICAgICAgIGZwcmludGYoc3RkZXJy LCAiRVJST1I6IHJlcXVpcmUgcG9zaXRpdmUgZG1fYWNwaV9wYWdlcy5cbiIpOworICAgICAgICAg ICAgZXhpdCgtRVJST1JfRkFJTCk7CisgICAgICAgIH0KKyAgICAgICAgYl9pbmZvLT51Lmh2bS5k bV9hY3BpX3BhZ2VzID0gbnJfZG1fYWNwaV9wYWdlczsKKyAgICB9CisKICAgICAvKiBJZiB3ZSd2 ZSBhbHJlYWR5IGdvdCB2ZmI9W10gZm9yIFBWIGd1ZXN0IHRoZW4gaWdub3JlIHRvcCBsZXZlbAog ICAgICAqIFZOQyBjb25maWcuICovCiAgICAgaWYgKGNfaW5mby0+dHlwZSA9PSBMSUJYTF9ET01B SU5fVFlQRV9QViAmJiAhZF9jb25maWctPm51bV92ZmJzKSB7CmRpZmYgLS1naXQgYS94ZW4vaW5j bHVkZS9wdWJsaWMvaHZtL2h2bV94c19zdHJpbmdzLmggYi94ZW4vaW5jbHVkZS9wdWJsaWMvaHZt L2h2bV94c19zdHJpbmdzLmgKaW5kZXggZmVhMWRkNDQwNy4uOWYwNGZmMmFkYyAxMDA2NDQKLS0t IGEveGVuL2luY2x1ZGUvcHVibGljL2h2bS9odm1feHNfc3RyaW5ncy5oCisrKyBiL3hlbi9pbmNs dWRlL3B1YmxpYy9odm0vaHZtX3hzX3N0cmluZ3MuaApAQCAtODAsNCArODAsMTIgQEAKICAqLwog I2RlZmluZSBIVk1fWFNfT0VNX1NUUklOR1MgICAgICAgICAgICAgImJpb3Mtc3RyaW5ncy9vZW0t JWQiCiAKKy8qIElmIGEgcmFuZ2Ugb2YgZ3Vlc3QgbWVtb3J5IGlzIHJlc2VydmVkIHRvIHBhc3Mg QUNQSSBmcm9tIHRoZSBkZXZpY2UKKyAqIG1vZGVsIChlLmcuIFFFTVUpLCB0aGUgc3RhcnQgYWRk cmVzcyBhbmQgdGhlIHNpemUgb2YgdGhlIHJlc2VydmVkCisgKiBndWVzdCBtZW1vcnkgYXJlIHNw ZWNpZmllZCBieSBmb2xsb3dpbmcgdHdvIHhlbnN0b3JlIHZhbHVlcy4KKyAqLworI2RlZmluZSBI Vk1fWFNfRE1fQUNQSV9ST09UICAgICAgICAgICAgImh2bWxvYWRlci9kbS1hY3BpIgorI2RlZmlu ZSBIVk1fWFNfRE1fQUNQSV9BRERSRVNTICAgICAgICAgSFZNX1hTX0RNX0FDUElfUk9PVCIvYWRk cmVzcyIKKyNkZWZpbmUgSFZNX1hTX0RNX0FDUElfTEVOR1RIICAgICAgICAgIEhWTV9YU19ETV9B Q1BJX1JPT1QiL2xlbmd0aCIKKwogI2VuZGlmIC8qIF9fWEVOX1BVQkxJQ19IVk1fSFZNX1hTX1NU UklOR1NfSF9fICovCi0tIAoyLjE0LjEKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fXwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54 ZW4ub3JnCmh0dHBzOi8vbGlzdHMueGVuLm9yZy94ZW4tZGV2ZWwK