From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andrew Cooper Subject: [PATCH v6.5 15/26] x86/feature: Definitions for Indirect Branch Controls Date: Thu, 4 Jan 2018 00:15:44 +0000 Message-ID: <1515024955-13390-16-git-send-email-andrew.cooper3@citrix.com> References: <1515024955-13390-1-git-send-email-andrew.cooper3@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1515024955-13390-1-git-send-email-andrew.cooper3@citrix.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" To: Xen-devel Cc: Andrew Cooper List-Id: xen-devel@lists.xenproject.org Q29udGVtcG9yYXJ5IHByb2Nlc3NvcnMgYXJlIGdhaW5pbmcgSW5kaXJlY3QgQnJhbmNoIENvbnRy b2xzIHZpYSBtaWNyb2NvZGUKdXBkYXRlcy4gIEludGVsIGFyZSBpbnRyb2R1Y2luZyBvbmUgYml0 IHRvIGluZGljYXRlIElCUlMgYW5kIElCUEIgc3VwcG9ydCwgYW5kCmEgc2Vjb25kIGJpdCBmb3Ig U1RJQlAuICBBTUQgYXJlIGludHJvZHVjaW5nIElQQlAgb25seSwgc28gZW51bWVyYXRlIGl0IHdp dGggYQpzZXBhcmF0ZSBiaXQuCgpGdXJ0aGVybW9yZSwgZGVwZW5kaW5nIG9uIGNvbXBpbGVyIGFu ZCBtaWNyb2NvZGUgYXZhaWxhYmlsaXR5LCB3ZSBtYXkgd2FudCB0bwpydW4gWGVuIHdpdGggSUJS UyBzZXQsIG9yIGNsZWFyLgoKVG8gdXNlIHRoZXNlIGZhY2lsaXRpZXMsIHdlIHN5bnRoZXNpc2Ug c2VwYXJhdGUgSUJSUyBhbmQgSUJQQiBiaXRzIGZvcgppbnRlcm5hbCB1c2UuICBBIGxvdCBvZiBp bmZyYXN0cnVjdHVyZSBpcyByZXF1aXJlZCBiZWZvcmUgdGhlc2UgZmVhdHVyZXMgYXJlCnNhZmUg dG8gb2ZmZXIgdG8gZ3Vlc3RzLgoKU2lnbmVkLW9mZi1ieTogQW5kcmV3IENvb3BlciA8YW5kcmV3 LmNvb3BlcjNAY2l0cml4LmNvbT4KLS0tCnY0OgogKiBVcGRhdGUgZm9yIEFNRCwgZHJvcCBhY2tz L3Jldmlld3MuCi0tLQogdG9vbHMvbGlieGwvbGlieGxfY3B1aWQuYyAgICAgICAgICAgICAgICAg ICB8ICAzICsrKwogdG9vbHMvbWlzYy94ZW4tY3B1aWQuYyAgICAgICAgICAgICAgICAgICAgICB8 IDEyICsrKysrKysrKystLQogeGVuL2FyY2gveDg2L3NwZWNfY3RybC5jICAgICAgICAgICAgICAg ICAgICB8IDE3ICsrKysrKysrKysrKysrKysrCiB4ZW4vaW5jbHVkZS9hc20teDg2L2NwdWZlYXR1 cmVzLmggICAgICAgICAgIHwgIDMgKysrCiB4ZW4vaW5jbHVkZS9hc20teDg2L21zci1pbmRleC5o ICAgICAgICAgICAgIHwgMTEgKysrKysrKysrKysKIHhlbi9pbmNsdWRlL3B1YmxpYy9hcmNoLXg4 Ni9jcHVmZWF0dXJlc2V0LmggfCAgMyArKysKIHhlbi90b29scy9nZW4tY3B1aWQucHkgICAgICAg ICAgICAgICAgICAgICAgfCAgNSArKysrKwogNyBmaWxlcyBjaGFuZ2VkLCA1MiBpbnNlcnRpb25z KCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3Rvb2xzL2xpYnhsL2xpYnhsX2NwdWlk LmMgYi90b29scy9saWJ4bC9saWJ4bF9jcHVpZC5jCmluZGV4IGU2OTJiNjEuLjgxYmE5NjEgMTAw NjQ0Ci0tLSBhL3Rvb2xzL2xpYnhsL2xpYnhsX2NwdWlkLmMKKysrIGIvdG9vbHMvbGlieGwvbGli eGxfY3B1aWQuYwpAQCAtMjAyLDYgKzIwMiw4IEBAIGludCBsaWJ4bF9jcHVpZF9wYXJzZV9jb25m aWcobGlieGxfY3B1aWRfcG9saWN5X2xpc3QgKmNwdWlkLCBjb25zdCBjaGFyKiBzdHIpCiAKICAg ICAgICAgeyJhdng1MTItNHZubml3IiwweDAwMDAwMDA3LCAgMCwgQ1BVSURfUkVHX0VEWCwgIDIs ICAxfSwKICAgICAgICAgeyJhdng1MTItNGZtYXBzIiwweDAwMDAwMDA3LCAgMCwgQ1BVSURfUkVH X0VEWCwgIDMsICAxfSwKKyAgICAgICAgeyJpYnJzYiIsICAgICAgICAweDAwMDAwMDA3LCAgMCwg Q1BVSURfUkVHX0VEWCwgMjYsICAxfSwKKyAgICAgICAgeyJzdGlicCIsICAgICAgICAweDAwMDAw MDA3LCAgMCwgQ1BVSURfUkVHX0VEWCwgMjcsICAxfSwKIAogICAgICAgICB7ImxhaGZzYWhmIiwg ICAgIDB4ODAwMDAwMDEsIE5BLCBDUFVJRF9SRUdfRUNYLCAgMCwgIDF9LAogICAgICAgICB7ImNt cGxlZ2FjeSIsICAgIDB4ODAwMDAwMDEsIE5BLCBDUFVJRF9SRUdfRUNYLCAgMSwgIDF9LApAQCAt MjM5LDYgKzI0MSw3IEBAIGludCBsaWJ4bF9jcHVpZF9wYXJzZV9jb25maWcobGlieGxfY3B1aWRf cG9saWN5X2xpc3QgKmNwdWlkLCBjb25zdCBjaGFyKiBzdHIpCiAKICAgICAgICAgeyJpbnZ0c2Mi LCAgICAgICAweDgwMDAwMDA3LCBOQSwgQ1BVSURfUkVHX0VEWCwgIDgsICAxfSwKIAorICAgICAg ICB7ImlicGIiLCAgICAgICAgIDB4ODAwMDAwMDgsIE5BLCBDUFVJRF9SRUdfRUJYLCAxMiwgIDF9 LAogICAgICAgICB7Im5jIiwgICAgICAgICAgIDB4ODAwMDAwMDgsIE5BLCBDUFVJRF9SRUdfRUNY LCAgMCwgIDh9LAogICAgICAgICB7ImFwaWNpZHNpemUiLCAgIDB4ODAwMDAwMDgsIE5BLCBDUFVJ RF9SRUdfRUNYLCAxMiwgIDR9LAogCmRpZmYgLS1naXQgYS90b29scy9taXNjL3hlbi1jcHVpZC5j IGIvdG9vbHMvbWlzYy94ZW4tY3B1aWQuYwppbmRleCAwODMxZjc1Li44YzNkYWMwIDEwMDY0NAot LS0gYS90b29scy9taXNjL3hlbi1jcHVpZC5jCisrKyBiL3Rvb2xzL21pc2MveGVuLWNwdWlkLmMK QEAgLTE0OSw3ICsxNDksMTEgQEAgc3RhdGljIGNvbnN0IGNoYXIgKnN0cl9lOGJbMzJdID0KIHsK ICAgICBbIDBdID0gImNsemVybyIsCiAKLSAgICBbMSAuLi4gMzFdID0gIlJFWiIsCisgICAgWzEg Li4uIDExXSA9ICJSRVoiLAorCisgICAgWzEyXSA9ICJpYnBiIiwKKworICAgIFsxMyAuLi4gMzFd ID0gIlJFWiIsCiB9OwogCiBzdGF0aWMgY29uc3QgY2hhciAqc3RyXzdkMFszMl0gPQpAQCAtMTU4 LDcgKzE2MiwxMSBAQCBzdGF0aWMgY29uc3QgY2hhciAqc3RyXzdkMFszMl0gPQogCiAgICAgWyAy XSA9ICJhdng1MTJfNHZubml3IiwgWyAzXSA9ICJhdng1MTJfNGZtYXBzIiwKIAotICAgIFs0IC4u LiAzMV0gPSAiUkVaIiwKKyAgICBbNCAuLi4gMjVdID0gIlJFWiIsCisKKyAgICBbMjZdID0gImli cnNiIiwgICAgICAgICBbMjddID0gInN0aWJwIiwKKworICAgIFsyOCAuLi4gMzFdID0gIlJFWiIs CiB9OwogCiBzdGF0aWMgc3RydWN0IHsKZGlmZiAtLWdpdCBhL3hlbi9hcmNoL3g4Ni9zcGVjX2N0 cmwuYyBiL3hlbi9hcmNoL3g4Ni9zcGVjX2N0cmwuYwppbmRleCA4MzAxNjQ4Li5kOWFjZTJkIDEw MDY0NAotLS0gYS94ZW4vYXJjaC94ODYvc3BlY19jdHJsLmMKKysrIGIveGVuL2FyY2gveDg2L3Nw ZWNfY3RybC5jCkBAIC02Nyw4ICs2NywyNSBAQCBjdXN0b21fcGFyYW0oImJ0aSIsIHBhcnNlX2J0 aSk7CiAKIHN0YXRpYyB2b2lkIF9faW5pdCBwcmludF9kZXRhaWxzKGVudW0gaW5kX3RodW5rIHRo dW5rKQogeworICAgIHVuc2lnbmVkIGludCBfN2QwID0gMCwgZThiID0gMCwgdG1wOworCisgICAg LyogQ29sbGVjdCBkaWFnbm9zdGljcyBhYm91dCBhdmFpbGFibGUgbWl0aWdhdGlvbnMuICovCisg ICAgaWYgKCBib290X2NwdV9kYXRhLmNwdWlkX2xldmVsID49IDcgKQorICAgICAgICBjcHVpZF9j b3VudCg3LCAwLCAmdG1wLCAmdG1wLCAmdG1wLCAmXzdkMCk7CisgICAgaWYgKCBib290X2NwdV9k YXRhLmV4dGVuZGVkX2NwdWlkX2xldmVsID49IDB4ODAwMDAwMDggKQorICAgICAgICBjcHVpZCgw eDgwMDAwMDA4LCAmdG1wLCAmZThiLCAmdG1wLCAmdG1wKTsKKwogICAgIHByaW50ayhYRU5MT0df REVCVUcgIlNwZWN1bGF0aXZlIG1pdGlnYXRpb24gZmFjaWxpdGllczpcbiIpOwogCisgICAgLyog SGFyZHdhcmUgZmVhdHVyZXMgd2hpY2ggcGVydGFpbiB0byBzcGVjdWxhdGl2ZSBtaXRpZ2F0aW9u cy4gKi8KKyAgICBpZiAoIChfN2QwICYgKGNwdWZlYXRfbWFzayhYODZfRkVBVFVSRV9JQlJTQikg fAorICAgICAgICAgICAgICAgICAgY3B1ZmVhdF9tYXNrKFg4Nl9GRUFUVVJFX1NUSUJQKSkpIHx8 CisgICAgICAgICAoZThiICYgY3B1ZmVhdF9tYXNrKFg4Nl9GRUFUVVJFX0lCUEIpKSApCisgICAg ICAgIHByaW50ayhYRU5MT0dfREVCVUcgIiAgSGFyZHdhcmUgZmVhdHVyZXM6JXMlcyVzXG4iLAor ICAgICAgICAgICAgICAgKF83ZDAgJiBjcHVmZWF0X21hc2soWDg2X0ZFQVRVUkVfSUJSU0IpKSA/ ICIgSUJSUy9JQlBCIiA6ICIiLAorICAgICAgICAgICAgICAgKF83ZDAgJiBjcHVmZWF0X21hc2so WDg2X0ZFQVRVUkVfU1RJQlApKSA/ICIgU1RJQlAiICAgICA6ICIiLAorICAgICAgICAgICAgICAg KGU4YiAgJiBjcHVmZWF0X21hc2soWDg2X0ZFQVRVUkVfSUJQQikpICA/ICIgSUJQQiIgICAgICA6 ICIiKTsKKwogICAgIC8qIENvbXBpbGVkLWluIHN1cHBvcnQgd2hpY2ggcGVydGFpbnMgdG8gQlRJ IG1pdGlnYXRpb25zLiAqLwogICAgIGlmICggSVNfRU5BQkxFRChDT05GSUdfSU5ESVJFQ1RfVEhV TkspICkKICAgICAgICAgcHJpbnRrKFhFTkxPR19ERUJVRyAiICBDb21waWxlZC1pbiBzdXBwb3J0 OiBJTkRJUkVDVF9USFVOS1xuIik7CmRpZmYgLS1naXQgYS94ZW4vaW5jbHVkZS9hc20teDg2L2Nw dWZlYXR1cmVzLmggYi94ZW4vaW5jbHVkZS9hc20teDg2L2NwdWZlYXR1cmVzLmgKaW5kZXggYmEx NzcxYi4uZGQyMzg4ZiAxMDA2NDQKLS0tIGEveGVuL2luY2x1ZGUvYXNtLXg4Ni9jcHVmZWF0dXJl cy5oCisrKyBiL3hlbi9pbmNsdWRlL2FzbS14ODYvY3B1ZmVhdHVyZXMuaApAQCAtMjUsMyArMjUs NiBAQCBYRU5fQ1BVRkVBVFVSRShYRU5fU01BUCwgICAgICAgIChGU0NBUElOVFMrMCkqMzIrMTEp IC8qIFNNQVAgZ2V0cyB1c2VkIGJ5IFhlbiBpdAogWEVOX0NQVUZFQVRVUkUoTEZFTkNFX0RJU1BB VENILCAoRlNDQVBJTlRTKzApKjMyKzEyKSAvKiBsZmVuY2Ugc2V0IGFzIERpc3BhdGNoIFNlcmlh bGlzaW5nICovCiBYRU5fQ1BVRkVBVFVSRShJTkRfVEhVTktfTEZFTkNFLChGU0NBUElOVFMrMCkq MzIrMTMpIC8qIFVzZSBJTkRfVEhVTktfTEZFTkNFICovCiBYRU5fQ1BVRkVBVFVSRShJTkRfVEhV TktfSk1QLCAgIChGU0NBUElOVFMrMCkqMzIrMTQpIC8qIFVzZSBJTkRfVEhVTktfSk1QICovCitY RU5fQ1BVRkVBVFVSRShYRU5fSUJQQiwgICAgICAgIChGU0NBUElOVFMrMCkqMzIrMTUpIC8qIElC UlNCIHx8IElCUEIgKi8KK1hFTl9DUFVGRUFUVVJFKFhFTl9JQlJTX1NFVCwgICAgKEZTQ0FQSU5U UyswKSozMisxNikgLyogSUJSU0IgJiYgSVJCUyBzZXQgaW4gWGVuICovCitYRU5fQ1BVRkVBVFVS RShYRU5fSUJSU19DTEVBUiwgIChGU0NBUElOVFMrMCkqMzIrMTcpIC8qIElCUlNCICYmIElCUlMg Y2xlYXIgaW4gWGVuICovCmRpZmYgLS1naXQgYS94ZW4vaW5jbHVkZS9hc20teDg2L21zci1pbmRl eC5oIGIveGVuL2luY2x1ZGUvYXNtLXg4Ni9tc3ItaW5kZXguaAppbmRleCA1NmY1MzU5Li4zYTcz MDEzIDEwMDY0NAotLS0gYS94ZW4vaW5jbHVkZS9hc20teDg2L21zci1pbmRleC5oCisrKyBiL3hl bi9pbmNsdWRlL2FzbS14ODYvbXNyLWluZGV4LmgKQEAgLTMxLDYgKzMxLDE3IEBACiAjZGVmaW5l IEVGRVJfTE1TTEUJCSgxPDxfRUZFUl9MTVNMRSkKICNkZWZpbmUgRUZFUl9GRlhTRQkJKDE8PF9F RkVSX0ZGWFNFKQogCisvKiBTcGVjdWxhdGlvbiBDb250cm9scy4gKi8KKyNkZWZpbmUgTVNSX1NQ RUNfQ1RSTAkJCTB4MDAwMDAwNDgKKyNkZWZpbmUgX1NQRUNfQ1RSTF9JQlJTCQkJMAorI2RlZmlu ZSBTUEVDX0NUUkxfSUJSUwkJCShfQUMoMSwgVUxMKSA8PCBfU1BFQ19DVFJMX0lCUlMpCisjZGVm aW5lIF9TUEVDX0NUUkxfU1RJQlAJCTEKKyNkZWZpbmUgU1BFQ19DVFJMX1NUSUJQCQkJKF9BQygx LCBVTEwpIDw8IF9TUEVDX0NUUkxfU1RJQlApCisKKyNkZWZpbmUgTVNSX1BSRURfQ01ECQkJMHgw MDAwMDA0OQorI2RlZmluZSBfUFJFRF9DTURfSUJQQgkJCTAKKyNkZWZpbmUgUFJFRF9DTURfSUJQ QgkJCShfQUMoMSwgVUxMKSA8PCBfUFJFRF9DTURfSUJQQikKKwogLyogSW50ZWwgTVNScy4gU29t ZSBhbHNvIGF2YWlsYWJsZSBvbiBvdGhlciBDUFVzICovCiAjZGVmaW5lIE1TUl9JQTMyX1BFUkZD VFIwCQkweDAwMDAwMGMxCiAjZGVmaW5lIE1TUl9JQTMyX0FfUEVSRkNUUjAJCTB4MDAwMDA0YzEK ZGlmZiAtLWdpdCBhL3hlbi9pbmNsdWRlL3B1YmxpYy9hcmNoLXg4Ni9jcHVmZWF0dXJlc2V0Lmgg Yi94ZW4vaW5jbHVkZS9wdWJsaWMvYXJjaC14ODYvY3B1ZmVhdHVyZXNldC5oCmluZGV4IGJlNmRh OGUuLmUxNDg3NTUgMTAwNjQ0Ci0tLSBhL3hlbi9pbmNsdWRlL3B1YmxpYy9hcmNoLXg4Ni9jcHVm ZWF0dXJlc2V0LmgKKysrIGIveGVuL2luY2x1ZGUvcHVibGljL2FyY2gteDg2L2NwdWZlYXR1cmVz ZXQuaApAQCAtMjM3LDEwICsyMzcsMTMgQEAgWEVOX0NQVUZFQVRVUkUoRUZSTywgICAgICAgICAg NyozMisxMCkgLyogICBBUEVSRi9NUEVSRiBSZWFkIE9ubHkgaW50ZXJmYWNlICovCiAKIC8qIEFN RC1kZWZpbmVkIENQVSBmZWF0dXJlcywgQ1BVSUQgbGV2ZWwgMHg4MDAwMDAwOC5lYngsIHdvcmQg OCAqLwogWEVOX0NQVUZFQVRVUkUoQ0xaRVJPLCAgICAgICAgOCozMisgMCkgLypBICBDTFpFUk8g aW5zdHJ1Y3Rpb24gKi8KK1hFTl9DUFVGRUFUVVJFKElCUEIsICAgICAgICAgIDgqMzIrMTIpIC8q ICAgSUJQQiBzdXBwb3J0IG9ubHkgKG5vIElCUlMsIHVzZWQgYnkgQU1EKSAqLwogCiAvKiBJbnRl bC1kZWZpbmVkIENQVSBmZWF0dXJlcywgQ1BVSUQgbGV2ZWwgMHgwMDAwMDAwNzowLmVkeCwgd29y ZCA5ICovCiBYRU5fQ1BVRkVBVFVSRShBVlg1MTJfNFZOTklXLCA5KjMyKyAyKSAvKkEgIEFWWDUx MiBOZXVyYWwgTmV0d29yayBJbnN0cnVjdGlvbnMgKi8KIFhFTl9DUFVGRUFUVVJFKEFWWDUxMl80 Rk1BUFMsIDkqMzIrIDMpIC8qQSAgQVZYNTEyIE11bHRpcGx5IEFjY3VtdWxhdGlvbiBTaW5nbGUg UHJlY2lzaW9uICovCitYRU5fQ1BVRkVBVFVSRShJQlJTQiwgICAgICAgICA5KjMyKzI2KSAvKiAg IElCUlMgYW5kIElCUEIgc3VwcG9ydCAodXNlZCBieSBJbnRlbCkgKi8KK1hFTl9DUFVGRUFUVVJF KFNUSUJQLCAgICAgICAgIDkqMzIrMjcpIC8qICAgU1RJQlAgKi8KIAogI2VuZGlmIC8qIFhFTl9D UFVGRUFUVVJFICovCiAKZGlmZiAtLWdpdCBhL3hlbi90b29scy9nZW4tY3B1aWQucHkgYi94ZW4v dG9vbHMvZ2VuLWNwdWlkLnB5CmluZGV4IDllYzQ0ODYuLjYxM2I5MDkgMTAwNzU1Ci0tLSBhL3hl bi90b29scy9nZW4tY3B1aWQucHkKKysrIGIveGVuL3Rvb2xzL2dlbi1jcHVpZC5weQpAQCAtMjU2 LDYgKzI1NiwxMSBAQCBkZWYgY3J1bmNoX251bWJlcnMoc3RhdGUpOgogICAgICAgICBBVlg1MTJG OiBbQVZYNTEyRFEsIEFWWDUxMklGTUEsIEFWWDUxMlBGLCBBVlg1MTJFUiwgQVZYNTEyQ0QsCiAg ICAgICAgICAgICAgICAgICBBVlg1MTJCVywgQVZYNTEyVkwsIEFWWDUxMlZCTUksIEFWWDUxMl80 Vk5OSVcsCiAgICAgICAgICAgICAgICAgICBBVlg1MTJfNEZNQVBTLCBBVlg1MTJfVlBPUENOVERR XSwKKworICAgICAgICAjIFNpbmdsZSBUaHJlYWQgSW5kaXJlY3QgQnJhbmNoIFByZWRpY3RvcnMg ZW51bWVyYXRlcyBhIG5ldyBiaXQgaW4gdGhlCisgICAgICAgICMgTVNSIGVudW1lcmF0ZWQgYnkg SW5kaXJlY3QgQnJhbmNoIFJlc3RyaWN0ZWQgU3BlY3VsYXRpb24vSW5kaXJlY3QKKyAgICAgICAg IyBCcmFuY2ggUHJlZGljdGlvbiBCYXJyaWVyIGVudW1lcmF0aW9uLgorICAgICAgICBJQlJTQjog W1NUSUJQXSwKICAgICB9CiAKICAgICBkZWVwX2ZlYXR1cmVzID0gdHVwbGUoc29ydGVkKGRlcHMu a2V5cygpKSkKLS0gCjIuMS40CgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX18KWGVuLWRldmVsIG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVucHJv amVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL3hl bi1kZXZlbA==