From mboxrd@z Thu Jan 1 00:00:00 1970 From: Yi Sun Subject: [PATCH v4 06/24] x86: refactor psr: implement get hw info flow. Date: Wed, 14 Dec 2016 12:07:46 +0800 Message-ID: <1481688484-5093-7-git-send-email-yi.y.sun@linux.intel.com> References: <1481688484-5093-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 1cH7RY-0004td-1W for xen-devel@lists.xenproject.org; Wed, 14 Dec 2016 11:09:52 +0000 In-Reply-To: <1481688484-5093-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, andrew.cooper3@citrix.com, dario.faggioli@citrix.com, he.chen@linux.intel.com, ian.jackson@eu.citrix.com, Yi Sun , mengxu@cis.upenn.edu, jbeulich@suse.com, chao.p.peng@linux.intel.com List-Id: xen-devel@lists.xenproject.org VGhpcyBwYXRjaCBpbXBsZW1lbnRzIGdldCBIVyBpbmZvIGZsb3cgaW5jbHVkaW5nIEwzIENBVCBj YWxsYmFjawpmdW5jdGlvbi4KCkl0IGFsc28gY2hhbmdlcyBzeXNjdGwgaW50ZXJmYWNlIHRvIG1h a2UgaXQgbW9yZSBnZW5lcmFsLgoKV2l0aCB0aGlzIHBhdGNoLCAncHNyLWh3aW5mbycgY2FuIHdv cmsgZm9yIEwzIENBVC4KClNpZ25lZC1vZmYtYnk6IFlpIFN1biA8eWkueS5zdW5AbGludXguaW50 ZWwuY29tPgotLS0KIHhlbi9hcmNoL3g4Ni9wc3IuYyAgICAgICAgfCA0OCArKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLQogeGVuL2FyY2gveDg2L3N5c2N0bC5j ICAgICB8IDE0ICsrKysrKysrKy0tLS0tCiB4ZW4vaW5jbHVkZS9hc20teDg2L3Bzci5oIHwgIDkg KysrKysrKy0tCiAzIGZpbGVzIGNoYW5nZWQsIDYxIGluc2VydGlvbnMoKyksIDEwIGRlbGV0aW9u cygtKQoKZGlmZiAtLWdpdCBhL3hlbi9hcmNoL3g4Ni9wc3IuYyBiL3hlbi9hcmNoL3g4Ni9wc3Iu YwppbmRleCA3NDZjOTBlLi4wOTViM2E3IDEwMDY0NAotLS0gYS94ZW4vYXJjaC94ODYvcHNyLmMK KysrIGIveGVuL2FyY2gveDg2L3Bzci5jCkBAIC0xMTUsNiArMTE1LDkgQEAgc3RydWN0IGZlYXRf b3BzIHsKICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJ1Y3QgcHNyX3NvY2tldF9pbmZvICpp bmZvKTsKICAgICAvKiBnZXRfbWF4X2Nvc19tYXggaXMgdXNlZCB0byBnZXQgZmVhdHVyZSdzIGNv c19tYXguICovCiAgICAgdW5zaWduZWQgaW50ICgqZ2V0X21heF9jb3NfbWF4KShjb25zdCBzdHJ1 Y3QgZmVhdF9ub2RlICpmZWF0KTsKKyAgICAvKiBnZXRfZmVhdF9pbmZvIGlzIHVzZWQgdG8gZ2V0 IGZlYXR1cmUgSFcgaW5mby4gKi8KKyAgICBib29sICgqZ2V0X2ZlYXRfaW5mbykoY29uc3Qgc3Ry dWN0IGZlYXRfbm9kZSAqZmVhdCwgZW51bSBjYm1fdHlwZSB0eXBlLAorICAgICAgICAgICAgICAg ICAgICAgICAgICB1aW50MzJfdCBkYXRbXSwgdWludDMyX3QgYXJyYXlfbGVuKTsKIH07CiAKIApA QCAtMjIwLDkgKzIyMywyNCBAQCBzdGF0aWMgdW5zaWduZWQgaW50IGwzX2NhdF9nZXRfbWF4X2Nv c19tYXgoY29uc3Qgc3RydWN0IGZlYXRfbm9kZSAqZmVhdCkKICAgICByZXR1cm4gZmVhdC0+aW5m by5sM19jYXRfaW5mby5jb3NfbWF4OwogfQogCitzdGF0aWMgYm9vbCBsM19jYXRfZ2V0X2ZlYXRf aW5mbyhjb25zdCBzdHJ1Y3QgZmVhdF9ub2RlICpmZWF0LAorICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgZW51bSBjYm1fdHlwZSB0eXBlLAorICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgdWludDMyX3QgZGF0W10sIHVpbnQzMl90IGFycmF5X2xlbikKK3sKKyAgICBpZiAo ICFkYXQgfHwgMyA+IGFycmF5X2xlbiB8fCB0eXBlICE9IFBTUl9DQk1fVFlQRV9MMyApCisgICAg ICAgIHJldHVybiBmYWxzZTsKKworICAgIGRhdFtDQk1fTEVOXSA9IGZlYXQtPmluZm8ubDNfY2F0 X2luZm8uY2JtX2xlbjsKKyAgICBkYXRbQ09TX01BWF0gPSBmZWF0LT5pbmZvLmwzX2NhdF9pbmZv LmNvc19tYXg7CisgICAgZGF0W0NEUF9GTEFHXSA9IDA7CisKKyAgICByZXR1cm4gdHJ1ZTsKK30K Kwogc3RydWN0IGZlYXRfb3BzIGwzX2NhdF9vcHMgPSB7CiAgICAgLmluaXRfZmVhdHVyZSA9IGwz X2NhdF9pbml0X2ZlYXR1cmUsCiAgICAgLmdldF9tYXhfY29zX21heCA9IGwzX2NhdF9nZXRfbWF4 X2Nvc19tYXgsCisgICAgLmdldF9mZWF0X2luZm8gPSBsM19jYXRfZ2V0X2ZlYXRfaW5mbywKIH07 CiAKIHN0YXRpYyB2b2lkIF9faW5pdCBwYXJzZV9wc3JfYm9vbChjaGFyICpzLCBjaGFyICp2YWx1 ZSwgY2hhciAqZmVhdHVyZSwKQEAgLTQyNiwxMCArNDQ0LDM0IEBAIHZvaWQgcHNyX2N0eHRfc3dp dGNoX3RvKHN0cnVjdCBkb21haW4gKmQpCiAgICAgfQogfQogCi1pbnQgcHNyX2dldF9jYXRfbDNf aW5mbyh1bnNpZ25lZCBpbnQgc29ja2V0LCB1aW50MzJfdCAqY2JtX2xlbiwKLSAgICAgICAgICAg ICAgICAgICAgICAgIHVpbnQzMl90ICpjb3NfbWF4LCB1aW50MzJfdCAqZmxhZ3MpCitzdGF0aWMg c3RydWN0IHBzcl9zb2NrZXRfaW5mbyAqZ2V0X3NvY2tldF9pbmZvKHVuc2lnbmVkIGludCBzb2Nr ZXQpCiB7Ci0gICAgcmV0dXJuIDA7CisgICAgaWYgKCAhc29ja2V0X2luZm8gKQorICAgICAgICBy ZXR1cm4gRVJSX1BUUigtRU5PREVWKTsKKworICAgIGlmICggc29ja2V0ID49IG5yX3NvY2tldHMg KQorICAgICAgICByZXR1cm4gRVJSX1BUUigtRU5PVFNPQ0spOworCisgICAgaWYgKCAhc29ja2V0 X2luZm9bc29ja2V0XS5mZWF0X21hc2sgKQorICAgICAgICByZXR1cm4gRVJSX1BUUigtRU5PRU5U KTsKKworICAgIHJldHVybiBzb2NrZXRfaW5mbyArIHNvY2tldDsKK30KKworaW50IHBzcl9nZXRf aW5mbyh1bnNpZ25lZCBpbnQgc29ja2V0LCBlbnVtIGNibV90eXBlIHR5cGUsCisgICAgICAgICAg ICAgICAgIHVpbnQzMl90IGRhdFtdLCB1aW50MzJfdCBhcnJheV9sZW4pCit7CisgICAgc3RydWN0 IHBzcl9zb2NrZXRfaW5mbyAqaW5mbyA9IGdldF9zb2NrZXRfaW5mbyhzb2NrZXQpOworICAgIHN0 cnVjdCBmZWF0X25vZGUgKmZlYXRfdG1wOworCisgICAgaWYgKCBJU19FUlIoaW5mbykgKQorICAg ICAgICByZXR1cm4gUFRSX0VSUihpbmZvKTsKKworICAgIGxpc3RfZm9yX2VhY2hfZW50cnkoZmVh dF90bXAsICZpbmZvLT5mZWF0X2xpc3QsIGxpc3QpCisgICAgICAgIGlmICggZmVhdF90bXAtPm9w cy5nZXRfZmVhdF9pbmZvKGZlYXRfdG1wLCB0eXBlLCBkYXQsIGFycmF5X2xlbikgKQorICAgICAg ICAgICAgcmV0dXJuIDA7CisKKyAgICByZXR1cm4gLUVOT0VOVDsKIH0KIAogaW50IHBzcl9nZXRf bDNfY2JtKHN0cnVjdCBkb21haW4gKmQsIHVuc2lnbmVkIGludCBzb2NrZXQsCmRpZmYgLS1naXQg YS94ZW4vYXJjaC94ODYvc3lzY3RsLmMgYi94ZW4vYXJjaC94ODYvc3lzY3RsLmMKaW5kZXggMTRl N2RjNy4uMTY4ZWQ0NSAxMDA2NDQKLS0tIGEveGVuL2FyY2gveDg2L3N5c2N0bC5jCisrKyBiL3hl bi9hcmNoL3g4Ni9zeXNjdGwuYwpAQCAtMTc2LDE1ICsxNzYsMTkgQEAgbG9uZyBhcmNoX2RvX3N5 c2N0bCgKICAgICAgICAgc3dpdGNoICggc3lzY3RsLT51LnBzcl9jYXRfb3AuY21kICkKICAgICAg ICAgewogICAgICAgICBjYXNlIFhFTl9TWVNDVExfUFNSX0NBVF9nZXRfbDNfaW5mbzoKLSAgICAg ICAgICAgIHJldCA9IHBzcl9nZXRfY2F0X2wzX2luZm8oc3lzY3RsLT51LnBzcl9jYXRfb3AudGFy Z2V0LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmc3lzY3RsLT51LnBz cl9jYXRfb3AudS5sM19pbmZvLmNibV9sZW4sCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICZzeXNjdGwtPnUucHNyX2NhdF9vcC51LmwzX2luZm8uY29zX21heCwKLSAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnN5c2N0bC0+dS5wc3JfY2F0X29wLnUu bDNfaW5mby5mbGFncyk7CisgICAgICAgIHsKKyAgICAgICAgICAgIHVpbnQzMl90IGRhdFszXTsK KyAgICAgICAgICAgIHJldCA9IHBzcl9nZXRfaW5mbyhzeXNjdGwtPnUucHNyX2NhdF9vcC50YXJn ZXQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUFNSX0NCTV9UWVBFX0wzLCBkYXQs IDMpOworCisgICAgICAgICAgICBzeXNjdGwtPnUucHNyX2NhdF9vcC51LmwzX2luZm8uY2JtX2xl biA9IGRhdFtDQk1fTEVOXTsKKyAgICAgICAgICAgIHN5c2N0bC0+dS5wc3JfY2F0X29wLnUubDNf aW5mby5jb3NfbWF4ID0gZGF0W0NPU19NQVhdOworICAgICAgICAgICAgc3lzY3RsLT51LnBzcl9j YXRfb3AudS5sM19pbmZvLmZsYWdzICAgPSBkYXRbQ0RQX0ZMQUddOwogCiAgICAgICAgICAgICBp ZiAoICFyZXQgJiYgX19jb3B5X2ZpZWxkX3RvX2d1ZXN0KHVfc3lzY3RsLCBzeXNjdGwsIHUucHNy X2NhdF9vcCkgKQogICAgICAgICAgICAgICAgIHJldCA9IC1FRkFVTFQ7CiAgICAgICAgICAgICBi cmVhazsKLQorICAgICAgICB9CiAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgICByZXQgPSAt RU9QTk9UU1VQUDsKICAgICAgICAgICAgIGJyZWFrOwpkaWZmIC0tZ2l0IGEveGVuL2luY2x1ZGUv YXNtLXg4Ni9wc3IuaCBiL3hlbi9pbmNsdWRlL2FzbS14ODYvcHNyLmgKaW5kZXggNTdmNDdlOS4u Yzg3MmZmZiAxMDA2NDQKLS0tIGEveGVuL2luY2x1ZGUvYXNtLXg4Ni9wc3IuaAorKysgYi94ZW4v aW5jbHVkZS9hc20teDg2L3Bzci5oCkBAIC0zMyw2ICszMywxMSBAQAogLyogTDMgQ0RQIEVuYWJs ZSBiaXQqLwogI2RlZmluZSBQU1JfTDNfUU9TX0NEUF9FTkFCTEVfQklUICAgICAgIDB4MAogCisv KiBVc2VkIGJ5IHBzcl9nZXRfaW5mbygpICovCisjZGVmaW5lIENCTV9MRU4gIDAKKyNkZWZpbmUg Q09TX01BWCAgMQorI2RlZmluZSBDRFBfRkxBRyAyCisKIHN0cnVjdCBwc3JfY210X2wzIHsKICAg ICB1bnNpZ25lZCBpbnQgZmVhdHVyZXM7CiAgICAgdW5zaWduZWQgaW50IHVwc2NhbGluZ19mYWN0 b3I7CkBAIC02Myw4ICs2OCw4IEBAIGludCBwc3JfYWxsb2Nfcm1pZChzdHJ1Y3QgZG9tYWluICpk KTsKIHZvaWQgcHNyX2ZyZWVfcm1pZChzdHJ1Y3QgZG9tYWluICpkKTsKIHZvaWQgcHNyX2N0eHRf c3dpdGNoX3RvKHN0cnVjdCBkb21haW4gKmQpOwogCi1pbnQgcHNyX2dldF9jYXRfbDNfaW5mbyh1 bnNpZ25lZCBpbnQgc29ja2V0LCB1aW50MzJfdCAqY2JtX2xlbiwKLSAgICAgICAgICAgICAgICAg ICAgICAgIHVpbnQzMl90ICpjb3NfbWF4LCB1aW50MzJfdCAqZmxhZ3MpOworaW50IHBzcl9nZXRf aW5mbyh1bnNpZ25lZCBpbnQgc29ja2V0LCBlbnVtIGNibV90eXBlIHR5cGUsCisgICAgICAgICAg ICAgICAgIHVpbnQzMl90IGRhdFtdLCB1aW50MzJfdCBhcnJheV9sZW4pOwogaW50IHBzcl9nZXRf bDNfY2JtKHN0cnVjdCBkb21haW4gKmQsIHVuc2lnbmVkIGludCBzb2NrZXQsCiAgICAgICAgICAg ICAgICAgICAgdWludDY0X3QgKmNibSwgZW51bSBjYm1fdHlwZSB0eXBlKTsKIGludCBwc3Jfc2V0 X2wzX2NibShzdHJ1Y3QgZG9tYWluICpkLCB1bnNpZ25lZCBpbnQgc29ja2V0LAotLSAKMS45LjEK CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpYZW4tZGV2 ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW4ub3JnCmh0dHBzOi8vbGlzdHMueGVu Lm9yZy94ZW4tZGV2ZWwK