From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andrew Cooper Subject: [PATCH 20/27] x86/cpuid: Drop the temporary linear feature bitmap from struct cpuid_policy Date: Wed, 4 Jan 2017 12:39:37 +0000 Message-ID: <1483533584-8015-21-git-send-email-andrew.cooper3@citrix.com> References: <1483533584-8015-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: <1483533584-8015-1-git-send-email-andrew.cooper3@citrix.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: Xen-devel Cc: Andrew Cooper , Jan Beulich List-Id: xen-devel@lists.xenproject.org V2l0aCBtb3N0IHVzZXMgb2YgdGhlICpfZmVhdHVyZXNldCBBUEkgcmVtb3ZlZCwgdGhlIHJlbWFp bmluZyB1c2VzIGFyZSBvbmx5CmR1cmluZyBYRU5fU1lTQ1RMX2dldF9jcHVfZmVhdHVyZXNldCwg aW5pdF9ndWVzdF9jcHVpZCgpLCBhbmQKcmVjYWxjdWxhdGVfY3B1aWRfcG9saWN5KCksIG5vbmUg b2Ygd2hpY2ggYXJlIGhvdCBwYXRocy4KCkRyb3AgdGhlIHRlbXBvcmFyeSBpbmZyYXN0cnVjdHVy ZSwgYW5kIGhhdmUgdGhlIGN1cnJlbnQgdXNlcnMgcmVjcmVhdGUgdGhlCmxpbmVhciBiaXRtYXAg dXNpbmcgY3B1aWRfcG9saWN5X3RvX2ZlYXR1cmVzZXQoKS4gIFRoaXMgYXZvaWRzIHN0b3JpbmcK ZHVwbGljYXRlZCBpbmZvcm1hdGlvbiBpbiBzdHJ1Y3QgY3B1aWRfcG9saWN5LgoKU2lnbmVkLW9m Zi1ieTogQW5kcmV3IENvb3BlciA8YW5kcmV3LmNvb3BlcjNAY2l0cml4LmNvbT4KLS0tCkNDOiBK YW4gQmV1bGljaCA8SkJldWxpY2hAc3VzZS5jb20+Ci0tLQogeGVuL2FyY2gveDg2L2NwdWlkLmMg ICAgICAgIHwgMTkgKysrKysrKysrKy0tLS0tLS0tLQogeGVuL2FyY2gveDg2L3N5c2N0bC5jICAg ICAgIHwgMjEgKysrKysrKysrKysrLS0tLS0tLS0tCiB4ZW4vaW5jbHVkZS9hc20teDg2L2NwdWlk LmggfCAgOSAtLS0tLS0tLS0KIDMgZmlsZXMgY2hhbmdlZCwgMjIgaW5zZXJ0aW9ucygrKSwgMjcg ZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEveGVuL2FyY2gveDg2L2NwdWlkLmMgYi94ZW4vYXJj aC94ODYvY3B1aWQuYwppbmRleCA4NmY1OThmLi5hMjYxODQzIDEwMDY0NAotLS0gYS94ZW4vYXJj aC94ODYvY3B1aWQuYworKysgYi94ZW4vYXJjaC94ODYvY3B1aWQuYwpAQCAtMTI2LDI0ICsxMjYs MjMgQEAgc3RhdGljIHZvaWQgX19pbml0IGNhbGN1bGF0ZV9yYXdfcG9saWN5KHZvaWQpCiAgICAg Zm9yICggaSA9IDE7IGkgPCBtaW4oQVJSQVlfU0laRShwLT5leHRkLnJhdyksCiAgICAgICAgICAg ICAgICAgICAgICAgICAgcC0+ZXh0ZC5tYXhfbGVhZiArIDEgLSAweDgwMDAwMDAwdWwpOyArK2kg KQogICAgICAgICBjcHVpZF9sZWFmKDB4ODAwMDAwMDAgKyBpLCAmcC0+ZXh0ZC5yYXdbaV0pOwot Ci0gICAgY3B1aWRfcG9saWN5X3RvX2ZlYXR1cmVzZXQocCwgcC0+ZnMpOwogfQogCiBzdGF0aWMg dm9pZCBfX2luaXQgY2FsY3VsYXRlX2hvc3RfcG9saWN5KHZvaWQpCiB7CiAgICAgc3RydWN0IGNw dWlkX3BvbGljeSAqcCA9ICZob3N0X3BvbGljeTsKIAotICAgIG1lbWNweShwLT5mcywgYm9vdF9j cHVfZGF0YS54ODZfY2FwYWJpbGl0eSwgc2l6ZW9mKHAtPmZzKSk7Ci0KLSAgICBjcHVpZF9mZWF0 dXJlc2V0X3RvX3BvbGljeShob3N0X2ZlYXR1cmVzZXQsIHApOworICAgIGNwdWlkX2ZlYXR1cmVz ZXRfdG9fcG9saWN5KGJvb3RfY3B1X2RhdGEueDg2X2NhcGFiaWxpdHksIHApOwogfQogCiBzdGF0 aWMgdm9pZCBfX2luaXQgY2FsY3VsYXRlX3B2X21heF9wb2xpY3kodm9pZCkKIHsKICAgICBzdHJ1 Y3QgY3B1aWRfcG9saWN5ICpwID0gJnB2X21heF9wb2xpY3k7CisgICAgdWludDMyX3QgcHZfZmVh dHVyZXNldFtGU0NBUElOVFNdLCBob3N0X2ZlYXR1cmVzZXRbRlNDQVBJTlRTXTsKICAgICB1bnNp Z25lZCBpbnQgaTsKIAorICAgIGNwdWlkX3BvbGljeV90b19mZWF0dXJlc2V0KCZob3N0X3BvbGlj eSwgaG9zdF9mZWF0dXJlc2V0KTsKKwogICAgIGZvciAoIGkgPSAwOyBpIDwgRlNDQVBJTlRTOyAr K2kgKQogICAgICAgICBwdl9mZWF0dXJlc2V0W2ldID0gaG9zdF9mZWF0dXJlc2V0W2ldICYgcHZf ZmVhdHVyZW1hc2tbaV07CiAKQEAgLTE2NSwxMiArMTY0LDE1IEBAIHN0YXRpYyB2b2lkIF9faW5p dCBjYWxjdWxhdGVfcHZfbWF4X3BvbGljeSh2b2lkKQogc3RhdGljIHZvaWQgX19pbml0IGNhbGN1 bGF0ZV9odm1fbWF4X3BvbGljeSh2b2lkKQogewogICAgIHN0cnVjdCBjcHVpZF9wb2xpY3kgKnAg PSAmaHZtX21heF9wb2xpY3k7CisgICAgdWludDMyX3QgaHZtX2ZlYXR1cmVzZXRbRlNDQVBJTlRT XSwgaG9zdF9mZWF0dXJlc2V0W0ZTQ0FQSU5UU107CiAgICAgdW5zaWduZWQgaW50IGk7CiAgICAg Y29uc3QgdWludDMyX3QgKmh2bV9mZWF0dXJlbWFzazsKIAogICAgIGlmICggIWh2bV9lbmFibGVk ICkKICAgICAgICAgcmV0dXJuOwogCisgICAgY3B1aWRfcG9saWN5X3RvX2ZlYXR1cmVzZXQoJmhv c3RfcG9saWN5LCBob3N0X2ZlYXR1cmVzZXQpOworCiAgICAgaHZtX2ZlYXR1cmVtYXNrID0gaHZt X2Z1bmNzLmhhcF9zdXBwb3J0ZWQgPwogICAgICAgICBodm1faGFwX2ZlYXR1cmVtYXNrIDogaHZt X3NoYWRvd19mZWF0dXJlbWFzazsKIApAQCAtMTk5LDggKzIwMSw3IEBAIHN0YXRpYyB2b2lkIF9f aW5pdCBjYWxjdWxhdGVfaHZtX21heF9wb2xpY3kodm9pZCkKICAgICAgKiBsb25nIG1vZGUgKGFu ZCBpbml0X2FtZCgpIGhhcyBjbGVhcmVkIGl0IG91dCBvZiBob3N0IGNhcGFiaWxpdGllcyksIGJ1 dAogICAgICAqIEhWTSBndWVzdHMgYXJlIGFibGUgaWYgcnVubmluZyBpbiBwcm90ZWN0ZWQgbW9k ZS4KICAgICAgKi8KLSAgICBpZiAoIChib290X2NwdV9kYXRhLng4Nl92ZW5kb3IgPT0gWDg2X1ZF TkRPUl9BTUQpICYmCi0gICAgICAgICB0ZXN0X2JpdChYODZfRkVBVFVSRV9TRVAsIHJhd19mZWF0 dXJlc2V0KSApCisgICAgaWYgKCAoYm9vdF9jcHVfZGF0YS54ODZfdmVuZG9yID09IFg4Nl9WRU5E T1JfQU1EKSAmJiByYXdfcG9saWN5LmJhc2ljLnNlcCApCiAgICAgICAgIF9fc2V0X2JpdChYODZf RkVBVFVSRV9TRVAsIGh2bV9mZWF0dXJlc2V0KTsKIAogICAgIC8qCkBAIC0yNjcsNyArMjY4LDcg QEAgdm9pZCByZWNhbGN1bGF0ZV9jcHVpZF9wb2xpY3koc3RydWN0IGRvbWFpbiAqZCkKICAgICB1 bnNpZ25lZCBpbnQgaTsKIAogICAgIGNwdWlkX3BvbGljeV90b19mZWF0dXJlc2V0KHAsIGZzKTsK LSAgICBtZW1jcHkobWF4X2ZzLCBtYXgtPmZzLCBzaXplb2YobWF4X2ZzKSk7CisgICAgY3B1aWRf cG9saWN5X3RvX2ZlYXR1cmVzZXQobWF4LCBtYXhfZnMpOwogCiAgICAgLyogQWxsb3cgYSB0b29s c3RhY2sgdG8gcG9zc2libHkgc2VsZWN0IElUU0MuLi4gKi8KICAgICBpZiAoIGNwdV9oYXNfaXRz YyApCkBAIC0yOTUsNyArMjk2LDcgQEAgdm9pZCByZWNhbGN1bGF0ZV9jcHVpZF9wb2xpY3koc3Ry dWN0IGRvbWFpbiAqZCkKIAogICAgIC8qIEZvbGQgaG9zdCdzIEZEUF9FWENQX09OTFkgYW5kIE5P X0ZQVV9TRUwgaW50byBndWVzdCdzIHZpZXcuICovCiAgICAgZnNbRkVBVFVSRVNFVF83YjBdICY9 IH5zcGVjaWFsX2ZlYXR1cmVzW0ZFQVRVUkVTRVRfN2IwXTsKLSAgICBmc1tGRUFUVVJFU0VUXzdi MF0gfD0gKGhvc3RfZmVhdHVyZXNldFtGRUFUVVJFU0VUXzdiMF0gJgorICAgIGZzW0ZFQVRVUkVT RVRfN2IwXSB8PSAoaG9zdF9wb2xpY3kuZmVhdC5fN2IwICYKICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHNwZWNpYWxfZmVhdHVyZXNbRkVBVFVSRVNFVF83YjBdKTsKIAogICAgIHNhbml0aXNl X2ZlYXR1cmVzZXQoZnMpOwpkaWZmIC0tZ2l0IGEveGVuL2FyY2gveDg2L3N5c2N0bC5jIGIveGVu L2FyY2gveDg2L3N5c2N0bC5jCmluZGV4IDE0ZTdkYzcuLjg3ZGE1NDEgMTAwNjQ0Ci0tLSBhL3hl bi9hcmNoL3g4Ni9zeXNjdGwuYworKysgYi94ZW4vYXJjaC94ODYvc3lzY3RsLmMKQEAgLTE5OSwx MyArMTk5LDE0IEBAIGxvbmcgYXJjaF9kb19zeXNjdGwoCiAKICAgICBjYXNlIFhFTl9TWVNDVExf Z2V0X2NwdV9mZWF0dXJlc2V0OgogICAgIHsKLSAgICAgICAgc3RhdGljIGNvbnN0IHVpbnQzMl90 ICpjb25zdCBmZWF0dXJlc2V0X3RhYmxlW10gPSB7Ci0gICAgICAgICAgICBbWEVOX1NZU0NUTF9j cHVfZmVhdHVyZXNldF9yYXddICA9IHJhd19mZWF0dXJlc2V0LAotICAgICAgICAgICAgW1hFTl9T WVNDVExfY3B1X2ZlYXR1cmVzZXRfaG9zdF0gPSBob3N0X2ZlYXR1cmVzZXQsCi0gICAgICAgICAg ICBbWEVOX1NZU0NUTF9jcHVfZmVhdHVyZXNldF9wdl0gICA9IHB2X2ZlYXR1cmVzZXQsCi0gICAg ICAgICAgICBbWEVOX1NZU0NUTF9jcHVfZmVhdHVyZXNldF9odm1dICA9IGh2bV9mZWF0dXJlc2V0 LAorICAgICAgICBzdGF0aWMgY29uc3Qgc3RydWN0IGNwdWlkX3BvbGljeSAqY29uc3QgcG9saWN5 X3RhYmxlW10gPSB7CisgICAgICAgICAgICBbWEVOX1NZU0NUTF9jcHVfZmVhdHVyZXNldF9yYXdd ICA9ICZyYXdfcG9saWN5LAorICAgICAgICAgICAgW1hFTl9TWVNDVExfY3B1X2ZlYXR1cmVzZXRf aG9zdF0gPSAmaG9zdF9wb2xpY3ksCisgICAgICAgICAgICBbWEVOX1NZU0NUTF9jcHVfZmVhdHVy ZXNldF9wdl0gICA9ICZwdl9tYXhfcG9saWN5LAorICAgICAgICAgICAgW1hFTl9TWVNDVExfY3B1 X2ZlYXR1cmVzZXRfaHZtXSAgPSAmaHZtX21heF9wb2xpY3ksCiAgICAgICAgIH07Ci0gICAgICAg IGNvbnN0IHVpbnQzMl90ICpmZWF0dXJlc2V0ID0gTlVMTDsKKyAgICAgICAgY29uc3Qgc3RydWN0 IGNwdWlkX3BvbGljeSAqcCA9IE5VTEw7CisgICAgICAgIHVpbnQzMl90IGZlYXR1cmVzZXRbRlND QVBJTlRTXTsKICAgICAgICAgdW5zaWduZWQgaW50IG5yOwogCiAgICAgICAgIC8qIFJlcXVlc3Qg Zm9yIG1heGltdW0gbnVtYmVyIG9mIGZlYXR1cmVzPyAqLwpAQCAtMjIzLDEzICsyMjQsMTUgQEAg bG9uZyBhcmNoX2RvX3N5c2N0bCgKICAgICAgICAgICAgICAgICAgICBGU0NBUElOVFMpOwogCiAg ICAgICAgIC8qIExvb2sgdXAgcmVxdWVzdGVkIGZlYXR1cmVzZXQuICovCi0gICAgICAgIGlmICgg c3lzY3RsLT51LmNwdV9mZWF0dXJlc2V0LmluZGV4IDwgQVJSQVlfU0laRShmZWF0dXJlc2V0X3Rh YmxlKSApCi0gICAgICAgICAgICBmZWF0dXJlc2V0ID0gZmVhdHVyZXNldF90YWJsZVtzeXNjdGwt PnUuY3B1X2ZlYXR1cmVzZXQuaW5kZXhdOworICAgICAgICBpZiAoIHN5c2N0bC0+dS5jcHVfZmVh dHVyZXNldC5pbmRleCA8IEFSUkFZX1NJWkUocG9saWN5X3RhYmxlKSApCisgICAgICAgICAgICBw ID0gcG9saWN5X3RhYmxlW3N5c2N0bC0+dS5jcHVfZmVhdHVyZXNldC5pbmRleF07CiAKICAgICAg ICAgLyogQmFkIGZlYXR1cmVzZXQgaW5kZXg/ICovCi0gICAgICAgIGlmICggIWZlYXR1cmVzZXQg KQorICAgICAgICBpZiAoICFwICkKICAgICAgICAgICAgIHJldCA9IC1FSU5WQUw7CiAKKyAgICAg ICAgY3B1aWRfcG9saWN5X3RvX2ZlYXR1cmVzZXQocCwgZmVhdHVyZXNldCk7CisKICAgICAgICAg LyogQ29weSB0aGUgcmVxdWVzdGVkIGZlYXR1cmVzZXQgaW50byBwbGFjZS4gKi8KICAgICAgICAg aWYgKCAhcmV0ICYmIGNvcHlfdG9fZ3Vlc3Qoc3lzY3RsLT51LmNwdV9mZWF0dXJlc2V0LmZlYXR1 cmVzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmZWF0dXJlc2V0LCBucikg KQpkaWZmIC0tZ2l0IGEveGVuL2luY2x1ZGUvYXNtLXg4Ni9jcHVpZC5oIGIveGVuL2luY2x1ZGUv YXNtLXg4Ni9jcHVpZC5oCmluZGV4IDAzNzFlNmUuLjk3ODhjYWMgMTAwNjQ0Ci0tLSBhL3hlbi9p bmNsdWRlL2FzbS14ODYvY3B1aWQuaAorKysgYi94ZW4vaW5jbHVkZS9hc20teDg2L2NwdWlkLmgK QEAgLTI1Myw5ICsyNTMsNiBAQCBzdHJ1Y3QgY3B1aWRfcG9saWN5CiAgICAgICAgICAgICB9Owog ICAgICAgICB9OwogICAgIH0gZXh0ZDsKLQotICAgIC8qIFRlbXBvcmFyeSBmZWF0dXJlc2V0IGJp dG1hcC4gKi8KLSAgICB1aW50MzJfdCBmc1tGU0NBUElOVFNdOwogfTsKIAogLyogRmlsbCBpbiBh IGZlYXR1cmVzZXQgYml0bWFwIGZyb20gYSBDUFVJRCBwb2xpY3kuICovCkBAIC0yOTMsMTIgKzI5 MCw2IEBAIHN0YXRpYyBpbmxpbmUgdm9pZCBjcHVpZF9mZWF0dXJlc2V0X3RvX3BvbGljeSgKIGV4 dGVybiBzdHJ1Y3QgY3B1aWRfcG9saWN5IHJhd19wb2xpY3ksIGhvc3RfcG9saWN5LCBwdl9tYXhf cG9saWN5LAogICAgIGh2bV9tYXhfcG9saWN5OwogCi0vKiBUZW1wb3JhcnkgY29tcGF0aWJpbGl0 eSBkZWZpbmVzLiAqLwotI2RlZmluZSByYXdfZmVhdHVyZXNldCByYXdfcG9saWN5LmZzCi0jZGVm aW5lIGhvc3RfZmVhdHVyZXNldCBob3N0X3BvbGljeS5mcwotI2RlZmluZSBwdl9mZWF0dXJlc2V0 IHB2X21heF9wb2xpY3kuZnMKLSNkZWZpbmUgaHZtX2ZlYXR1cmVzZXQgaHZtX21heF9wb2xpY3ku ZnMKLQogLyogQWxsb2NhdGUgYW5kIGluaXRpYWxpc2UgYSBDUFVJRCBwb2xpY3kgc3VpdGFibGUg Zm9yIHRoZSBkb21haW4uICovCiBpbnQgaW5pdF9kb21haW5fY3B1aWRfcG9saWN5KHN0cnVjdCBk b21haW4gKmQpOwogCi0tIAoyLjEuNAoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fClhlbi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhl bi5vcmcKaHR0cHM6Ly9saXN0cy54ZW4ub3JnL3hlbi1kZXZlbAo=