From mboxrd@z Thu Jan 1 00:00:00 1970 From: Yi Sun Subject: [PATCH v14 15/23] x86: refactor psr: CDP: implement set value callback function. Date: Sat, 15 Jul 2017 08:31:48 +0800 Message-ID: <1500078716-5928-16-git-send-email-yi.y.sun@linux.intel.com> References: <1500078716-5928-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.bemta3.messagelabs.com ([195.245.230.39]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1dWBEX-0007WG-PY for xen-devel@lists.xenproject.org; Sat, 15 Jul 2017 00:46:58 +0000 In-Reply-To: <1500078716-5928-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: kevin.tian@intel.com, wei.liu2@citrix.com, andrew.cooper3@citrix.com, dario.faggioli@citrix.com, ian.jackson@eu.citrix.com, Yi Sun , mengxu@cis.upenn.edu, jbeulich@suse.com, chao.p.peng@linux.intel.com, roger.pau@citrix.com List-Id: xen-devel@lists.xenproject.org VGhpcyBwYXRjaCBpbXBsZW1lbnRzIEwzIENEUCBzZXQgdmFsdWUgcmVsYXRlZCBjYWxsYmFjayBm dW5jdGlvbi4KCldpdGggdGhpcyBwYXRjaCwgJ3Bzci1jYXQtY2JtLXNldCcgY29tbWFuZCBjYW4g d29yayBmb3IgTDMgQ0RQLgoKU2lnbmVkLW9mZi1ieTogWWkgU3VuIDx5aS55LnN1bkBsaW51eC5p bnRlbC5jb20+ClJldmlld2VkLWJ5OiBKYW4gQmV1bGljaCA8amJldWxpY2hAc3VzZS5jb20+Ci0t LQp2MTM6CiAgICAtIHJlbW92ZSAnc3RyaWN0JyBmcm9tICdwc3JfY2JtX3R5cGVfdG9fZmVhdF90 eXBlJyBiZWNhdXNlIHdlIHVzZSAnYWx0X3R5cGUnCiAgICAgIHRvIGNoZWNrIGlmIHdlIG5lZWQg c2V0IGJvdGggREFUQSBhbmQgQ09ERSBub3cuCiAgICAgIChzdWdnZXN0ZWQgYnkgSmFuIEJldWxp Y2gpCiAgICAtIGFkanVzdCB0aGUgaW1wbGVtZW50YXRpb24gaW4gY2lyY2xlIGluICdpbnNlcnRf dmFsX2ludG9fYXJyYXknIHRvIG1ha2UKICAgICAgY29kZXMgY2xlYXJlciB0byBzaG93IGhvdyB0 byBkZWNpZGUgdGhlIHJldHVybiB2YWx1ZS4KICAgICAgKHN1Z2dlc3RlZCBieSBKYW4gQmV1bGlj aCkKdjEyOgogICAgLSBhZGQgY29tbWVudCB0byBleHBsYWluIGhvdyB0byBkZWFsIHdpdGggdGhl IGNhc2UgdGhhdCB1c2VyIHNldCBuZXcgdmFsCiAgICAgIGZvciBib3RoIERBVEEgYW5kIENPREUg YXQgc2FtZSB0aW1lLgogICAgLSBhZGQgcGFyYW1ldGVyIGZvciAncHNyX2NibV90eXBlX3RvX2Zl YXRfdHlwZScgdG8gcmV0dXJuIHRoZSBmZWF0dXJlIHR5cGUKICAgICAgYWNjb3JkaW5nIHRvIGl0 LgogICAgLSB1c2UgdGhlIGZlYXR1cmUgdHlwZSByZXR1cm5lZCBieSAncHNyX2NibV90eXBlX3Rv X2ZlYXRfdHlwZScgdG8gY2hlY2sKICAgICAgaWYgd2UgbmVlZCBpbnNlcnQgdGhlIG5ldyB2YWx1 ZSBpbnRvIGFsbCBpdGVtcyBvZiB0aGUgZmVhdHVyZSB2YWx1ZSBhcnJheS4KICAgIC0gdXNlIGNv bmRpdGlvbmFsIGV4cHJlc3Npb24gZm9yIHdybXNybC4KICAgICAgKHN1Z2dlc3RlZCBieSBKYW4g QmV1bGljaCkKdjExOgogICAgLSBtb3ZlICdmZWF0LT5jb3NfcmVnX3ZhbCcgYXNzaWdubWVudCBh bmQgdmFsdWUgY29tcGFyaXNvbiBpbiAnd3JpdGVfbXNyJwogICAgICBjYWxsYmFjayBmdW5jdGlv biBvdXQgYXMgZ2VuZXJpYyBjb2Rlcy4KICAgICAgKHN1Z2dlc3RlZCBieSBKYW4gQmV1bGljaCkK ICAgIC0gY2hhbmdlcyBhYm91dCBzZXR0aW5nIGJvdGggQ0RQIERBVEEgYW5kIENPREUgYXQgc2Ft ZSB0aW1lLgogICAgLSBtb3ZlICd0eXBlW10nIGRlY2xhcmF0aW9uIGludG8gcHJldmlvdXMgcGF0 Y2ggd2hpY2ggaW50cm9kdWNlZCAnY29zX251bScuCiAgICAgIChzdWdnZXN0ZWQgYnkgSmFuIEJl dWxpY2gpCiAgICAtIGNoYW5nZXMgYWJvdXQgJ3R5cGVbXScuCiAgICAgIChzdWdnZXN0ZWQgYnkg SmFuIEJldWxpY2gpCiAgICAtIG1vdmUgJ2NvbXBhcmVfdmFsJyB0byBwcmV2aW91cyBwYXRjaC4K ICAgICAgKHN1Z2dlc3RlZCBieSBKYW4gQmV1bGljaCkKICAgIC0gY2hhbmdlcyBhYm91dCAnZ2V0 X3ZhbCcgd2hpY2ggaGFzIGJlZW4gcmVwbGFjZSBieSBnZW5lcmljIGNvZGVzLgogICAgICAoc3Vn Z2VzdGVkIGJ5IEphbiBCZXVsaWNoKQogICAgLSByZW1vdmUgJ3Jlc3RvcmVfZGVmYXVsdF92YWwn IHdoaWNoIGlzIHVubmVjZXNzYXJ5IG5vdy4KICAgICAgKHN1Z2dlc3RlZCBieSBKYW4gQmV1bGlj aCkKdjEwOgogICAgLSByZW1vdmUgJ2wzX2NkcF9nZXRfb2xkX3ZhbCcgYW5kIHVzZSAnbDNfY2Rw X2dldF92YWwnIHRvIHJlcGxhY2UgaXQuCiAgICAgIChzdWdnZXN0ZWQgYnkgSmFuIEJldWxpY2gp CiAgICAtIHJlbW92ZSAnbDNfY2RwX3NldF9uZXdfdmFsJy4KICAgIC0gbW9kaWZ5ICdpbnNlcnRf dmFsX3RvX2FycmF5JyBmbG93IHRvIGhhbmRsZSBtdWx0aXBsZSBDT1NzIGNhc2UuCiAgICAgIChz dWdnZXN0ZWQgYnkgSmFuIEJldWxpY2gpCiAgICAtIHJlbW92ZSAnbDNfY2RwX2NvbXBhcmVfdmFs JyBhbmQgaW1wbGVtZW50IGEgZ2VuZXJpYyBmdW5jdGlvbgogICAgICAnY29tYXByZV92YWwnLgog ICAgICAoc3VnZ2VzdGVkIGJ5IEphbiBCZXVsaWNoKQogICAgLSByZW1vdmUgJ2wzX2NkcF9maXRz X2Nvc19tYXgnLgogICAgICAoc3VnZ2VzdGVkIGJ5IEphbiBCZXVsaWNoKQogICAgLSBpbnRyb2R1 Y2UgbWFjcm8gJ1BTUl9NQVhfQ09TX05VTScuCiAgICAtIGludHJvZHVjZSBhIG5ldyBtZW1iZXIg aW4gJ2ZlYXRfcHJvcHMnLCAndHlwZVtQU1JfTUFYX0NPU19OVU1dJyB0byByZWNvcmQKICAgICAg YWxsICdjYm1fdHlwZScgdGhlIGZlYXR1cmUgaGFzLgogICAgICAoc3VnZ2VzdGVkIGJ5IEphbiBC ZXVsaWNoKQogICAgLSBtb2RpZnkgJ2dhdGhlcl92YWxfYXJyYXknIGZsb3cgdG8gaGFuZGxlIG11 bHRpcGxlIENPU3MgY2FzZS4KICAgICAgKHN1Z2dlc3RlZCBieSBKYW4gQmV1bGljaCkKICAgIC0g bW9kaWZ5ICdmaW5kX2NvcycgZmxvdyBhbmQgaW1wbGVtZW50ICdjb21wYXJlX3ZhbCcgdG8gaGFu ZGxlIG11bHRpcGxlCiAgICAgIENPU3MgY2FzZS4KICAgICAgKHN1Z2dlc3RlZCBieSBKYW4gQmV1 bGljaCkKICAgIC0gbW9kaWZ5ICdmaXRzX2Nvc19tYXgnIGZsb3cgdG8gaGFuZGxlIG11bHRpcGxl IENPU3MgY2FzZS4KICAgICAgKHN1Z2dlc3RlZCBieSBKYW4gQmV1bGljaCkKICAgIC0gY2hhbmdl cyBhYm91dCAncHJvcHMnLgogICAgICAoc3VnZ2VzdGVkIGJ5IEphbiBCZXVsaWNoKQogICAgLSBy ZW1vdmUgY2FzdCBpbiAnbDNfY2RwX3dyaXRlX21zcicuCiAgICAgIChzdWdnZXN0ZWQgYnkgSmFu IEJldWxpY2gpCiAgICAtIGltcGxlbWVudCAnY29tcGFyZV92YWwnIGZ1bmN0aW9uIHRvIGNvbXBh cmUgaWYgZmVhdHVyZSB2YWx1ZXMgYXJlIHdoYXQKICAgICAgd2UgZXhwZWN0IGluIGZpbmRpbmcg Zmxvdy4KICAgIC0gaW1wbGVtZW50ICdyZXN0b3JlX2RlZmF1bHRfdmFsJyBmdW5jdGlvbiB0byBy ZXN0b3JlIGZlYXR1cmUncyBDT1MgdmFsdWVzCiAgICAgIHRvIGRlZmF1bHQgaWYgdGhlIGZlYXR1 cmUgaGFzIG11bHRpcGxlIENPU3MuIEl0IGlzIGNhbGxlZCB3aGVuIHRoZSBDT1MKICAgICAgSUQg aXMgcmVkdWNlZCB0byAwLgp2OToKICAgIC0gYWRkIGNvbW1lbnQgdG8gZXhwbGFpbiB3aHkgQ0RQ IHVzZXMgMiBDT1NzLgogICAgICAoc3VnZ2VzdGVkIGJ5IFdlaSBMaXUpCiAgICAtIHVzZSAnY2F0 X2RlZmF1bHRfdmFsJy4KICAgICAgKHN1Z2dlc3RlZCBieSBXZWkgTGl1KQogICAgLSByZW1vdmUg J2wzX2NkcF9nZXRfY29zX251bScgYmVjYXVzZSB3ZSBjYW4gZGlyZWN0bHkgZ2V0IGNvc19udW0g ZnJvbQogICAgICBmZWF0X25vZGUgbm93LgogICAgICAoc3VnZ2VzdGVkIGJ5IEphbiBCZXVsaWNo KQogICAgLSByZW1vdmUgY29zIGNoZWNraW5nIGJlY2F1c2UgaXQgaGFzIGJlZW4gbW92ZWQgdG8g Y29tbW9uIGZ1bmN0aW9uLgogICAgICAoc3VnZ2VzdGVkIGJ5IEphbiBCZXVsaWNoKQogICAgLSBs M19jZHBfc2V0X25ld192YWwgcGFyYW1ldGVyICdtJyBpcyBjaGFuZ2VkIHRvICduZXdfdmFsJy4K ICAgICAgKHN1Z2dlc3RlZCBieSBKYW4gQmV1bGljaCkKICAgIC0gZGlyZWN0bHkgdXNlIGdldF9j ZHBfZGF0YShmZWF0LCAwKSBhbmQgZ2V0X2NkcF9jb2RlKGZlYXQsIDApIHRvIGdldAogICAgICBk ZWZhdWx0IHZhbHVlLgogICAgICAoc3VnZ2VzdGVkIGJ5IEphbiBCZXVsaWNoKQogICAgLSBtb2Rp ZnkgJ2wzX2NkcF93cml0ZV9tc3InIGZsb3cgdG8gd3JpdGUgdmFsdWUgaW50byByZWdpc3RlciBh Y2NvcmRpbmcKICAgICAgdG8gaW5wdXQgdHlwZS4KICAgIC0gY2hhbmdlcyBhYm91dCAndWludDY0 X3QnIHRvICd1aW50MzJfdCcuCiAgICAgIChzdWdnZXN0ZWQgYnkgSmFuIEJldWxpY2gpCnY4Ogog ICAgLSBtb2RpZnkgJ2wzX2NkcF93cml0ZV9tc3InIHR5cGUgdG8gJ3ZvaWQnLgp2NToKICAgIC0g cmVtb3ZlIHR5cGUgY2hlY2sgaW4gY2FsbGJhY2sgZnVuY3Rpb24uCiAgICAgIChzdWdnZXN0ZWQg YnkgSmFuIEJldWxpY2gpCiAgICAtIG1vZGlmeSByZXR1cm4gdmFsdWUgb2YgY2FsbGJhY2sgZnVu Y3Rpb25zIGJlY2F1c2Ugd2UgZG8gbm90IG5lZWQgdGhlbQogICAgICB0byByZXR1cm4gbnVtYmVy IG9mIGVudHJpZXMgdGhlIGZlYXR1cmUgdXNlcy4gSW4gY2FsbGVyLCB3ZSBjYWxsCiAgICAgICdn ZXRfY29zX251bScgdG8gZ2V0IHRoZSBudW1iZXIgb2YgZW50cmllcyB0aGUgZmVhdHVyZSB1c2Vz LgogICAgICAoc3VnZ2VzdGVkIGJ5IEphbiBCZXVsaWNoKQogICAgLSByZW1vdmUgJ2wzX2NkcF9n ZXRfY29zX21heF9mcm9tX3R5cGUnLgogICAgLSByZW5hbWUgJ2wzX2NkcF9leGNlZWRzX2Nvc19t YXgnIHRvICdsM19jZHBfZml0c19jb3NfbWF4Jy4KICAgICAgKHN1Z2dlc3RlZCBieSBKYW4gQmV1 bGljaCkKdjQ6CiAgICAtIGNyZWF0ZSB0aGlzIHBhdGNoIHRvIG1ha2UgY29kZXMgZWFzaWVyIHRv IHVuZGVyc3RhbmQuCiAgICAgIChzdWdnZXN0ZWQgYnkgSmFuIEJldWxpY2gpCi0tLQogeGVuL2Fy Y2gveDg2L3Bzci5jIHwgMjAgKysrKysrKysrKysrKysrKystLS0KIDEgZmlsZSBjaGFuZ2VkLCAx NyBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3hlbi9hcmNoL3g4 Ni9wc3IuYyBiL3hlbi9hcmNoL3g4Ni9wc3IuYwppbmRleCBhOWUxYjU2Li5jMjExYzc3IDEwMDY0 NAotLS0gYS94ZW4vYXJjaC94ODYvcHNyLmMKKysrIGIveGVuL2FyY2gveDg2L3Bzci5jCkBAIC0z NzQsNiArMzc0LDEwIEBAIHN0YXRpYyBib29sIGwzX2NkcF9nZXRfZmVhdF9pbmZvKGNvbnN0IHN0 cnVjdCBmZWF0X25vZGUgKmZlYXQsCiAKIHN0YXRpYyB2b2lkIGwzX2NkcF93cml0ZV9tc3IodW5z aWduZWQgaW50IGNvcywgdWludDMyX3QgdmFsLCBlbnVtIGNibV90eXBlIHR5cGUpCiB7CisgICAg d3Jtc3JsKCgodHlwZSA9PSBQU1JfQ0JNX1RZUEVfTDNfREFUQSkgPworICAgICAgICAgICAgTVNS X0lBMzJfUFNSX0wzX01BU0tfREFUQShjb3MpIDoKKyAgICAgICAgICAgIE1TUl9JQTMyX1BTUl9M M19NQVNLX0NPREUoY29zKSksCisgICAgICAgICAgIHZhbCk7CiB9CiAKIHN0YXRpYyBjb25zdCBz dHJ1Y3QgZmVhdF9wcm9wcyBsM19jZHBfcHJvcHMgPSB7CkBAIC04MjksMTcgKzgzMywyNyBAQCBz dGF0aWMgaW50IGluc2VydF92YWxfaW50b19hcnJheSh1aW50MzJfdCB2YWxbXSwKICAgICBpZiAo ICFwc3JfY2hlY2tfY2JtKGZlYXQtPmNibV9sZW4sIG5ld192YWwpICkKICAgICAgICAgcmV0dXJu IC1FSU5WQUw7CiAKLSAgICAvKiBWYWx1ZSBzZXR0aW5nIHBvc2l0aW9uIGlzIHNhbWUgYXMgZmVh dHVyZSBhcnJheS4gKi8KKyAgICAvKgorICAgICAqIFZhbHVlIHNldHRpbmcgcG9zaXRpb24gaXMg c2FtZSBhcyBmZWF0dXJlIGFycmF5LgorICAgICAqIEZvciBDRFAsIHVzZXIgbWF5IHNldCBib3Ro IERBVEEgYW5kIENPREUgdG8gc2FtZSB2YWx1ZS4gRm9yIHN1Y2ggY2FzZSwKKyAgICAgKiB1c2Vy IGlucHV0ICdQU1JfQ0JNX1RZUEVfTDMnIGFzIHR5cGUuIFRoZSBhbHRlcm5hdGl2ZSB0eXBlIG9m IENEUCBpcyBzYW1lCisgICAgICogYXMgaXQuIFNvIHdlIHNob3VsZCBzZXQgbmV3X3ZhbCB0byBi b3RoIG9mIERBVEEgYW5kIENPREUgdW5kZXIgc3VjaCBjYXNlLgorICAgICAqLwogICAgIGZvciAo IGkgPSAwOyBpIDwgcHJvcHMtPmNvc19udW07IGkrKyApCiAgICAgewogICAgICAgICBpZiAoIHR5 cGUgPT0gcHJvcHMtPnR5cGVbaV0gKQogICAgICAgICB7CiAgICAgICAgICAgICB2YWxbaV0gPSBu ZXdfdmFsOwotICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgICAgICByZXQgPSAwOworICAg ICAgICAgICAgYnJlYWs7CiAgICAgICAgIH0KKyAgICAgICAgZWxzZSBpZiAoIHR5cGUgPT0gcHJv cHMtPmFsdF90eXBlICkKKyAgICAgICAgICAgIHZhbFtpXSA9IG5ld192YWw7CisgICAgICAgIGVs c2UKKyAgICAgICAgICAgIHJldCA9IC1FSU5WQUw7CiAgICAgfQogCi0gICAgcmV0dXJuIC1FSU5W QUw7CisgICAgcmV0dXJuIHJldDsKIH0KIAogc3RhdGljIGludCBjb21wYXJlX3ZhbChjb25zdCB1 aW50MzJfdCB2YWxbXSwKLS0gCjEuOS4xCgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX18KWGVuLWRldmVsIG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMu eGVuLm9yZwpodHRwczovL2xpc3RzLnhlbi5vcmcveGVuLWRldmVsCg==