From mboxrd@z Thu Jan 1 00:00:00 1970 From: Boris Ostrovsky Subject: [PATCH v4 16/21] libxc/libxl: Allow multiple ACPI modules Date: Mon, 19 Sep 2016 20:19:34 -0400 Message-ID: <1474330779-10645-17-git-send-email-boris.ostrovsky@oracle.com> References: <1474330779-10645-1-git-send-email-boris.ostrovsky@oracle.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1474330779-10645-1-git-send-email-boris.ostrovsky@oracle.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: wei.liu2@citrix.com, andrew.cooper3@citrix.com, ian.jackson@eu.citrix.com, julien.grall@arm.com, jbeulich@suse.com, zhaoshenglong@huawei.com, Boris Ostrovsky , roger.pau@citrix.com List-Id: xen-devel@lists.xenproject.org UHJvdmlkZSBhYmlsaXR5IHRvIGxvYWQgbXVsdGlwbGUgQUNQSSBtb2R1bGVzLiBUaGllIGZlYXR1 cmUgaXMgbmVlZGVkCmJ5IFBWSHYyIGd1ZXN0cyBhbmQgd2lsbCBiZSB1c2VkIGluIHN1YnNlcXVl bnQgcGF0Y2hlcy4KCldlIGFzc3VtZSB0aGF0IFBWSHYyIGd1ZXN0cyBkbyBub3QgbG9hZCB0aGVp ciBBQ1BJIG1vZHVsZXMgc3BlY2lmaWVkCmluIHRoZSBjb25maWd1cmF0aW9uIGZpbGUuIFdlIGNh biBleHRlbmQgc3VwcG9ydCBmb3IgdGhhdCBpbiB0aGUgZnV0dXJlCmlmIGRlc2lyZWQuCgpTaWdu ZWQtb2ZmLWJ5OiBCb3JpcyBPc3Ryb3Zza3kgPGJvcmlzLm9zdHJvdnNreUBvcmFjbGUuY29tPgpB Y2tlZC1ieTogV2VpIExpdSA8d2VpLmxpdTJAY2l0cml4LmNvbT4KLS0tCiB0b29scy9saWJ4Yy9p bmNsdWRlL3hjX2RvbS5oICAgfCAgNSArKystLQogdG9vbHMvbGlieGMveGNfZG9tX2h2bWxvYWRl ci5jIHwgIDMgKystCiB0b29scy9saWJ4bC9saWJ4bF9kb20uYyAgICAgICAgfCAyNiArKysrKysr KysrKysrKysrKystLS0tLS0tLQogMyBmaWxlcyBjaGFuZ2VkLCAyMyBpbnNlcnRpb25zKCspLCAx MSBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS90b29scy9saWJ4Yy9pbmNsdWRlL3hjX2RvbS5o IGIvdG9vbHMvbGlieGMvaW5jbHVkZS94Y19kb20uaAppbmRleCBkZTdkY2E5Li42MDhjYmMyIDEw MDY0NAotLS0gYS90b29scy9saWJ4Yy9pbmNsdWRlL3hjX2RvbS5oCisrKyBiL3Rvb2xzL2xpYnhj L2luY2x1ZGUveGNfZG9tLmgKQEAgLTIxMiw4ICsyMTIsOSBAQCBzdHJ1Y3QgeGNfZG9tX2ltYWdl IHsKICAgICAvKiBCSU9TL0Zpcm13YXJlIHBhc3NlZCB0byBIVk1MT0FERVIgKi8KICAgICBzdHJ1 Y3QgeGNfaHZtX2Zpcm13YXJlX21vZHVsZSBzeXN0ZW1fZmlybXdhcmVfbW9kdWxlOwogCi0gICAg LyogRXh0cmEgQUNQSSB0YWJsZXMgcGFzc2VkIHRvIEhWTUxPQURFUiAqLwotICAgIHN0cnVjdCB4 Y19odm1fZmlybXdhcmVfbW9kdWxlIGFjcGlfbW9kdWxlOworICAgIC8qIEV4dHJhIEFDUEkgdGFi bGVzICovCisjZGVmaW5lIE1BWF9BQ1BJX01PRFVMRVMgICAgICAgIDQKKyAgICBzdHJ1Y3QgeGNf aHZtX2Zpcm13YXJlX21vZHVsZSBhY3BpX21vZHVsZXNbTUFYX0FDUElfTU9EVUxFU107CiAKICAg ICAvKiBFeHRyYSBTTUJJT1Mgc3RydWN0dXJlcyBwYXNzZWQgdG8gSFZNTE9BREVSICovCiAgICAg c3RydWN0IHhjX2h2bV9maXJtd2FyZV9tb2R1bGUgc21iaW9zX21vZHVsZTsKZGlmZiAtLWdpdCBh L3Rvb2xzL2xpYnhjL3hjX2RvbV9odm1sb2FkZXIuYyBiL3Rvb2xzL2xpYnhjL3hjX2RvbV9odm1s b2FkZXIuYwppbmRleCA2ZWI4NTE2Li41OWY5NGU1IDEwMDY0NAotLS0gYS90b29scy9saWJ4Yy94 Y19kb21faHZtbG9hZGVyLmMKKysrIGIvdG9vbHMvbGlieGMveGNfZG9tX2h2bWxvYWRlci5jCkBA IC0xNzIsNyArMTcyLDggQEAgc3RhdGljIGludCBtb2R1bGVzX2luaXQoc3RydWN0IHhjX2RvbV9p bWFnZSAqZG9tKQogICAgIHJjID0gbW9kdWxlX2luaXRfb25lKGRvbSwgJmRvbS0+c3lzdGVtX2Zp cm13YXJlX21vZHVsZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAiU3lzdGVtIEZpcm13YXJl IG1vZHVsZSIpOwogICAgIGlmICggcmMgKSBnb3RvIGVycjsKLSAgICByYyA9IG1vZHVsZV9pbml0 X29uZShkb20sICZkb20tPmFjcGlfbW9kdWxlLCAiQUNQSSBtb2R1bGUiKTsKKyAgICAvKiBPbmx5 IG9uZSBtb2R1bGUgY2FuIGJlIGFkZGVkICovCisgICAgcmMgPSBtb2R1bGVfaW5pdF9vbmUoZG9t LCAmZG9tLT5hY3BpX21vZHVsZXNbMF0sICJBQ1BJIG1vZHVsZSIpOwogICAgIGlmICggcmMgKSBn b3RvIGVycjsKICAgICByYyA9IG1vZHVsZV9pbml0X29uZShkb20sICZkb20tPnNtYmlvc19tb2R1 bGUsICJTTUJJT1MgbW9kdWxlIik7CiAgICAgaWYgKCByYyApIGdvdG8gZXJyOwpkaWZmIC0tZ2l0 IGEvdG9vbHMvbGlieGwvbGlieGxfZG9tLmMgYi90b29scy9saWJ4bC9saWJ4bF9kb20uYwppbmRl eCBjODk1NjQ5Li5jNGJlOTE2IDEwMDY0NAotLS0gYS90b29scy9saWJ4bC9saWJ4bF9kb20uYwor KysgYi90b29scy9saWJ4bC9saWJ4bF9kb20uYwpAQCAtODE4LDcgKzgxOCw4IEBAIHN0YXRpYyBp bnQgaHZtX2J1aWxkX3NldF9wYXJhbXMoeGNfaW50ZXJmYWNlICpoYW5kbGUsIHVpbnQzMl90IGRv bWlkLAogCiBzdGF0aWMgaW50IGh2bV9idWlsZF9zZXRfeHNfdmFsdWVzKGxpYnhsX19nYyAqZ2Ms CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IGRvbWlkLAotICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJ1Y3QgeGNfZG9tX2ltYWdlICpkb20p CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cnVjdCB4Y19kb21faW1hZ2Ug KmRvbSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgbGlieGxfZG9t YWluX2J1aWxkX2luZm8gKmluZm8pCiB7CiAgICAgY2hhciAqcGF0aCA9IE5VTEw7CiAgICAgaW50 IHJldCA9IDA7CkBAIC04MzksMTggKzg0MCwyMCBAQCBzdGF0aWMgaW50IGh2bV9idWlsZF9zZXRf eHNfdmFsdWVzKGxpYnhsX19nYyAqZ2MsCiAgICAgICAgICAgICBnb3RvIGVycjsKICAgICB9CiAK LSAgICBpZiAoZG9tLT5hY3BpX21vZHVsZS5ndWVzdF9hZGRyX291dCkgeworICAgIC8qIE9ubHkg b25lIG1vZHVsZSBjYW4gYmUgcGFzc2VkLiBQVkh2MiBndWVzdHMgZG8gbm90IHN1cHBvcnQgdGhp cy4gKi8KKyAgICBpZiAoZG9tLT5hY3BpX21vZHVsZXNbMF0uZ3Vlc3RfYWRkcl9vdXQgJiYgCisg ICAgICAgIGluZm8tPmRldmljZV9tb2RlbF92ZXJzaW9uICE9TElCWExfREVWSUNFX01PREVMX1ZF UlNJT05fTk9ORSkgewogICAgICAgICBwYXRoID0gR0NTUFJJTlRGKCIvbG9jYWwvZG9tYWluLyVk LyJIVk1fWFNfQUNQSV9QVF9BRERSRVNTLCBkb21pZCk7CiAKICAgICAgICAgcmV0ID0gbGlieGxf X3hzX3ByaW50ZihnYywgWEJUX05VTEwsIHBhdGgsICIweCUiUFJJeDY0LAotICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIGRvbS0+YWNwaV9tb2R1bGUuZ3Vlc3RfYWRkcl9vdXQpOworICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRvbS0+YWNwaV9tb2R1bGVzWzBdLmd1ZXN0X2Fk ZHJfb3V0KTsKICAgICAgICAgaWYgKHJldCkKICAgICAgICAgICAgIGdvdG8gZXJyOwogCiAgICAg ICAgIHBhdGggPSBHQ1NQUklOVEYoIi9sb2NhbC9kb21haW4vJWQvIkhWTV9YU19BQ1BJX1BUX0xF TkdUSCwgZG9taWQpOwogCiAgICAgICAgIHJldCA9IGxpYnhsX194c19wcmludGYoZ2MsIFhCVF9O VUxMLCBwYXRoLCAiMHgleCIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZG9tLT5h Y3BpX21vZHVsZS5sZW5ndGgpOworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRvbS0+ YWNwaV9tb2R1bGVzWzBdLmxlbmd0aCk7CiAgICAgICAgIGlmIChyZXQpCiAgICAgICAgICAgICBn b3RvIGVycjsKICAgICB9CkBAIC05OTQsNiArOTk3LDEzIEBAIHN0YXRpYyBpbnQgbGlieGxfX2Rv bWFpbl9maXJtd2FyZShsaWJ4bF9fZ2MgKmdjLAogICAgIH0KIAogICAgIGlmIChpbmZvLT51Lmh2 bS5hY3BpX2Zpcm13YXJlKSB7CisKKyAgICAgICAgaWYgKGluZm8tPmRldmljZV9tb2RlbF92ZXJz aW9uID09IExJQlhMX0RFVklDRV9NT0RFTF9WRVJTSU9OX05PTkUpIHsKKyAgICAgICAgICAgIExP R0UoRVJST1IsICJQVkggZ3Vlc3RzIGRvIG5vdCBhbGxvdyBsb2FkaW5nIEFDUEkgbW9kdWxlcyIp OworICAgICAgICAgICAgcmMgPSBFUlJPUl9GQUlMOworICAgICAgICAgICAgZ290byBvdXQ7Cisg ICAgICAgIH0KKwogICAgICAgICBkYXRhID0gTlVMTDsKICAgICAgICAgZSA9IGxpYnhsX3JlYWRf ZmlsZV9jb250ZW50cyhjdHgsIGluZm8tPnUuaHZtLmFjcGlfZmlybXdhcmUsCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgJmRhdGEsICZkYXRhbGVuKTsKQEAgLTEwMDUsOSAr MTAxNSw5IEBAIHN0YXRpYyBpbnQgbGlieGxfX2RvbWFpbl9maXJtd2FyZShsaWJ4bF9fZ2MgKmdj LAogICAgICAgICB9CiAgICAgICAgIGxpYnhsX19wdHJfYWRkKGdjLCBkYXRhKTsKICAgICAgICAg aWYgKGRhdGFsZW4pIHsKLSAgICAgICAgICAgIC8qIE9ubHkgYWNjZXB0IG5vbi1lbXB0eSBmaWxl cyAqLwotICAgICAgICAgICAgZG9tLT5hY3BpX21vZHVsZS5kYXRhID0gZGF0YTsKLSAgICAgICAg ICAgIGRvbS0+YWNwaV9tb2R1bGUubGVuZ3RoID0gKHVpbnQzMl90KWRhdGFsZW47CisgICAgICAg ICAgICAvKiBPbmx5IGFjY2VwdCBhIG5vbi1lbXB0eSBmaWxlICovCisgICAgICAgICAgICBkb20t PmFjcGlfbW9kdWxlc1swXS5kYXRhID0gZGF0YTsKKyAgICAgICAgICAgIGRvbS0+YWNwaV9tb2R1 bGVzWzBdLmxlbmd0aCA9ICh1aW50MzJfdClkYXRhbGVuOwogICAgICAgICB9CiAgICAgfQogCkBA IC0xMTQzLDcgKzExNTMsNyBAQCBpbnQgbGlieGxfX2J1aWxkX2h2bShsaWJ4bF9fZ2MgKmdjLCB1 aW50MzJfdCBkb21pZCwKICAgICAgICAgZ290byBvdXQ7CiAgICAgfQogCi0gICAgcmMgPSBodm1f YnVpbGRfc2V0X3hzX3ZhbHVlcyhnYywgZG9taWQsIGRvbSk7CisgICAgcmMgPSBodm1fYnVpbGRf c2V0X3hzX3ZhbHVlcyhnYywgZG9taWQsIGRvbSwgaW5mbyk7CiAgICAgaWYgKHJjICE9IDApIHsK ICAgICAgICAgTE9HKEVSUk9SLCAiaHZtIGJ1aWxkIHNldCB4ZW5zdG9yZSB2YWx1ZXMgZmFpbGVk Iik7CiAgICAgICAgIGdvdG8gb3V0OwotLSAKMS44LjMuMQoKCl9fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fClhlbi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVuLWRl dmVsQGxpc3RzLnhlbi5vcmcKaHR0cHM6Ly9saXN0cy54ZW4ub3JnL3hlbi1kZXZlbAo=