From mboxrd@z Thu Jan 1 00:00:00 1970 From: Haozhong Zhang Subject: [RFC QEMU PATCH 4/8] nvdimm acpi: build and copy NFIT to guest on Xen Date: Mon, 10 Oct 2016 08:34:19 +0800 Message-ID: <20161010003423.4333-5-haozhong.zhang@intel.com> References: <20161010003423.4333-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: <20161010003423.4333-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: qemu-devel@nongnu.org, xen-devel@lists.xensource.com Cc: Haozhong Zhang , Stefano Stabellini , Xiao Guangrong , Eduardo Habkost , "Michael S. Tsirkin" , Paolo Bonzini , Anthony Perard , Igor Mammedov , Richard Henderson List-Id: xen-devel@lists.xenproject.org QnVpbGQgYW5kIGNvcHkgTkZJVCB0byBndWVzdCB3aGVuIFFFTVUgaXMgdXNlZCBhcyB0aGUgZGV2 aWNlIG1vZGVsIG9mClhlbi4gVGhlIGNoZWNrc3VtIG9mIE5GSVQgaXMgbGVmdCBibGFuayBhbmQg d2lsbCBiZSBmaWxsZWQgYnkgWGVuCmh2bWxvYWRlci4KClNpZ25lZC1vZmYtYnk6IEhhb3pob25n IFpoYW5nIDxoYW96aG9uZy56aGFuZ0BpbnRlbC5jb20+Ci0tLQpDYzogIk1pY2hhZWwgUy4gVHNp cmtpbiIgPG1zdEByZWRoYXQuY29tPgpDYzogSWdvciBNYW1tZWRvdiA8aW1hbW1lZG9AcmVkaGF0 LmNvbT4KQ2M6IFhpYW8gR3Vhbmdyb25nIDxndWFuZ3JvbmcueGlhb0BsaW51eC5pbnRlbC5jb20+ CkNjOiBQYW9sbyBCb256aW5pIDxwYm9uemluaUByZWRoYXQuY29tPgpDYzogUmljaGFyZCBIZW5k ZXJzb24gPHJ0aEB0d2lkZGxlLm5ldD4KQ2M6IEVkdWFyZG8gSGFia29zdCA8ZWhhYmtvc3RAcmVk aGF0LmNvbT4KQ2M6IFN0ZWZhbm8gU3RhYmVsbGluaSA8c3N0YWJlbGxpbmlAa2VybmVsLm9yZz4K Q2M6IEFudGhvbnkgUGVyYXJkIDxhbnRob255LnBlcmFyZEBjaXRyaXguY29tPgpDYzogeGVuLWRl dmVsQGxpc3RzLnhlbnNvdXJjZS5jb20KLS0tCiBody9hY3BpL2FtbC1idWlsZC5jICB8ICA5ICsr KysrKy0tLQogaHcvYWNwaS9udmRpbW0uYyAgICAgfCAgOCArKysrKysrKwogaHcvaTM4Ni9wYy5j ICAgICAgICAgfCAxMiArKysrKysrKy0tLS0KIGluY2x1ZGUvaHcveGVuL3hlbi5oIHwgIDIgKysK IHhlbi1odm0uYyAgICAgICAgICAgIHwgMjEgKysrKysrKysrKysrKysrKysrKystCiA1IGZpbGVz IGNoYW5nZWQsIDQ0IGluc2VydGlvbnMoKyksIDggZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEv aHcvYWNwaS9hbWwtYnVpbGQuYyBiL2h3L2FjcGkvYW1sLWJ1aWxkLmMKaW5kZXggYjJhMWU0MC4u YTc0OWI2MiAxMDA2NDQKLS0tIGEvaHcvYWNwaS9hbWwtYnVpbGQuYworKysgYi9ody9hY3BpL2Ft bC1idWlsZC5jCkBAIC0xNTMwLDkgKzE1MzAsMTIgQEAgYnVpbGRfaGVhZGVyKEJJT1NMaW5rZXIg KmxpbmtlciwgR0FycmF5ICp0YWJsZV9kYXRhLAogICAgIGgtPm9lbV9yZXZpc2lvbiA9IGNwdV90 b19sZTMyKDEpOwogICAgIG1lbWNweShoLT5hc2xfY29tcGlsZXJfaWQsIEFDUElfQlVJTERfQVBQ TkFNRTQsIDQpOwogICAgIGgtPmFzbF9jb21waWxlcl9yZXZpc2lvbiA9IGNwdV90b19sZTMyKDEp OwotICAgIC8qIENoZWNrc3VtIHRvIGJlIGZpbGxlZCBpbiBieSBHdWVzdCBsaW5rZXIgKi8KLSAg ICBiaW9zX2xpbmtlcl9sb2FkZXJfYWRkX2NoZWNrc3VtKGxpbmtlciwgQUNQSV9CVUlMRF9UQUJM RV9GSUxFLAotICAgICAgICB0Ymxfb2Zmc2V0LCBsZW4sIGNoZWNrc3VtX29mZnNldCk7CisgICAg LyogTm8gbGlua2VyIGlzIHByb3ZpZGVkIHdoZW4gcnVubmluZyBvbiBYZW4gKi8KKyAgICBpZiAo bGlua2VyKSB7CisgICAgICAgIC8qIENoZWNrc3VtIHRvIGJlIGZpbGxlZCBpbiBieSBHdWVzdCBs aW5rZXIgKi8KKyAgICAgICAgYmlvc19saW5rZXJfbG9hZGVyX2FkZF9jaGVja3N1bShsaW5rZXIs IEFDUElfQlVJTERfVEFCTEVfRklMRSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICB0Ymxfb2Zmc2V0LCBsZW4sIGNoZWNrc3VtX29mZnNldCk7CisgICAgfQogfQogCiB2 b2lkICphY3BpX2RhdGFfcHVzaChHQXJyYXkgKnRhYmxlX2RhdGEsIHVuc2lnbmVkIHNpemUpCmRp ZmYgLS1naXQgYS9ody9hY3BpL252ZGltbS5jIGIvaHcvYWNwaS9udmRpbW0uYwppbmRleCBjOWMy YTg0Li42ZGUyMzAxIDEwMDY0NAotLS0gYS9ody9hY3BpL252ZGltbS5jCisrKyBiL2h3L2FjcGkv bnZkaW1tLmMKQEAgLTMyLDYgKzMyLDcgQEAKICNpbmNsdWRlICJody9hY3BpL2Jpb3MtbGlua2Vy LWxvYWRlci5oIgogI2luY2x1ZGUgImh3L252cmFtL2Z3X2NmZy5oIgogI2luY2x1ZGUgImh3L21l bS9udmRpbW0uaCIKKyNpbmNsdWRlICJody94ZW4veGVuLmgiCiAKIHN0YXRpYyBpbnQgbnZkaW1t X3BsdWdnZWRfZGV2aWNlX2xpc3QoT2JqZWN0ICpvYmosIHZvaWQgKm9wYXF1ZSkKIHsKQEAgLTM4 OSw2ICszOTAsMTMgQEAgc3RhdGljIHZvaWQgbnZkaW1tX2J1aWxkX25maXQoR1NMaXN0ICpkZXZp Y2VfbGlzdCwgR0FycmF5ICp0YWJsZV9vZmZzZXRzLAogICAgIGJ1aWxkX2hlYWRlcihsaW5rZXIs IHRhYmxlX2RhdGEsCiAgICAgICAgICAgICAgICAgICh2b2lkICopKHRhYmxlX2RhdGEtPmRhdGEg KyBoZWFkZXIpLCAiTkZJVCIsCiAgICAgICAgICAgICAgICAgIHNpemVvZihOdmRpbW1OZml0SGVh ZGVyKSArIHN0cnVjdHVyZXMtPmxlbiwgMSwgTlVMTCwgTlVMTCk7CisKKyAgICBpZiAoeGVuX2Vu YWJsZWQoKSkgeworICAgICAgICB4ZW5fYWNwaV9jb3B5X3RvX2d1ZXN0KCJORklUIiwgdGFibGVf ZGF0YS0+ZGF0YSArIGhlYWRlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXpl b2YoTnZkaW1tTmZpdEhlYWRlcikgKyBzdHJ1Y3R1cmVzLT5sZW4sCisgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgWEVOX0FDUElfVEFCTEUpOworICAgIH0KKwogICAgIGdfYXJyYXlfZnJl ZShzdHJ1Y3R1cmVzLCB0cnVlKTsKIH0KIApkaWZmIC0tZ2l0IGEvaHcvaTM4Ni9wYy5jIGIvaHcv aTM4Ni9wYy5jCmluZGV4IDJkNmQ3OTIuLjMzYmUwMzIgMTAwNjQ0Ci0tLSBhL2h3L2kzODYvcGMu YworKysgYi9ody9pMzg2L3BjLmMKQEAgLTEyNjksMTAgKzEyNjksMTQgQEAgdm9pZCBwY19tYWNo aW5lX2RvbmUoTm90aWZpZXIgKm5vdGlmaWVyLCB2b2lkICpkYXRhKQogICAgICAgICB9CiAgICAg fQogCi0gICAgYWNwaV9zZXR1cCgpOwotICAgIGlmIChwY21zLT5md19jZmcpIHsKLSAgICAgICAg cGNfYnVpbGRfc21iaW9zKHBjbXMtPmZ3X2NmZyk7Ci0gICAgICAgIHBjX2J1aWxkX2ZlYXR1cmVf Y29udHJvbF9maWxlKHBjbXMpOworICAgIGlmICh4ZW5fZW5hYmxlZCgpKSB7CisgICAgICAgIHhl bl9hY3BpX3NldHVwKHBjbXMpOworICAgIH0gZWxzZSB7CisgICAgICAgIGFjcGlfc2V0dXAoKTsK KyAgICAgICAgaWYgKHBjbXMtPmZ3X2NmZykgeworICAgICAgICAgICAgcGNfYnVpbGRfc21iaW9z KHBjbXMtPmZ3X2NmZyk7CisgICAgICAgICAgICBwY19idWlsZF9mZWF0dXJlX2NvbnRyb2xfZmls ZShwY21zKTsKKyAgICAgICAgfQogICAgIH0KIH0KIApkaWZmIC0tZ2l0IGEvaW5jbHVkZS9ody94 ZW4veGVuLmggYi9pbmNsdWRlL2h3L3hlbi94ZW4uaAppbmRleCA3OTI3M2RhLi42MDM0NGY5IDEw MDY0NAotLS0gYS9pbmNsdWRlL2h3L3hlbi94ZW4uaAorKysgYi9pbmNsdWRlL2h3L3hlbi94ZW4u aApAQCAtNDcsNiArNDcsOCBAQCB2b2lkIHhlbl9tb2RpZmllZF9tZW1vcnkocmFtX2FkZHJfdCBz dGFydCwgcmFtX2FkZHJfdCBsZW5ndGgpOwogCiB2b2lkIHhlbl9yZWdpc3Rlcl9mcmFtZWJ1ZmZl cihzdHJ1Y3QgTWVtb3J5UmVnaW9uICptcik7CiAKK3ZvaWQgeGVuX2FjcGlfc2V0dXAoUENNYWNo aW5lU3RhdGUgKnBjbXMpOworCiAjZGVmaW5lIFhFTl9BQ1BJX1RBQkxFIDAKICNkZWZpbmUgWEVO X0FDUElfTlNERVYgMQogCmRpZmYgLS1naXQgYS94ZW4taHZtLmMgYi94ZW4taHZtLmMKaW5kZXgg MTY4YTllYy4uNzY4YzRjMiAxMDA2NDQKLS0tIGEveGVuLWh2bS5jCisrKyBiL3hlbi1odm0uYwpA QCAtMTI0NCw3ICsxMjQ0LDcgQEAgc3RhdGljIHJhbV9hZGRyX3QgZ3Vlc3RfYWNwaV9idWZfYWxs b2Moc2l6ZV90IGxlbmd0aCkKIAogc3RhdGljIGludCB4ZW5fYWNwaV9uZWVkZWQoUENNYWNoaW5l U3RhdGUgKnBjbXMpCiB7Ci0gICAgcmV0dXJuIDA7CisgICAgcmV0dXJuIHBjbXMtPmFjcGlfbnZk aW1tX3N0YXRlLmlzX2VuYWJsZWQ7CiB9CiAKIHN0YXRpYyBpbnQgeGVuX2FjcGlfaW5pdChQQ01h Y2hpbmVTdGF0ZSAqcGNtcywgWGVuSU9TdGF0ZSAqc3RhdGUpCkBAIC0xMjU2LDYgKzEyNTYsMjUg QEAgc3RhdGljIGludCB4ZW5fYWNwaV9pbml0KFBDTWFjaGluZVN0YXRlICpwY21zLCBYZW5JT1N0 YXRlICpzdGF0ZSkKICAgICByZXR1cm4gZ3Vlc3RfYWNwaV9idWZfaW5pdChzdGF0ZSk7CiB9CiAK K3N0YXRpYyB2b2lkIHhlbl9hY3BpX252ZGltbV9zZXR1cChQQ01hY2hpbmVTdGF0ZSAqcGNtcykK K3sKKyAgICBHQXJyYXkgKnRhYmxlX29mZnNldHMgPSBnX2FycmF5X25ldyhmYWxzZSwgdHJ1ZSAv KiBjbGVhciAqLywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXpl b2YodWludDMyX3QpKTsKKyAgICBHQXJyYXkgKnRhYmxlX2RhdGEgPSBnX2FycmF5X25ldyhmYWxz ZSwgdHJ1ZSAvKiBjbGVhciAqLywgMSk7CisKKyAgICBudmRpbW1fYnVpbGRfYWNwaSh0YWJsZV9v ZmZzZXRzLCB0YWJsZV9kYXRhLAorICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIHBjbXMtPmFj cGlfbnZkaW1tX3N0YXRlLmRzbV9tZW0pOworICAgIGdfYXJyYXlfZnJlZSh0YWJsZV9vZmZzZXRz LCB0cnVlKTsKKyAgICBnX2FycmF5X2ZyZWUodGFibGVfZGF0YSwgdHJ1ZSk7Cit9CisKK3ZvaWQg eGVuX2FjcGlfc2V0dXAoUENNYWNoaW5lU3RhdGUgKnBjbXMpCit7CisgICAgaWYgKHBjbXMtPmFj cGlfbnZkaW1tX3N0YXRlLmlzX2VuYWJsZWQpIHsKKyAgICAgICAgeGVuX2FjcGlfbnZkaW1tX3Nl dHVwKHBjbXMpOworICAgIH0KK30KKwogdm9pZCB4ZW5faHZtX2luaXQoUENNYWNoaW5lU3RhdGUg KnBjbXMsIE1lbW9yeVJlZ2lvbiAqKnJhbV9tZW1vcnkpCiB7CiAgICAgaW50IGksIHJjOwotLSAK Mi4xMC4xCgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18K WGVuLWRldmVsIG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVuLm9yZwpodHRwczovL2xp c3RzLnhlbi5vcmcveGVuLWRldmVsCg==