From mboxrd@z Thu Jan 1 00:00:00 1970 From: Wei Liu Subject: [PATCH v3 08/11] x86emul: use CR definitions in x86-defns.h Date: Wed, 1 Feb 2017 12:02:36 +0000 Message-ID: <20170201120239.13993-9-wei.liu2@citrix.com> References: <20170201120239.13993-1-wei.liu2@citrix.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 1cYtcb-0007mv-Jw for xen-devel@lists.xenproject.org; Wed, 01 Feb 2017 12:02:45 +0000 In-Reply-To: <20170201120239.13993-1-wei.liu2@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: Wei Liu List-Id: xen-devel@lists.xenproject.org QW5kIHJlbW92ZSB0aGUgZHVwbGljYXRlcy4KCk5vIGZ1bmN0aW9uYWwgY2hhbmdlLgoKU2lnbmVk LW9mZi1ieTogV2VpIExpdSA8d2VpLmxpdTJAY2l0cml4LmNvbT4KUmV2aWV3ZWQtYnk6IEphbiBC ZXVsaWNoIDxqYmV1bGljaEBzdXNlLmNvbT4KLS0tCiB4ZW4vYXJjaC94ODYveDg2X2VtdWxhdGUv eDg2X2VtdWxhdGUuYyB8IDQ1ICsrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIDEg ZmlsZSBjaGFuZ2VkLCAxNSBpbnNlcnRpb25zKCspLCAzMCBkZWxldGlvbnMoLSkKCmRpZmYgLS1n aXQgYS94ZW4vYXJjaC94ODYveDg2X2VtdWxhdGUveDg2X2VtdWxhdGUuYyBiL3hlbi9hcmNoL3g4 Ni94ODZfZW11bGF0ZS94ODZfZW11bGF0ZS5jCmluZGV4IGU2NDkyMDU4NDguLjc3YjlkZTRhMWUg MTAwNjQ0Ci0tLSBhL3hlbi9hcmNoL3g4Ni94ODZfZW11bGF0ZS94ODZfZW11bGF0ZS5jCisrKyBi L3hlbi9hcmNoL3g4Ni94ODZfZW11bGF0ZS94ODZfZW11bGF0ZS5jCkBAIC00MTUsMjEgKzQxNSw2 IEBAIHR5cGVkZWYgdW5pb24gewogIyBkZWZpbmUgQVNNX0ZMQUdfT1VUKHllcywgbm8pIG5vCiAj ZW5kaWYKIAotLyogQ29udHJvbCByZWdpc3RlciBmbGFncy4gKi8KLSNkZWZpbmUgQ1IwX1BFICAg ICgxPDwwKQotI2RlZmluZSBDUjBfTVAgICAgKDE8PDEpCi0jZGVmaW5lIENSMF9FTSAgICAoMTw8 MikKLSNkZWZpbmUgQ1IwX1RTICAgICgxPDwzKQotCi0jZGVmaW5lIENSNF9WTUUgICAgICAgICgx PDwwKQotI2RlZmluZSBDUjRfUFZJICAgICAgICAoMTw8MSkKLSNkZWZpbmUgQ1I0X1RTRCAgICAg ICAgKDE8PDIpCi0jZGVmaW5lIENSNF9PU0ZYU1IgICAgICgxPDw5KQotI2RlZmluZSBDUjRfT1NY TU1FWENQVCAoMTw8MTApCi0jZGVmaW5lIENSNF9VTUlQICAgICAgICgxPDwxMSkKLSNkZWZpbmUg Q1I0X0ZTR1NCQVNFICAgKDE8PDE2KQotI2RlZmluZSBDUjRfT1NYU0FWRSAgICAoMTw8MTgpCi0K IC8qIEZsb2F0aW5nIHBvaW50IHN0YXR1cyB3b3JkIGRlZmluaXRpb25zLiAqLwogI2RlZmluZSBG U1dfRVMgICAgKDFVIDw8IDcpCiAKQEAgLTgxMCw3ICs3OTUsNyBAQCBzdGF0aWMgaW50IF9nZXRf ZnB1KAogICAgICAgICAgICAgaWYgKCByYyAhPSBYODZFTVVMX09LQVkgKQogICAgICAgICAgICAg ICAgIHJldHVybiByYzsKICAgICAgICAgICAgIGdlbmVyYXRlX2V4Y2VwdGlvbl9pZighKGNyNCAm ICgodHlwZSA9PSBYODZFTVVMX0ZQVV94bW0pCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgPyBDUjRfT1NGWFNSIDogQ1I0X09TWFNBVkUpKSwKKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA/IFg4Nl9DUjRfT1NGWFNSIDogWDg2X0NS NF9PU1hTQVZFKSksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRVhDX1VEKTsK ICAgICAgICAgfQogCkBAIC04MjAsMTYgKzgwNSwxNiBAQCBzdGF0aWMgaW50IF9nZXRfZnB1KAog ICAgICAgICBpZiAoIHR5cGUgPj0gWDg2RU1VTF9GUFVfeW1tICkKICAgICAgICAgewogICAgICAg ICAgICAgLyogU2hvdWxkIGJlIHVucmVhY2hhYmxlIGlmIFZFWCBkZWNvZGluZyBpcyB3b3JraW5n IGNvcnJlY3RseS4gKi8KLSAgICAgICAgICAgIEFTU0VSVCgoY3IwICYgQ1IwX1BFKSAmJiAhKGN0 eHQtPnJlZ3MtPl9lZmxhZ3MgJiBYODZfRUZMQUdTX1ZNKSk7CisgICAgICAgICAgICBBU1NFUlQo KGNyMCAmIFg4Nl9DUjBfUEUpICYmICEoY3R4dC0+cmVncy0+X2VmbGFncyAmIFg4Nl9FRkxBR1Nf Vk0pKTsKICAgICAgICAgfQotICAgICAgICBpZiAoIGNyMCAmIENSMF9FTSApCisgICAgICAgIGlm ICggY3IwICYgWDg2X0NSMF9FTSApCiAgICAgICAgIHsKICAgICAgICAgICAgIGdlbmVyYXRlX2V4 Y2VwdGlvbl9pZih0eXBlID09IFg4NkVNVUxfRlBVX2ZwdSwgRVhDX05NKTsKICAgICAgICAgICAg IGdlbmVyYXRlX2V4Y2VwdGlvbl9pZih0eXBlID09IFg4NkVNVUxfRlBVX21teCwgRVhDX1VEKTsK ICAgICAgICAgICAgIGdlbmVyYXRlX2V4Y2VwdGlvbl9pZih0eXBlID09IFg4NkVNVUxfRlBVX3ht bSwgRVhDX1VEKTsKICAgICAgICAgfQotICAgICAgICBnZW5lcmF0ZV9leGNlcHRpb25faWYoKGNy MCAmIENSMF9UUykgJiYKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICh0eXBlICE9IFg4 NkVNVUxfRlBVX3dhaXQgfHwgKGNyMCAmIENSMF9NUCkpLAorICAgICAgICBnZW5lcmF0ZV9leGNl cHRpb25faWYoKGNyMCAmIFg4Nl9DUjBfVFMpICYmCisgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAodHlwZSAhPSBYODZFTVVMX0ZQVV93YWl0IHx8IChjcjAgJiBYODZfQ1IwX01QKSksCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFWENfTk0pOwogICAgIH0KIApAQCAtODUyLDcg KzgzNyw3IEBAIGRvIHsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBcCiAgICAgX3B1dF9mcHUoKTsgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgXAogICAgIGlmICggKF9maWMpLT5leG5fcmFpc2Vk ID09IEVYQ19YTSAmJiBvcHMtPnJlYWRfY3IgJiYgICAgICAgIFwKICAgICAgICAgIG9wcy0+cmVh ZF9jcig0LCAmY3I0LCBjdHh0KSA9PSBYODZFTVVMX09LQVkgJiYgICAgICAgICBcCi0gICAgICAg ICAhKGNyNCAmIENSNF9PU1hNTUVYQ1BUKSApICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg XAorICAgICAgICAgIShjcjQgJiBYODZfQ1I0X09TWE1NRVhDUFQpICkJCQkJXAogICAgICAgICAo X2ZpYyktPmV4bl9yYWlzZWQgPSBFWENfVUQ7ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwK ICAgICBnZW5lcmF0ZV9leGNlcHRpb25faWYoKF9maWMpLT5leG5fcmFpc2VkID49IDAsICAgICAg ICAgICAgICBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgIChfZmljKS0+ZXhuX3JhaXNlZCk7 ICAgICAgICAgICAgICAgICAgXApAQCAtMTE4NCw3ICsxMTY5LDcgQEAgX21vZGVfaW9wbCgKICAg ICAgICAgcmMgPSBvcHMtPnJlYWRfY3IoNCwgJmNyNCwgY3R4dCk7ICAgICAgICAgICAgICAgICAg ICBcCiAgICAgICAgIGlmICggcmMgIT0gWDg2RU1VTF9PS0FZICkgZ290byBkb25lOyAgICAgICAg ICAgICAgICAgXAogICAgIH0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIFwKLSAgICAhIShjcjQgJiAoX3JlZ3MuX2VmbGFncyAmIFg4Nl9FRkxB R1NfVk0gPyBDUjRfVk1FIDogQ1I0X1BWSSkpOyBcCisgICAgISEoY3I0ICYgKF9yZWdzLl9lZmxh Z3MgJiBYODZfRUZMQUdTX1ZNID8gWDg2X0NSNF9WTUUgOiBYODZfQ1I0X1BWSSkpOyBcCiB9KQog CiBzdGF0aWMgaW50IGlvcG9ydF9hY2Nlc3NfY2hlY2soCkBAIC0xMjU4LDcgKzEyNDMsNyBAQCBp bl9yZWFsbW9kZSgKICAgICAgICAgcmV0dXJuIDA7CiAKICAgICByYyA9IG9wcy0+cmVhZF9jcigw LCAmY3IwLCBjdHh0KTsKLSAgICByZXR1cm4gKCFyYyAmJiAhKGNyMCAmIENSMF9QRSkpOworICAg IHJldHVybiAoIXJjICYmICEoY3IwICYgWDg2X0NSMF9QRSkpOwogfQogCiBzdGF0aWMgYm9vbApA QCAtMTcyNiw3ICsxNzExLDcgQEAgc3RhdGljIGJvb2wgdW1pcF9hY3RpdmUoc3RydWN0IHg4Nl9l bXVsYXRlX2N0eHQgKmN0eHQsCiAgICAgLyogSW50ZW50aW9uYWxseSBub3QgdXNpbmcgbW9kZV9y aW5nMCgpIGhlcmUgdG8gYXZvaWQgaXRzIGZhaWxfaWYoKS4gKi8KICAgICByZXR1cm4gZ2V0X2Nw bChjdHh0LCBvcHMpID4gMCAmJgogICAgICAgICAgICBvcHMtPnJlYWRfY3IgJiYgb3BzLT5yZWFk X2NyKDQsICZjcjQsIGN0eHQpID09IFg4NkVNVUxfT0tBWSAmJgotICAgICAgICAgICAoY3I0ICYg Q1I0X1VNSVApOworICAgICAgICAgICAoY3I0ICYgWDg2X0NSNF9VTUlQKTsKIH0KIAogLyogSW5q ZWN0IGEgc29mdHdhcmUgaW50ZXJydXB0L2V4Y2VwdGlvbiwgZW11bGF0aW5nIGlmIG5lZWRlZC4g Ki8KQEAgLTMzNDUsNyArMzMzMCw3IEBAIHg4Nl9lbXVsYXRlKAogICAgICAgICAgICAgICAgIGlm ICggcmMgIT0gWDg2RU1VTF9PS0FZICkKICAgICAgICAgICAgICAgICAgICAgZ290byBkb25lOwog ICAgICAgICAgICAgfQotICAgICAgICAgICAgZ2VuZXJhdGVfZXhjZXB0aW9uX2lmKCEoY3I0ICYg Q1I0X1ZNRSksIEVYQ19HUCwgMCk7CisgICAgICAgICAgICBnZW5lcmF0ZV9leGNlcHRpb25faWYo IShjcjQgJiBYODZfQ1I0X1ZNRSksIEVYQ19HUCwgMCk7CiAgICAgICAgICAgICBzcmMudmFsID0g KF9yZWdzLmZsYWdzICYgflg4Nl9FRkxBR1NfSUYpIHwgWDg2X0VGTEFHU19JT1BMOwogICAgICAg ICAgICAgaWYgKCBfcmVncy5fZWZsYWdzICYgWDg2X0VGTEFHU19WSUYgKQogICAgICAgICAgICAg ICAgIHNyYy52YWwgfD0gWDg2X0VGTEFHU19JRjsKQEAgLTMzNjgsNyArMzM1Myw3IEBAIHg4Nl9l bXVsYXRlKAogICAgICAgICAgICAgICAgICAgICBpZiAoIHJjICE9IFg4NkVNVUxfT0tBWSApCiAg ICAgICAgICAgICAgICAgICAgICAgICBnb3RvIGRvbmU7CiAgICAgICAgICAgICAgICAgfQotICAg ICAgICAgICAgICAgIGdlbmVyYXRlX2V4Y2VwdGlvbl9pZighKGNyNCAmIENSNF9WTUUpICYmCisg ICAgICAgICAgICAgICAgZ2VuZXJhdGVfZXhjZXB0aW9uX2lmKCEoY3I0ICYgWDg2X0NSNF9WTUUp ICYmCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE1BU0tfRVhUUihfcmVn cy5fZWZsYWdzLCBYODZfRUZMQUdTX0lPUEwpICE9IDMsCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIEVYQ19HUCwgMCk7CiAgICAgICAgICAgICB9CkBAIC0zMzg1LDcgKzMz NzAsNyBAQCB4ODZfZW11bGF0ZSgKICAgICAgICAgaWYgKCBvcF9ieXRlcyA9PSAyICkKICAgICAg ICAgewogICAgICAgICAgICAgZHN0LnZhbCA9ICh1aW50MTZfdClkc3QudmFsIHwgKF9yZWdzLl9l ZmxhZ3MgJiAweGZmZmYwMDAwdSk7Ci0gICAgICAgICAgICBpZiAoIGNyNCAmIENSNF9WTUUgKQor ICAgICAgICAgICAgaWYgKCBjcjQgJiBYODZfQ1I0X1ZNRSApCiAgICAgICAgICAgICB7CiAgICAg ICAgICAgICAgICAgaWYgKCBkc3QudmFsICYgWDg2X0VGTEFHU19JRiApCiAgICAgICAgICAgICAg ICAgewpAQCAtNTAwOSw3ICs0OTk0LDcgQEAgeDg2X2VtdWxhdGUoCiAgICAgICAgIGdlbmVyYXRl X2V4Y2VwdGlvbl9pZighbW9kZV9yaW5nMCgpLCBFWENfR1AsIDApOwogICAgICAgICBmYWlsX2lm KChvcHMtPnJlYWRfY3IgPT0gTlVMTCkgfHwgKG9wcy0+d3JpdGVfY3IgPT0gTlVMTCkpOwogICAg ICAgICBpZiAoIChyYyA9IG9wcy0+cmVhZF9jcigwLCAmZHN0LnZhbCwgY3R4dCkpICE9IFg4NkVN VUxfT0tBWSB8fAotICAgICAgICAgICAgIChyYyA9IG9wcy0+d3JpdGVfY3IoMCwgZHN0LnZhbCAm IH5DUjBfVFMsIGN0eHQpKSAhPSBYODZFTVVMX09LQVkgKQorICAgICAgICAgICAgIChyYyA9IG9w cy0+d3JpdGVfY3IoMCwgZHN0LnZhbCAmIH5YODZfQ1IwX1RTLCBjdHh0KSkgIT0gWDg2RU1VTF9P S0FZICkKICAgICAgICAgICAgIGdvdG8gZG9uZTsKICAgICAgICAgYnJlYWs7CiAKQEAgLTUxODcs NyArNTE3Miw3IEBAIHg4Nl9lbXVsYXRlKAogICAgICAgICAgICAgZmFpbF9pZihvcHMtPnJlYWRf Y3IgPT0gTlVMTCk7CiAgICAgICAgICAgICBpZiAoIChyYyA9IG9wcy0+cmVhZF9jcig0LCAmY3I0 LCBjdHh0KSkgKQogICAgICAgICAgICAgICAgIGdvdG8gZG9uZTsKLSAgICAgICAgICAgIGdlbmVy YXRlX2V4Y2VwdGlvbl9pZihjcjQgJiBDUjRfVFNELCBFWENfR1AsIDApOworICAgICAgICAgICAg Z2VuZXJhdGVfZXhjZXB0aW9uX2lmKGNyNCAmIFg4Nl9DUjRfVFNELCBFWENfR1AsIDApOwogICAg ICAgICB9CiAgICAgICAgIGZhaWxfaWYob3BzLT5yZWFkX21zciA9PSBOVUxMKTsKICAgICAgICAg aWYgKCAocmMgPSBvcHMtPnJlYWRfbXNyKE1TUl9JQTMyX1RTQywgJnZhbCwgY3R4dCkpICE9IDAg KQpAQCAtNTU2MCw3ICs1NTQ1LDcgQEAgeDg2X2VtdWxhdGUoCiAgICAgICAgIGZhaWxfaWYoIW9w cy0+cmVhZF9jcik7CiAgICAgICAgIGlmICggKHJjID0gb3BzLT5yZWFkX2NyKDQsICZjcjQsIGN0 eHQpKSAhPSBYODZFTVVMX09LQVkgKQogICAgICAgICAgICAgZ290byBkb25lOwotICAgICAgICBn ZW5lcmF0ZV9leGNlcHRpb25faWYoIShjcjQgJiBDUjRfRlNHU0JBU0UpLCBFWENfVUQpOworICAg ICAgICBnZW5lcmF0ZV9leGNlcHRpb25faWYoIShjcjQgJiBYODZfQ1I0X0ZTR1NCQVNFKSwgRVhD X1VEKTsKICAgICAgICAgc2VnID0gbW9kcm1fcmVnICYgMSA/IHg4Nl9zZWdfZ3MgOiB4ODZfc2Vn X2ZzOwogICAgICAgICBmYWlsX2lmKCFvcHMtPnJlYWRfc2VnbWVudCk7CiAgICAgICAgIGlmICgg KHJjID0gb3BzLT5yZWFkX3NlZ21lbnQoc2VnLCAmc3JlZywgY3R4dCkpICE9IFg4NkVNVUxfT0tB WSApCi0tIAoyLjExLjAKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fXwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW4ub3JnCmh0 dHBzOi8vbGlzdHMueGVuLm9yZy94ZW4tZGV2ZWwK