From mboxrd@z Thu Jan 1 00:00:00 1970 From: Luwei Kang Subject: [PATCH 3/6] x86: add intel proecessor trace support for cpuid Date: Sun, 22 Oct 2017 04:02:24 +0800 Message-ID: <1508616147-17310-4-git-send-email-luwei.kang@intel.com> References: <1508616147-17310-1-git-send-email-luwei.kang@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1508616147-17310-1-git-send-email-luwei.kang@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.xen.org Cc: kevin.tian@intel.com, sstabellini@kernel.org, wei.liu2@citrix.com, jun.nakajima@intel.com, konrad.wilk@oracle.com, George.Dunlap@eu.citrix.com, andrew.cooper3@citrix.com, ian.jackson@eu.citrix.com, tim@xen.org, jbeulich@suse.com, Luwei Kang List-Id: xen-devel@lists.xenproject.org VGhpcyBwYXRjaCBhZGQgSW50ZWwgcHJvY2Vzc29yIHRyYWNlIHN1cHBvcnQKZm9yIGNwdWlkIGhh bmRsaW5nLgoKU2lnbmVkLW9mZi1ieTogTHV3ZWkgS2FuZyA8bHV3ZWkua2FuZ0BpbnRlbC5jb20+ Ci0tLQogdG9vbHMvbGlieGMveGNfY3B1aWRfeDg2LmMgICAgICAgICAgICAgICAgICB8IDEyICsr KysrKysrKystLQogeGVuL2FyY2gveDg2L2NwdWlkLmMgICAgICAgICAgICAgICAgICAgICAgICB8 IDIyICsrKysrKysrKysrKysrKysrKysrKysKIHhlbi9hcmNoL3g4Ni9kb21jdGwuYyAgICAgICAg ICAgICAgICAgICAgICAgfCAgNCArKysrCiB4ZW4vaW5jbHVkZS9hc20teDg2L2NwdWZlYXR1cmUu aCAgICAgICAgICAgIHwgIDEgKwogeGVuL2luY2x1ZGUvYXNtLXg4Ni9jcHVpZC5oICAgICAgICAg ICAgICAgICB8IDEyICsrKysrKysrKysrLQogeGVuL2luY2x1ZGUvcHVibGljL2FyY2gteDg2L2Nw dWZlYXR1cmVzZXQuaCB8ICAxICsKIDYgZmlsZXMgY2hhbmdlZCwgNDkgaW5zZXJ0aW9ucygrKSwg MyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS90b29scy9saWJ4Yy94Y19jcHVpZF94ODYuYyBi L3Rvb2xzL2xpYnhjL3hjX2NwdWlkX3g4Ni5jCmluZGV4IGQ4OTA5MzUuLjBlMDU3NWMgMTAwNjQ0 Ci0tLSBhL3Rvb2xzL2xpYnhjL3hjX2NwdWlkX3g4Ni5jCisrKyBiL3Rvb2xzL2xpYnhjL3hjX2Nw dWlkX3g4Ni5jCkBAIC0zOCw3ICszOCw3IEBAIGVudW0gewogI2RlZmluZSBjbGVhcl9mZWF0dXJl KGlkeCwgZHN0KSAoKGRzdCkgJj0gfmJpdG1hc2tvZihpZHgpKQogI2RlZmluZSBzZXRfZmVhdHVy ZShpZHgsIGRzdCkgICAoKGRzdCkgfD0gIGJpdG1hc2tvZihpZHgpKQogCi0jZGVmaW5lIERFRl9N QVhfQkFTRSAweDAwMDAwMDBkdQorI2RlZmluZSBERUZfTUFYX0JBU0UgMHgwMDAwMDAxNHUKICNk ZWZpbmUgREVGX01BWF9JTlRFTEVYVCAgMHg4MDAwMDAwOHUKICNkZWZpbmUgREVGX01BWF9BTURF WFQgICAgMHg4MDAwMDAxY3UKIApAQCAtNDcxLDYgKzQ3MSw3IEBAIHN0YXRpYyB2b2lkIHhjX2Nw dWlkX2h2bV9wb2xpY3koeGNfaW50ZXJmYWNlICp4Y2gsCiAgICAgY2FzZSAweDAwMDAwMDAyOiAv KiBJbnRlbCBjYWNoZSBpbmZvIChkdW1wZWQgYnkgQU1EIHBvbGljeSkgKi8KICAgICBjYXNlIDB4 MDAwMDAwMDQ6IC8qIEludGVsIGNhY2hlIGluZm8gKGR1bXBlZCBieSBBTUQgcG9saWN5KSAqLwog ICAgIGNhc2UgMHgwMDAwMDAwYTogLyogQXJjaGl0ZWN0dXJhbCBQZXJmb3JtYW5jZSBNb25pdG9y IEZlYXR1cmVzICovCisgICAgY2FzZSAweDAwMDAwMDE0OiAvKiBJbnRlbCBQcm9jZXNzb3IgVHJh Y2UgRmVhdHVyZXMgKi8KICAgICBjYXNlIDB4ODAwMDAwMDI6IC8qIFByb2Nlc3NvciBuYW1lIHN0 cmluZyAqLwogICAgIGNhc2UgMHg4MDAwMDAwMzogLyogLi4uIGNvbnRpbnVlZCAgICAgICAgICov CiAgICAgY2FzZSAweDgwMDAwMDA0OiAvKiAuLi4gY29udGludWVkICAgICAgICAgKi8KQEAgLTc1 NywxMiArNzU4LDE5IEBAIGludCB4Y19jcHVpZF9hcHBseV9wb2xpY3koeGNfaW50ZXJmYWNlICp4 Y2gsIGRvbWlkX3QgZG9taWQsCiAgICAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgIH0K IAorICAgICAgICBpZiAoIGlucHV0WzBdID09IDB4MTQgKQorICAgICAgICB7CisgICAgICAgICAg ICBpbnB1dFsxXSsrOworICAgICAgICAgICAgaWYgKCBpbnB1dFsxXSA9PSAxICkKKyAgICAgICAg ICAgICAgICBjb250aW51ZTsKKyAgICAgICAgfQorCiAgICAgICAgIGlucHV0WzBdKys7CiAgICAg ICAgIGlmICggIShpbnB1dFswXSAmIDB4ODAwMDAwMDB1KSAmJiAoaW5wdXRbMF0gPiBiYXNlX21h eCApICkKICAgICAgICAgICAgIGlucHV0WzBdID0gMHg4MDAwMDAwMHU7CiAKICAgICAgICAgaW5w dXRbMV0gPSBYRU5fQ1BVSURfSU5QVVRfVU5VU0VEOwotICAgICAgICBpZiAoIChpbnB1dFswXSA9 PSA0KSB8fCAoaW5wdXRbMF0gPT0gNykgKQorICAgICAgICBpZiAoIChpbnB1dFswXSA9PSA0KSB8 fCAoaW5wdXRbMF0gPT0gNykgfHwgKGlucHV0WzBdID09IDB4MTQpICkKICAgICAgICAgICAgIGlu cHV0WzFdID0gMDsKICAgICAgICAgZWxzZSBpZiAoIGlucHV0WzBdID09IDB4ZCApCiAgICAgICAg ICAgICBpbnB1dFsxXSA9IDE7IC8qIFhlbiBhdXRvbWF0aWNhbGx5IGNhbGN1bGF0ZXMgYWxtb3N0 IGV2ZXJ5dGhpbmcuICovCmRpZmYgLS1naXQgYS94ZW4vYXJjaC94ODYvY3B1aWQuYyBiL3hlbi9h cmNoL3g4Ni9jcHVpZC5jCmluZGV4IDVlZTgyZDMuLmMzZDU2ZmQgMTAwNjQ0Ci0tLSBhL3hlbi9h cmNoL3g4Ni9jcHVpZC5jCisrKyBiL3hlbi9hcmNoL3g4Ni9jcHVpZC5jCkBAIC05LDYgKzksNyBA QAogI2luY2x1ZGUgPGFzbS9wYWdpbmcuaD4KICNpbmNsdWRlIDxhc20vcHJvY2Vzc29yLmg+CiAj aW5jbHVkZSA8YXNtL3hzdGF0ZS5oPgorI2luY2x1ZGUgPGFzbS9pbnRlbF9wdC5oPgogCiBjb25z dCB1aW50MzJfdCBrbm93bl9mZWF0dXJlc1tdID0gSU5JVF9LTk9XTl9GRUFUVVJFUzsKIGNvbnN0 IHVpbnQzMl90IHNwZWNpYWxfZmVhdHVyZXNbXSA9IElOSVRfU1BFQ0lBTF9GRUFUVVJFUzsKQEAg LTQ4Nyw3ICs0ODgsMTkgQEAgdm9pZCByZWNhbGN1bGF0ZV9jcHVpZF9wb2xpY3koc3RydWN0IGRv bWFpbiAqZCkKICAgICAgICAgICAgIF9fY2xlYXJfYml0KFg4Nl9GRUFUVVJFX1ZNWCwgbWF4X2Zz KTsKICAgICAgICAgICAgIF9fY2xlYXJfYml0KFg4Nl9GRUFUVVJFX1NWTSwgbWF4X2ZzKTsKICAg ICAgICAgfQorCisgICAgICAgIC8qCisgICAgICAgICAqIEhpZGUgSW50ZWwgUHJvY2Vzc29yIHRy YWNlIGZlYXR1cmUgd2hlbiBoYXJkd2FyZSBub3Qgc3VwcG9ydAorICAgICAgICAgKiBQVC1WTVgg b3IgaW50ZWxfcHQgb3B0aW9uIGlzIGRpc2FibGVkLgorICAgICAgICAgKi8KKyAgICAgICAgaWYg KCAhb3B0X2ludGVsX3B0ICkKKyAgICAgICAgeworICAgICAgICAgICAgX19jbGVhcl9iaXQoWDg2 X0ZFQVRVUkVfSU5URUxfUFQsIG1heF9mcyk7CisgICAgICAgICAgICB6ZXJvX2xlYXZlcyhwLT5p bnRlbF9wdC5yYXcsIDAsIEFSUkFZX1NJWkUocC0+aW50ZWxfcHQucmF3KSAtIDEpOworICAgICAg ICB9CiAgICAgfQorICAgIGVsc2UKKyAgICAgICAgemVyb19sZWF2ZXMocC0+aW50ZWxfcHQucmF3 LCAwLCBBUlJBWV9TSVpFKHAtPmludGVsX3B0LnJhdykgLSAxKTsKIAogICAgIC8qCiAgICAgICog QWxsb3cgdGhlIHRvb2xzdGFjayB0byBzZXQgSFRULCBYMkFQSUMgYW5kIENNUF9MRUdBQ1kuICBU aGVzZSBiaXRzCkBAIC02MzQsNiArNjQ3LDE1IEBAIHZvaWQgZ3Vlc3RfY3B1aWQoY29uc3Qgc3Ry dWN0IHZjcHUgKnYsIHVpbnQzMl90IGxlYWYsCiAgICAgICAgICAgICAqcmVzID0gcC0+ZmVhdC5y YXdbc3VibGVhZl07CiAgICAgICAgICAgICBicmVhazsKIAorICAgICAgICBjYXNlIDB4MTQ6Cisg ICAgICAgICAgICBBU1NFUlQocC0+aW50ZWxfcHQubWF4X3N1YmxlYWYgPCBBUlJBWV9TSVpFKHAt PmludGVsX3B0LnJhdykpOworICAgICAgICAgICAgaWYgKCBzdWJsZWFmID4gbWluX3QodWludDMy X3QsIHAtPmludGVsX3B0Lm1heF9zdWJsZWFmLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgQVJSQVlfU0laRShwLT5pbnRlbF9wdC5yYXcpIC0gMSkgKQorICAgICAgICAgICAgICAg IHJldHVybjsKKworICAgICAgICAgICAgKnJlcyA9IHAtPmludGVsX3B0LnJhd1tzdWJsZWFmXTsK KyAgICAgICAgICAgIGJyZWFrOworCiAgICAgICAgIGNhc2UgWFNUQVRFX0NQVUlEOgogICAgICAg ICAgICAgaWYgKCAhcC0+YmFzaWMueHNhdmUgfHwgc3VibGVhZiA+PSBBUlJBWV9TSVpFKHAtPnhz dGF0ZS5yYXcpICkKICAgICAgICAgICAgICAgICByZXR1cm47CmRpZmYgLS1naXQgYS94ZW4vYXJj aC94ODYvZG9tY3RsLmMgYi94ZW4vYXJjaC94ODYvZG9tY3RsLmMKaW5kZXggMWIyMDhmOS4uNDA1 YjMxZSAxMDA2NDQKLS0tIGEveGVuL2FyY2gveDg2L2RvbWN0bC5jCisrKyBiL3hlbi9hcmNoL3g4 Ni9kb21jdGwuYwpAQCAtMTAwLDYgKzEwMCwxMCBAQCBzdGF0aWMgaW50IHVwZGF0ZV9kb21haW5f Y3B1aWRfaW5mbyhzdHJ1Y3QgZG9tYWluICpkLAogICAgICAgICAgICAgcC0+ZmVhdC5yYXdbY3Rs LT5pbnB1dFsxXV0gPSBsZWFmOwogICAgICAgICAgICAgYnJlYWs7CiAKKyAgICAgICAgY2FzZSAw eDE0OgorICAgICAgICAgICAgcC0+aW50ZWxfcHQucmF3W2N0bC0+aW5wdXRbMV1dID0gbGVhZjsK KyAgICAgICAgICAgIGJyZWFrOworCiAgICAgICAgIGNhc2UgWFNUQVRFX0NQVUlEOgogICAgICAg ICAgICAgcC0+eHN0YXRlLnJhd1tjdGwtPmlucHV0WzFdXSA9IGxlYWY7CiAgICAgICAgICAgICBi cmVhazsKZGlmZiAtLWdpdCBhL3hlbi9pbmNsdWRlL2FzbS14ODYvY3B1ZmVhdHVyZS5oIGIveGVu L2luY2x1ZGUvYXNtLXg4Ni9jcHVmZWF0dXJlLmgKaW5kZXggODRjYzUxZC4uODk1NjY2NyAxMDA2 NDQKLS0tIGEveGVuL2luY2x1ZGUvYXNtLXg4Ni9jcHVmZWF0dXJlLmgKKysrIGIveGVuL2luY2x1 ZGUvYXNtLXg4Ni9jcHVmZWF0dXJlLmgKQEAgLTk1LDYgKzk1LDcgQEAKICNkZWZpbmUgY3B1X2hh c19tcHggICAgICAgICAgICAgYm9vdF9jcHVfaGFzKFg4Nl9GRUFUVVJFX01QWCkKICNkZWZpbmUg Y3B1X2hhc19yZHNlZWQgICAgICAgICAgYm9vdF9jcHVfaGFzKFg4Nl9GRUFUVVJFX1JEU0VFRCkK ICNkZWZpbmUgY3B1X2hhc19zbWFwICAgICAgICAgICAgYm9vdF9jcHVfaGFzKFg4Nl9GRUFUVVJF X1NNQVApCisjZGVmaW5lIGNwdV9oYXNfaW50ZWxfcHQgICAgICAgIGJvb3RfY3B1X2hhcyhYODZf RkVBVFVSRV9JTlRFTF9QVCkKICNkZWZpbmUgY3B1X2hhc19zaGEgICAgICAgICAgICAgYm9vdF9j cHVfaGFzKFg4Nl9GRUFUVVJFX1NIQSkKIAogLyogQ1BVSUQgbGV2ZWwgMHg4MDAwMDAwNy5lZHgg Ki8KZGlmZiAtLWdpdCBhL3hlbi9pbmNsdWRlL2FzbS14ODYvY3B1aWQuaCBiL3hlbi9pbmNsdWRl L2FzbS14ODYvY3B1aWQuaAppbmRleCBkMmRkODQxLi4zOWYwNmFhIDEwMDY0NAotLS0gYS94ZW4v aW5jbHVkZS9hc20teDg2L2NwdWlkLmgKKysrIGIveGVuL2luY2x1ZGUvYXNtLXg4Ni9jcHVpZC5o CkBAIC02MSwxMCArNjEsMTEgQEAgZXh0ZXJuIHN0cnVjdCBjcHVpZG1hc2tzIGNwdWlkbWFza19k ZWZhdWx0czsKIC8qIFdoZXRoZXIgb3Igbm90IGNwdWlkIGZhdWx0aW5nIGlzIGF2YWlsYWJsZSBm b3IgdGhlIGN1cnJlbnQgZG9tYWluLiAqLwogREVDTEFSRV9QRVJfQ1BVKGJvb2wsIGNwdWlkX2Zh dWx0aW5nX2VuYWJsZWQpOwogCi0jZGVmaW5lIENQVUlEX0dVRVNUX05SX0JBU0lDICAgICAgKDB4 ZHUgKyAxKQorI2RlZmluZSBDUFVJRF9HVUVTVF9OUl9CQVNJQyAgICAgICgweDE0dSArIDEpCiAj ZGVmaW5lIENQVUlEX0dVRVNUX05SX0ZFQVQgICAgICAgKDB1ICsgMSkKICNkZWZpbmUgQ1BVSURf R1VFU1RfTlJfQ0FDSEUgICAgICAoNXUgKyAxKQogI2RlZmluZSBDUFVJRF9HVUVTVF9OUl9YU1RB VEUgICAgICg2MnUgKyAxKQorI2RlZmluZSBDUFVJRF9HVUVTVF9OUl9JTlRFTF9QVCAgICgxdSAr IDEpCiAjZGVmaW5lIENQVUlEX0dVRVNUX05SX0VYVERfSU5URUwgKDB4OHUgKyAxKQogI2RlZmlu ZSBDUFVJRF9HVUVTVF9OUl9FWFREX0FNRCAgICgweDFjdSArIDEpCiAjZGVmaW5lIENQVUlEX0dV RVNUX05SX0VYVEQgICAgICAgTUFYKENQVUlEX0dVRVNUX05SX0VYVERfSU5URUwsIFwKQEAgLTE2 OSw2ICsxNzAsMTUgQEAgc3RydWN0IGNwdWlkX3BvbGljeQogICAgICAgICB9IGNvbXBbQ1BVSURf R1VFU1RfTlJfWFNUQVRFXTsKICAgICB9IHhzdGF0ZTsKIAorICAgIC8qIFN0cnVjdHVyZWQgZmVh dHVyZSBsZWFmOiAweDAwMDAwMDE0W3h4XSAqLworICAgIHVuaW9uIHsKKyAgICAgICAgc3RydWN0 IGNwdWlkX2xlYWYgcmF3W0NQVUlEX0dVRVNUX05SX0lOVEVMX1BUXTsKKyAgICAgICAgc3RydWN0 IHsKKyAgICAgICAgICAgIC8qIFN1YmxlYWYgMC4gKi8KKyAgICAgICAgICAgIHVpbnQzMl90IG1h eF9zdWJsZWFmOworICAgICAgICB9OworICAgIH0gaW50ZWxfcHQ7CisKICAgICAvKiBFeHRlbmRl ZCBsZWF2ZXM6IDB4ODAwMDAweHggKi8KICAgICB1bmlvbiB7CiAgICAgICAgIHN0cnVjdCBjcHVp ZF9sZWFmIHJhd1tDUFVJRF9HVUVTVF9OUl9FWFREXTsKZGlmZiAtLWdpdCBhL3hlbi9pbmNsdWRl L3B1YmxpYy9hcmNoLXg4Ni9jcHVmZWF0dXJlc2V0LmggYi94ZW4vaW5jbHVkZS9wdWJsaWMvYXJj aC14ODYvY3B1ZmVhdHVyZXNldC5oCmluZGV4IDBlZTNlYTMuLmI1NjQ4ZjcgMTAwNjQ0Ci0tLSBh L3hlbi9pbmNsdWRlL3B1YmxpYy9hcmNoLXg4Ni9jcHVmZWF0dXJlc2V0LmgKKysrIGIveGVuL2lu Y2x1ZGUvcHVibGljL2FyY2gteDg2L2NwdWZlYXR1cmVzZXQuaApAQCAtMjE1LDYgKzIxNSw3IEBA IFhFTl9DUFVGRUFUVVJFKFNNQVAsICAgICAgICAgIDUqMzIrMjApIC8qUyAgU3VwZXJ2aXNvciBN b2RlIEFjY2VzcyBQcmV2ZW50aW9uICovCiBYRU5fQ1BVRkVBVFVSRShBVlg1MTJJRk1BLCAgICA1 KjMyKzIxKSAvKkEgIEFWWC01MTIgSW50ZWdlciBGdXNlZCBNdWx0aXBseSBBZGQgKi8KIFhFTl9D UFVGRUFUVVJFKENMRkxVU0hPUFQsICAgIDUqMzIrMjMpIC8qQSAgQ0xGTFVTSE9QVCBpbnN0cnVj dGlvbiAqLwogWEVOX0NQVUZFQVRVUkUoQ0xXQiwgICAgICAgICAgNSozMisyNCkgLypBICBDTFdC IGluc3RydWN0aW9uICovCitYRU5fQ1BVRkVBVFVSRShJTlRFTF9QVCwgICAgICA1KjMyKzI1KSAv KkggIEludGVsIFByb2Nlc3NvciBUcmFjZSAqLwogWEVOX0NQVUZFQVRVUkUoQVZYNTEyUEYsICAg ICAgNSozMisyNikgLypBICBBVlgtNTEyIFByZWZldGNoIEluc3RydWN0aW9ucyAqLwogWEVOX0NQ VUZFQVRVUkUoQVZYNTEyRVIsICAgICAgNSozMisyNykgLypBICBBVlgtNTEyIEV4cG9uZW50ICYg UmVjaXByb2NhbCBJbnN0cnMgKi8KIFhFTl9DUFVGRUFUVVJFKEFWWDUxMkNELCAgICAgIDUqMzIr MjgpIC8qQSAgQVZYLTUxMiBDb25mbGljdCBEZXRlY3Rpb24gSW5zdHJzICovCi0tIAoxLjguMy4x CgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KWGVuLWRl dmVsIG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVuLm9yZwpodHRwczovL2xpc3RzLnhl bi5vcmcveGVuLWRldmVsCg==