From mboxrd@z Thu Jan 1 00:00:00 1970 From: Yi Sun Subject: [PATCH v1] x86: psr: support co-exist features' values setting Date: Fri, 6 Oct 2017 17:13:00 +0800 Message-ID: <1507281180-5101-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 1e0P0H-0005lA-9c for xen-devel@lists.xenproject.org; Fri, 06 Oct 2017 09:33:09 +0000 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: Yi Sun , Andrew Cooper , Julien Grall , Jan Beulich , Wei Liu , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= List-Id: xen-devel@lists.xenproject.org SXQgY2hhbmdlcyB0aGUgbWVtZWJlcnMgaW4gJ2Nvc193cml0ZV9pbmZvJyB0byB0cmFuc2ZlciB0 aGUgZmVhdHVyZSBhcnJheSwKZmVhdHVyZSBwcm9wZXJ0aWVzIGFycmF5IGFuZCB2YWx1ZSBhcnJh eS4gVGhlbiwgd2UgY2FuIHdyaXRlIGFsbCBmZWF0dXJlcwp2YWx1ZXMgb24gdGhlIGNvcyBpZCBp bnRvIE1TUnMuCgpCZWNhdXNlIG11bHRpcGxlIGZlYXR1cmVzIG1heSBjby1leGlzdCwgd2UgbmVl ZCBoYW5kbGUgYWxsIGZlYXR1cmVzIHRvIHdyaXRlCnZhbHVlcyBvZiB0aGVtIGludG8gYSBDT1Mg cmVnaXN0ZXIgd2l0aCBuZXcgQ09TIElELiBFLmc6CjEuIEwzIENBVCBhbmQgTDIgQ0FUIGNvLWV4 aXN0LgoyLiBEb20xIGFuZCBEb20yIHNoYXJlIGEgc2FtZSBDT1MgSUQgKDIpLiBUaGUgTDMgQ0FU IENCTSBvZiBEb20xIGlzIDB4MWZmLAogICB0aGUgTDIgQ0FUIENCTSBvZiBEb20xIGlzIDB4MWYu CjMuIFVzZXIgd2FudHMgdG8gY2hhbmdlIEwyIENCTSBvZiBEb20xIHRvIGJlIDB4Zi4gQmVjYXVz ZSBDT1MgSUQgMiBpcwogICB1c2VkIGJ5IERvbTIgdG9vLCB3ZSBoYXZlIHRvIHBpY2sgYSBuZXcg Q09TIElEIDMuIFRoZSB2YWx1ZXMgb2YgRG9tMSBvbgogICBDT1MgSUQgMyBhcmUgYWxsIGRlZmF1 bHQgdmFsdWVzIGFzIGJlbG93OgogICAgICAgICAgIC0tLS0tLS0tLQogICAgICAgICAgIHwgQ09T IDMgfAogICAgICAgICAgIC0tLS0tLS0tLQogICBMMyBDQVQgIHwgMHg3ZmYgfAogICAgICAgICAg IC0tLS0tLS0tLQogICBMMiBDQVQgIHwgMHhmZiAgfAogICAgICAgICAgIC0tLS0tLS0tLQo0LiBB ZnRlciBzZXR0aW5nLCB0aGUgTDMgQ0FUIENCTSB2YWx1ZSBvZiBEb20xIHNob3VsZCBiZSBrZXB0 IGFuZCB0aGUgbmV3IEwyCiAgIENBVCBDQk0gaXMgc2V0LiBTbywgdGhlIHZhbHVlcyBvbiBDT1Mg SUQgMyBzaG91bGQgYmUgYmVsb3cuCiAgICAgICAgICAgLS0tLS0tLS0tCiAgICAgICAgICAgfCBD T1MgMyB8CiAgICAgICAgICAgLS0tLS0tLS0tCiAgIEwzIENBVCAgfCAweDFmZiB8CiAgICAgICAg ICAgLS0tLS0tLS0tCiAgIEwyIENBVCAgfCAweGYgICB8CiAgICAgICAgICAgLS0tLS0tLS0tCgpT bywgd2Ugc2hvdWxkIHdyaXRlIGFsbCBmZWF0dXJlcyB2YWx1ZXMgaW50byB0aGVpciBNU1JzLiBU aGF0IHJlcXVpcmVzIHRoZQpmZWF0dXJlIGFycmF5LCBmZWF0dXJlIHByb3BlcnRpZXMgYXJyYXkg YW5kIHZhbHVlIGFycmF5IGFyZSBpbnB1dC4KClNpZ25lZC1vZmYtYnk6IFlpIFN1biA8eWkueS5z dW5AbGludXguaW50ZWwuY29tPgotLS0KQ0M6IEphbiBCZXVsaWNoIDxqYmV1bGljaEBzdXNlLmNv bT4KQ0M6IEFuZHJldyBDb29wZXIgPGFuZHJldy5jb29wZXIzQGNpdHJpeC5jb20+CkNDOiBXZWkg TGl1IDx3ZWkubGl1MkBjaXRyaXguY29tPgpDQzogUm9nZXIgUGF1IE1vbm7DqSA8cm9nZXIucGF1 QGNpdHJpeC5jb20+CkNDOiBKdWxpZW4gR3JhbGwgPGp1bGllbi5ncmFsbEBhcm0uY29tPgotLS0K IHhlbi9hcmNoL3g4Ni9wc3IuYyB8IDUxICsrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLQogMSBmaWxlIGNoYW5nZWQsIDI3IGluc2VydGlvbnMoKyksIDI0 IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3hlbi9hcmNoL3g4Ni9wc3IuYyBiL3hlbi9hcmNo L3g4Ni9wc3IuYwppbmRleCBkYWEyYWViLi41OTZiMGNhIDEwMDY0NAotLS0gYS94ZW4vYXJjaC94 ODYvcHNyLmMKKysrIGIveGVuL2FyY2gveDg2L3Bzci5jCkBAIC0xMTExLDI1ICsxMTExLDQwIEBA IHN0YXRpYyB1bnNpZ25lZCBpbnQgZ2V0X3NvY2tldF9jcHUodW5zaWduZWQgaW50IHNvY2tldCkK IHN0cnVjdCBjb3Nfd3JpdGVfaW5mbwogewogICAgIHVuc2lnbmVkIGludCBjb3M7Ci0gICAgc3Ry dWN0IGZlYXRfbm9kZSAqZmVhdHVyZTsKKyAgICBzdHJ1Y3QgZmVhdF9ub2RlICoqZmVhdHVyZXM7 CiAgICAgY29uc3QgdWludDMyX3QgKnZhbDsKLSAgICBjb25zdCBzdHJ1Y3QgZmVhdF9wcm9wcyAq cHJvcHM7CisgICAgdW5zaWduZWQgaW50IGFycmF5X2xlbjsKIH07CiAKIHN0YXRpYyB2b2lkIGRv X3dyaXRlX3Bzcl9tc3JzKHZvaWQgKmRhdGEpCiB7CiAgICAgY29uc3Qgc3RydWN0IGNvc193cml0 ZV9pbmZvICppbmZvID0gZGF0YTsKLSAgICBzdHJ1Y3QgZmVhdF9ub2RlICpmZWF0ID0gaW5mby0+ ZmVhdHVyZTsKLSAgICBjb25zdCBzdHJ1Y3QgZmVhdF9wcm9wcyAqcHJvcHMgPSBpbmZvLT5wcm9w czsKLSAgICB1bnNpZ25lZCBpbnQgaSwgY29zID0gaW5mby0+Y29zLCBjb3NfbnVtID0gcHJvcHMt PmNvc19udW07CisgICAgdW5zaWduZWQgaW50IGksIGluZGV4ID0gMCwgY29zID0gaW5mby0+Y29z OworICAgIGNvbnN0IHVpbnQzMl90ICp2YWxfYXJyYXkgPSBpbmZvLT52YWw7CiAKLSAgICBmb3Ig KCBpID0gMDsgaSA8IGNvc19udW07IGkrKyApCisgICAgZm9yICggaSA9IDA7IGkgPCBBUlJBWV9T SVpFKGZlYXRfcHJvcHMpOyBpKysgKQogICAgIHsKLSAgICAgICAgaWYgKCBmZWF0LT5jb3NfcmVn X3ZhbFtjb3MgKiBjb3NfbnVtICsgaV0gIT0gaW5mby0+dmFsW2ldICkKKyAgICAgICAgc3RydWN0 IGZlYXRfbm9kZSAqZmVhdCA9IGluZm8tPmZlYXR1cmVzW2ldOworICAgICAgICBjb25zdCBzdHJ1 Y3QgZmVhdF9wcm9wcyAqcHJvcHMgPSBmZWF0X3Byb3BzW2ldOworICAgICAgICB1bnNpZ25lZCBp bnQgY29zX251bSwgajsKKworICAgICAgICBpZiAoICFmZWF0IHx8ICFwcm9wcyApCisgICAgICAg ICAgICBjb250aW51ZTsKKworICAgICAgICBjb3NfbnVtID0gcHJvcHMtPmNvc19udW07CisgICAg ICAgIGlmICggaW5mby0+YXJyYXlfbGVuIDwgaW5kZXggKyBjb3NfbnVtICkKKyAgICAgICAgICAg IHJldHVybjsKKworICAgICAgICBmb3IgKCBqID0gMDsgaiA8IGNvc19udW07IGorKyApCiAgICAg ICAgIHsKLSAgICAgICAgICAgIGZlYXQtPmNvc19yZWdfdmFsW2NvcyAqIGNvc19udW0gKyBpXSA9 IGluZm8tPnZhbFtpXTsKLSAgICAgICAgICAgIHByb3BzLT53cml0ZV9tc3IoY29zLCBpbmZvLT52 YWxbaV0sIHByb3BzLT50eXBlW2ldKTsKKyAgICAgICAgICAgIGlmICggZmVhdC0+Y29zX3JlZ192 YWxbY29zICogY29zX251bSArIGpdICE9IHZhbF9hcnJheVtpbmRleCArIGpdICkKKyAgICAgICAg ICAgIHsKKyAgICAgICAgICAgICAgICBmZWF0LT5jb3NfcmVnX3ZhbFtjb3MgKiBjb3NfbnVtICsg al0gPSB2YWxfYXJyYXlbaW5kZXggKyBqXTsKKyAgICAgICAgICAgICAgICBwcm9wcy0+d3JpdGVf bXNyKGNvcywgdmFsX2FycmF5W2luZGV4ICsgal0sIHByb3BzLT50eXBlW2pdKTsKKyAgICAgICAg ICAgIH0KICAgICAgICAgfQorCisgICAgICAgIGluZGV4ICs9IGNvc19udW07CiAgICAgfQogfQog CkBAIC0xMTM3LDMwICsxMTUyLDE4IEBAIHN0YXRpYyBpbnQgd3JpdGVfcHNyX21zcnModW5zaWdu ZWQgaW50IHNvY2tldCwgdW5zaWduZWQgaW50IGNvcywKICAgICAgICAgICAgICAgICAgICAgICAg ICAgY29uc3QgdWludDMyX3QgdmFsW10sIHVuc2lnbmVkIGludCBhcnJheV9sZW4sCiAgICAgICAg ICAgICAgICAgICAgICAgICAgIGVudW0gcHNyX2ZlYXRfdHlwZSBmZWF0X3R5cGUpCiB7Ci0gICAg aW50IHJldDsKICAgICBzdHJ1Y3QgcHNyX3NvY2tldF9pbmZvICppbmZvID0gZ2V0X3NvY2tldF9p bmZvKHNvY2tldCk7CiAgICAgc3RydWN0IGNvc193cml0ZV9pbmZvIGRhdGEgPQogICAgIHsKICAg ICAgICAgLmNvcyA9IGNvcywKLSAgICAgICAgLmZlYXR1cmUgPSBpbmZvLT5mZWF0dXJlc1tmZWF0 X3R5cGVdLAotICAgICAgICAucHJvcHMgPSBmZWF0X3Byb3BzW2ZlYXRfdHlwZV0sCisgICAgICAg IC5mZWF0dXJlcyA9IGluZm8tPmZlYXR1cmVzLAorICAgICAgICAudmFsID0gdmFsLAorICAgICAg ICAuYXJyYXlfbGVuID0gYXJyYXlfbGVuLAogICAgIH07CiAKICAgICBpZiAoIGNvcyA+IGluZm8t PmZlYXR1cmVzW2ZlYXRfdHlwZV0tPmNvc19tYXggKQogICAgICAgICByZXR1cm4gLUVJTlZBTDsK IAotICAgIC8qIFNraXAgdG8gdGhlIGZlYXR1cmUncyB2YWx1ZSBoZWFkLiAqLwotICAgIHJldCA9 IHNraXBfcHJpb3JfZmVhdHVyZXMoJmFycmF5X2xlbiwgZmVhdF90eXBlKTsKLSAgICBpZiAoIHJl dCA8IDAgKQotICAgICAgICByZXR1cm4gcmV0OwotCi0gICAgdmFsICs9IHJldDsKLQotICAgIGlm ICggYXJyYXlfbGVuIDwgZmVhdF9wcm9wc1tmZWF0X3R5cGVdLT5jb3NfbnVtICkKLSAgICAgICAg cmV0dXJuIC1FTk9TUEM7Ci0KLSAgICBkYXRhLnZhbCA9IHZhbDsKLQogICAgIGlmICggc29ja2V0 ID09IGNwdV90b19zb2NrZXQoc21wX3Byb2Nlc3Nvcl9pZCgpKSApCiAgICAgICAgIGRvX3dyaXRl X3Bzcl9tc3JzKCZkYXRhKTsKICAgICBlbHNlCi0tIAoxLjkuMQoKCl9fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fClhlbi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVu LWRldmVsQGxpc3RzLnhlbi5vcmcKaHR0cHM6Ly9saXN0cy54ZW4ub3JnL3hlbi1kZXZlbAo=