From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Jan Beulich" Subject: [PATCH v8 45/50] x86emul: support VAES insns Date: Fri, 15 Mar 2019 05:06:01 -0600 Message-ID: <5C8B8719020000780021F320@prv1-mh.provo.novell.com> References: <5B6BF83602000078001DC548@prv1-mh.provo.novell.com> <5C8B7EC0020000780021F10B@prv1-mh.provo.novell.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6]) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1h4kf5-0001gP-DA for xen-devel@lists.xenproject.org; Fri, 15 Mar 2019 11:06:03 +0000 In-Reply-To: <5C8B7EC0020000780021F10B@prv1-mh.provo.novell.com> Content-Disposition: inline List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" To: xen-devel Cc: George Dunlap , Andrew Cooper , Wei Liu , Roger Pau Monne List-Id: xen-devel@lists.xenproject.org QXMgdG8gdGhlIGZlYXR1cmUgZGVwZW5kZW5jeSBhZGp1c3RtZW50LCBqdXN0IGxpa2UgZm9yIFZQ Q0xNVUxRRFEgd2hpbGUKc3RyaWN0bHkgc3BlYWtpbmcgQVZYIGlzIGEgc3VmZmljaWVudCBwcmVy ZXEgKHRvIGhhdmUgWU1NIHJlZ2lzdGVycyksCjI1Ni1iaXQgdmVjdG9ycyBvZiBpbnRlZ2VycyBo YXZlIGdvdCBmdWxseSBpbnRyb2R1Y2VkIHdpdGggQVZYMiBvbmx5LgoKQSBuZXcgdGVzdCBjYXNl IChhbHNvIGNvdmVyaW5nIEFFU05JKSB3aWxsIGJlIGFkZGVkIHRvIHRoZSBoYXJuZXNzIGJ5IGEK c3Vic2VxdWVudCBwYXRjaC4KClNpZ25lZC1vZmYtYnk6IEphbiBCZXVsaWNoIDxqYmV1bGljaEBz dXNlLmNvbT4KLS0tClRCRDogU2hvdWxkIFZBRVMgYWxzbyBkZXBlbmQgb24gQUVTTkk/Ci0tLQp2 ODogTm8gbmVlZCB0byBzZXQgZmF1bHRfc3VwcHJlc3Npb24gdG8gZmFsc2UuCnY3OiBOZXcuCgot LS0gYS90b29scy90ZXN0cy94ODZfZW11bGF0b3IvZXZleC1kaXNwOC5jCisrKyBiL3Rvb2xzL3Rl c3RzL3g4Nl9lbXVsYXRvci9ldmV4LWRpc3A4LmMKQEAgLTU5MSw2ICs1OTEsMTggQEAgc3RhdGlj IGNvbnN0IHN0cnVjdCB0ZXN0IGF2eDUxMl92cG9wY250ZAogICAgIElOU04ocG9wY250LCA2Niwg MGYzOCwgNTUsIHZsLCBkcSwgdmwpCiB9OwogCisvKgorICogVGhlIHVzZXMgb2YgYiBpbiB0aGlz IHRhYmxlIGFyZSBzaW1wbHkgKG9uZSBvZikgdGhlIHNob3J0ZXN0IGZvcm0ocykgb2YKKyAqIHNh eWluZyAibm8gYnJvYWRjYXN0IiB3aXRob3V0IGludHJvZHVjaW5nIGEgMTI4LWJpdCBncmFudWxh cml0eSBlbnVtZXJhdG9yLgorICogRHVlIHRvIGFsbCBvZiB0aGUgaW5zbnMgYmVpbmcgV0lHLCB3 LCBkX25iLCBhbmQgcV9uYiB3b3VsZCBhbGwgYWxzbyBmaXQuCisgKi8KK3N0YXRpYyBjb25zdCBz dHJ1Y3QgdGVzdCB2YWVzX2FsbFtdID0geworICAgIElOU04oYWVzZGVjLCAgICAgNjYsIDBmMzgs IGRlLCB2bCwgYiwgdmwpLAorICAgIElOU04oYWVzZGVjbGFzdCwgNjYsIDBmMzgsIGRmLCB2bCwg YiwgdmwpLAorICAgIElOU04oYWVzZW5jLCAgICAgNjYsIDBmMzgsIGRjLCB2bCwgYiwgdmwpLAor ICAgIElOU04oYWVzZW5jbGFzdCwgNjYsIDBmMzgsIGRkLCB2bCwgYiwgdmwpLAorfTsKKwogc3Rh dGljIGNvbnN0IHN0cnVjdCB0ZXN0IHZwY2xtdWxxZHFfYWxsW10gPSB7CiAgICAgSU5TTihwY2xt dWxxZHEsIDY2LCAwZjNhLCA0NCwgdmwsIHFfbmIsIHZsKQogfTsKQEAgLTk3NSw2ICs5ODcsNyBA QCB2b2lkIGV2ZXhfZGlzcDhfdGVzdCh2b2lkICppbnN0ciwgc3RydWN0CiAKICAgICBpZiAoIGNw dV9oYXNfYXZ4NTEyZiApCiAgICAgeworICAgICAgICBSVU4odmFlcywgYWxsKTsKICAgICAgICAg UlVOKHZwY2xtdWxxZHEsIGFsbCk7CiAgICAgfQogfQotLS0gYS90b29scy90ZXN0cy94ODZfZW11 bGF0b3IveDg2LWVtdWxhdGUuaAorKysgYi90b29scy90ZXN0cy94ODZfZW11bGF0b3IveDg2LWVt dWxhdGUuaApAQCAtMTQ0LDYgKzE0NCw3IEBAIHN0YXRpYyBpbmxpbmUgYm9vbCB4Y3IwX21hc2so dWludDY0X3QgbWEKICNkZWZpbmUgY3B1X2hhc19hdng1MTJ2bCAgKGNwLmZlYXQuYXZ4NTEydmwg JiYgeGNyMF9tYXNrKDB4ZTYpKQogI2RlZmluZSBjcHVfaGFzX2F2eDUxMl92Ym1pIChjcC5mZWF0 LmF2eDUxMl92Ym1pICYmIHhjcjBfbWFzaygweGU2KSkKICNkZWZpbmUgY3B1X2hhc19hdng1MTJf dmJtaTIgKGNwLmZlYXQuYXZ4NTEyX3ZibWkyICYmIHhjcjBfbWFzaygweGU2KSkKKyNkZWZpbmUg Y3B1X2hhc192YWVzICAgICAgKGNwLmZlYXQudmFlcyAmJiB4Y3IwX21hc2soNikpCiAjZGVmaW5l IGNwdV9oYXNfdnBjbG11bHFkcSAoY3AuZmVhdC52cGNsbXVscWRxICYmIHhjcjBfbWFzayg2KSkK ICNkZWZpbmUgY3B1X2hhc19hdng1MTJfdm5uaSAoY3AuZmVhdC5hdng1MTJfdm5uaSAmJiB4Y3Iw X21hc2soMHhlNikpCiAjZGVmaW5lIGNwdV9oYXNfYXZ4NTEyX2JpdGFsZyAoY3AuZmVhdC5hdng1 MTJfYml0YWxnICYmIHhjcjBfbWFzaygweGU2KSkKLS0tIGEveGVuL2FyY2gveDg2L3g4Nl9lbXVs YXRlL3g4Nl9lbXVsYXRlLmMKKysrIGIveGVuL2FyY2gveDg2L3g4Nl9lbXVsYXRlL3g4Nl9lbXVs YXRlLmMKQEAgLTU0MSw3ICs1NDEsNyBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IGV4dDBmMzhfdGFi bGUgewogICAgIFsweGNjXSA9IHsgLnNpbWRfc2l6ZSA9IHNpbWRfcGFja2VkX2ZwLCAudHdvX29w ID0gMSwgLmQ4cyA9IGQ4c192bCB9LAogICAgIFsweGNkXSA9IHsgLnNpbWRfc2l6ZSA9IHNpbWRf c2NhbGFyX3ZleHcsIC5kOHMgPSBkOHNfZHEgfSwKICAgICBbMHhkYl0gPSB7IC5zaW1kX3NpemUg PSBzaW1kX3BhY2tlZF9pbnQsIC50d29fb3AgPSAxIH0sCi0gICAgWzB4ZGMgLi4uIDB4ZGZdID0g eyAuc2ltZF9zaXplID0gc2ltZF9wYWNrZWRfaW50IH0sCisgICAgWzB4ZGMgLi4uIDB4ZGZdID0g eyAuc2ltZF9zaXplID0gc2ltZF9wYWNrZWRfaW50LCAuZDhzID0gZDhzX3ZsIH0sCiAgICAgWzB4 ZjBdID0geyAudHdvX29wID0gMSB9LAogICAgIFsweGYxXSA9IHsgLnRvX21lbSA9IDEsIC50d29f b3AgPSAxIH0sCiAgICAgWzB4ZjIgLi4uIDB4ZjNdID0ge30sCkBAIC0xOTIyLDYgKzE5MjIsNyBA QCBzdGF0aWMgYm9vbCB2Y3B1X2hhcygKICNkZWZpbmUgdmNwdV9oYXNfYXZ4NTEydmwoKSAgICB2 Y3B1X2hhcyggICAgICAgICA3LCBFQlgsIDMxLCBjdHh0LCBvcHMpCiAjZGVmaW5lIHZjcHVfaGFz X2F2eDUxMl92Ym1pKCkgdmNwdV9oYXMoICAgICAgICAgNywgRUNYLCAgMSwgY3R4dCwgb3BzKQog I2RlZmluZSB2Y3B1X2hhc19hdng1MTJfdmJtaTIoKSB2Y3B1X2hhcyggICAgICAgIDcsIEVDWCwg IDYsIGN0eHQsIG9wcykKKyNkZWZpbmUgdmNwdV9oYXNfdmFlcygpICAgICAgICB2Y3B1X2hhcygg ICAgICAgICA3LCBFQ1gsICA5LCBjdHh0LCBvcHMpCiAjZGVmaW5lIHZjcHVfaGFzX3ZwY2xtdWxx ZHEoKSAgdmNwdV9oYXMoICAgICAgICAgNywgRUNYLCAxMCwgY3R4dCwgb3BzKQogI2RlZmluZSB2 Y3B1X2hhc19hdng1MTJfdm5uaSgpIHZjcHVfaGFzKCAgICAgICAgIDcsIEVDWCwgMTEsIGN0eHQs IG9wcykKICNkZWZpbmUgdmNwdV9oYXNfYXZ4NTEyX2JpdGFsZygpIHZjcHVfaGFzKCAgICAgICA3 LCBFQ1gsIDEyLCBjdHh0LCBvcHMpCkBAIC04OTM1LDEzICs4OTM2LDkgQEAgeDg2X2VtdWxhdGUo CiAgICAgY2FzZSBYODZFTVVMX09QQ182NigweDBmMzgsIDB4ZGIpOiAgICAgLyogYWVzaW1jIHht bS9tMTI4LHhtbSAqLwogICAgIGNhc2UgWDg2RU1VTF9PUENfVkVYXzY2KDB4MGYzOCwgMHhkYik6 IC8qIHZhZXNpbWMgeG1tL20xMjgseG1tICovCiAgICAgY2FzZSBYODZFTVVMX09QQ182NigweDBm MzgsIDB4ZGMpOiAgICAgLyogYWVzZW5jIHhtbS9tMTI4LHhtbSx4bW0gKi8KLSAgICBjYXNlIFg4 NkVNVUxfT1BDX1ZFWF82NigweDBmMzgsIDB4ZGMpOiAvKiB2YWVzZW5jIHhtbS9tMTI4LHhtbSx4 bW0gKi8KICAgICBjYXNlIFg4NkVNVUxfT1BDXzY2KDB4MGYzOCwgMHhkZCk6ICAgICAvKiBhZXNl bmNsYXN0IHhtbS9tMTI4LHhtbSx4bW0gKi8KLSAgICBjYXNlIFg4NkVNVUxfT1BDX1ZFWF82Nigw eDBmMzgsIDB4ZGQpOiAvKiB2YWVzZW5jbGFzdCB4bW0vbTEyOCx4bW0seG1tICovCiAgICAgY2Fz ZSBYODZFTVVMX09QQ182NigweDBmMzgsIDB4ZGUpOiAgICAgLyogYWVzZGVjIHhtbS9tMTI4LHht bSx4bW0gKi8KLSAgICBjYXNlIFg4NkVNVUxfT1BDX1ZFWF82NigweDBmMzgsIDB4ZGUpOiAvKiB2 YWVzZGVjIHhtbS9tMTI4LHhtbSx4bW0gKi8KICAgICBjYXNlIFg4NkVNVUxfT1BDXzY2KDB4MGYz OCwgMHhkZik6ICAgICAvKiBhZXNkZWNsYXN0IHhtbS9tMTI4LHhtbSx4bW0gKi8KLSAgICBjYXNl IFg4NkVNVUxfT1BDX1ZFWF82NigweDBmMzgsIDB4ZGYpOiAvKiB2YWVzZGVjbGFzdCB4bW0vbTEy OCx4bW0seG1tICovCiAgICAgICAgIGhvc3RfYW5kX3ZjcHVfbXVzdF9oYXZlKGFlc25pKTsKICAg ICAgICAgaWYgKCB2ZXgub3BjeCA9PSB2ZXhfbm9uZSApCiAgICAgICAgICAgICBnb3RvIHNpbWRf MGYzOF9jb21tb247CkBAIC05NjU1LDYgKzk2NTIsMjQgQEAgeDg2X2VtdWxhdGUoCiAgICAgICAg IGhvc3RfYW5kX3ZjcHVfbXVzdF9oYXZlKGF2eDUxMmVyKTsKICAgICAgICAgZ290byBzaW1kX3pt bV9zY2FsYXJfc2FlOwogCisgICAgY2FzZSBYODZFTVVMX09QQ19WRVhfNjYoMHgwZjM4LCAweGRj KTogIC8qIHZhZXNlbmMge3gseX1tbS9tZW0se3gseX1tbSx7eCx5fW1tICovCisgICAgY2FzZSBY ODZFTVVMX09QQ19WRVhfNjYoMHgwZjM4LCAweGRkKTogIC8qIHZhZXNlbmNsYXN0IHt4LHl9bW0v bWVtLHt4LHl9bW0se3gseX1tbSAqLworICAgIGNhc2UgWDg2RU1VTF9PUENfVkVYXzY2KDB4MGYz OCwgMHhkZSk6ICAvKiB2YWVzZGVjIHt4LHl9bW0vbWVtLHt4LHl9bW0se3gseX1tbSAqLworICAg IGNhc2UgWDg2RU1VTF9PUENfVkVYXzY2KDB4MGYzOCwgMHhkZik6ICAvKiB2YWVzZGVjbGFzdCB7 eCx5fW1tL21lbSx7eCx5fW1tLHt4LHl9bW0gKi8KKyAgICAgICAgaWYgKCAhdmV4LmwgKQorICAg ICAgICAgICAgaG9zdF9hbmRfdmNwdV9tdXN0X2hhdmUoYWVzbmkpOworICAgICAgICBlbHNlCisg ICAgICAgICAgICBob3N0X2FuZF92Y3B1X211c3RfaGF2ZSh2YWVzKTsKKyAgICAgICAgZ290byBz aW1kXzBmX2F2eDsKKworICAgIGNhc2UgWDg2RU1VTF9PUENfRVZFWF82NigweDBmMzgsIDB4ZGMp OiAvKiB2YWVzZW5jIFt4eXpdbW0vbWVtLFt4eXpdbW0sW3h5el1tbSAqLworICAgIGNhc2UgWDg2 RU1VTF9PUENfRVZFWF82NigweDBmMzgsIDB4ZGQpOiAvKiB2YWVzZW5jbGFzdCBbeHl6XW1tL21l bSxbeHl6XW1tLFt4eXpdbW0gKi8KKyAgICBjYXNlIFg4NkVNVUxfT1BDX0VWRVhfNjYoMHgwZjM4 LCAweGRlKTogLyogdmFlc2RlYyBbeHl6XW1tL21lbSxbeHl6XW1tLFt4eXpdbW0gKi8KKyAgICBj YXNlIFg4NkVNVUxfT1BDX0VWRVhfNjYoMHgwZjM4LCAweGRmKTogLyogdmFlc2RlY2xhc3QgW3h5 el1tbS9tZW0sW3h5el1tbSxbeHl6XW1tICovCisgICAgICAgIGhvc3RfYW5kX3ZjcHVfbXVzdF9o YXZlKHZhZXMpOworICAgICAgICBnZW5lcmF0ZV9leGNlcHRpb25faWYoZXZleC5icnMgfHwgZXZl eC5vcG1zaywgRVhDX1VEKTsKKyAgICAgICAgZ290byBhdng1MTJmX25vX3NhZTsKKwogICAgIGNh c2UgWDg2RU1VTF9PUEMoMHgwZjM4LCAweGYwKTogLyogbW92YmUgbSxyICovCiAgICAgY2FzZSBY ODZFTVVMX09QQygweDBmMzgsIDB4ZjEpOiAvKiBtb3ZiZSByLG0gKi8KICAgICAgICAgdmNwdV9t dXN0X2hhdmUobW92YmUpOwotLS0gYS94ZW4vaW5jbHVkZS9hc20teDg2L2NwdWZlYXR1cmUuaAor KysgYi94ZW4vaW5jbHVkZS9hc20teDg2L2NwdWZlYXR1cmUuaApAQCAtMTEyLDYgKzExMiw3IEBA CiAvKiBDUFVJRCBsZXZlbCAweDAwMDAwMDA3OjAuZWN4ICovCiAjZGVmaW5lIGNwdV9oYXNfYXZ4 NTEyX3ZibWkgICAgIGJvb3RfY3B1X2hhcyhYODZfRkVBVFVSRV9BVlg1MTJfVkJNSSkKICNkZWZp bmUgY3B1X2hhc19hdng1MTJfdmJtaTIgICAgYm9vdF9jcHVfaGFzKFg4Nl9GRUFUVVJFX0FWWDUx Ml9WQk1JMikKKyNkZWZpbmUgY3B1X2hhc192YWVzICAgICAgICAgICAgYm9vdF9jcHVfaGFzKFg4 Nl9GRUFUVVJFX1ZBRVMpCiAjZGVmaW5lIGNwdV9oYXNfdnBjbG11bHFkcSAgICAgIGJvb3RfY3B1 X2hhcyhYODZfRkVBVFVSRV9WUENMTVVMUURRKQogI2RlZmluZSBjcHVfaGFzX2F2eDUxMl92bm5p ICAgICBib290X2NwdV9oYXMoWDg2X0ZFQVRVUkVfQVZYNTEyX1ZOTkkpCiAjZGVmaW5lIGNwdV9o YXNfYXZ4NTEyX2JpdGFsZyAgIGJvb3RfY3B1X2hhcyhYODZfRkVBVFVSRV9BVlg1MTJfQklUQUxH KQotLS0gYS94ZW4vaW5jbHVkZS9wdWJsaWMvYXJjaC14ODYvY3B1ZmVhdHVyZXNldC5oCisrKyBi L3hlbi9pbmNsdWRlL3B1YmxpYy9hcmNoLXg4Ni9jcHVmZWF0dXJlc2V0LmgKQEAgLTIyOSw2ICsy MjksNyBAQCBYRU5fQ1BVRkVBVFVSRShVTUlQLCAgICAgICAgICA2KjMyKyAyKSAvCiBYRU5fQ1BV RkVBVFVSRShQS1UsICAgICAgICAgICA2KjMyKyAzKSAvKkggIFByb3RlY3Rpb24gS2V5cyBmb3Ig VXNlcnNwYWNlICovCiBYRU5fQ1BVRkVBVFVSRShPU1BLRSwgICAgICAgICA2KjMyKyA0KSAvKiEg IE9TIFByb3RlY3Rpb24gS2V5cyBFbmFibGUgKi8KIFhFTl9DUFVGRUFUVVJFKEFWWDUxMl9WQk1J MiwgIDYqMzIrIDYpIC8qQSAgQWRkaXRpb25hbCBBVlgtNTEyIFZlY3RvciBCeXRlIE1hbmlwdWxh dGlvbiBJbnN0cnMgKi8KK1hFTl9DUFVGRUFUVVJFKFZBRVMsICAgICAgICAgIDYqMzIrIDkpIC8q QSAgVmVjdG9yIEFFUyBJbnN0cnMgKi8KIFhFTl9DUFVGRUFUVVJFKFZQQ0xNVUxRRFEsICAgIDYq MzIrMTApIC8qQSAgVmVjdG9yIENhcnJ5LWxlc3MgTXVsdGlwbGljYXRpb24gSW5zdHJzICovCiBY RU5fQ1BVRkVBVFVSRShBVlg1MTJfVk5OSSwgICA2KjMyKzExKSAvKkEgIFZlY3RvciBOZXVyYWwg TmV0d29yayBJbnN0cnMgKi8KIFhFTl9DUFVGRUFUVVJFKEFWWDUxMl9CSVRBTEcsIDYqMzIrMTIp IC8qQSAgU3VwcG9ydCBmb3IgVlBPUENOVFtCLFddIGFuZCBWUFNIVUZCSVRRTUIgKi8KLS0tIGEv eGVuL3Rvb2xzL2dlbi1jcHVpZC5weQorKysgYi94ZW4vdG9vbHMvZ2VuLWNwdWlkLnB5CkBAIC0y NTcsNyArMjU3LDcgQEAgZGVmIGNydW5jaF9udW1iZXJzKHN0YXRlKToKICAgICAgICAgIyBmZWF0 dXJlIGZsYWdzLiAgSWYgd2FudCB0byB1c2UgQVZYNTEyLCBBVlgyIG11c3QgYmUgc3VwcG9ydGVk IGFuZAogICAgICAgICAjIGVuYWJsZWQuICBDZXJ0YWluIGxhdGVyIGV4dGVuc2lvbnMsIGFjdGlu ZyBvbiAyNTYtYml0IHZlY3RvcnMgb2YKICAgICAgICAgIyBpbnRlZ2VycywgYmV0dGVyIGRlcGVu ZCBvbiBBVlgyIHRoYW4gQVZYLgotICAgICAgICBBVlgyOiBbQVZYNTEyRiwgVlBDTE1VTFFEUV0s CisgICAgICAgIEFWWDI6IFtBVlg1MTJGLCBWQUVTLCBWUENMTVVMUURRXSwKIAogICAgICAgICAj IEFWWDUxMkYgaXMgdGFrZW4gdG8gbWVhbiBoYXJkd2FyZSBzdXBwb3J0IGZvciA1MTJiaXQgcmVn aXN0ZXJzCiAgICAgICAgICMgKHdoaWNoIGluIHByYWN0aWNlIGRlcGVuZHMgb24gdGhlIEVWRVgg cHJlZml4IHRvIGVuY29kZSkgYXMgd2VsbAoKCgoKX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX18KWGVuLWRldmVsIG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlz dHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xp c3RpbmZvL3hlbi1kZXZlbA==