From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Jan Beulich" Subject: Re: [PATCH v3 20/25] x86emul: correctly handle CMPXCHG* comparison failures Date: Mon, 05 Feb 2018 01:07:54 -0700 Message-ID: <5A781EEA02000078001A510C@prv-mh.provo.novell.com> References: <5A29550C020000780019585B@prv-mh.provo.novell.com> <5A295B140200007800195988@prv-mh.provo.novell.com> <5f3f9e9b-7f11-9380-6875-5dfe2ecf7433@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1eibor-0006Et-Hr for xen-devel@lists.xenproject.org; Mon, 05 Feb 2018 08:08:05 +0000 In-Reply-To: <5f3f9e9b-7f11-9380-6875-5dfe2ecf7433@citrix.com> Content-Disposition: inline List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" To: Andrew Cooper Cc: George Dunlap , xen-devel , Tim Deegan List-Id: xen-devel@lists.xenproject.org Pj4+IE9uIDAyLjAyLjE4IGF0IDE1OjQ5LCA8YW5kcmV3LmNvb3BlcjNAY2l0cml4LmNvbT4gd3Jv dGU6Cj4gT24gMDcvMTIvMTcgMTQ6MTUsIEphbiBCZXVsaWNoIHdyb3RlOgo+PiAtLS0gYS94ZW4v YXJjaC94ODYvbW0vc2hhZG93L2NvbW1vbi5jCj4+ICsrKyBiL3hlbi9hcmNoL3g4Ni9tbS9zaGFk b3cvY29tbW9uLmMKPj4gQEAgLTMwMiw4ICszMDIsMTIgQEAgaHZtX2VtdWxhdGVfY21weGNoZyhl bnVtIHg4Nl9zZWdtZW50IHNlZwo+PiAgICAgIG1lbWNweSgmb2xkLCBwX29sZCwgYnl0ZXMpOwo+ PiAgICAgIG1lbWNweSgmbmV3LCBwX25ldywgYnl0ZXMpOwo+PiAgCj4+IC0gICAgcmV0dXJuIHYt PmFyY2gucGFnaW5nLm1vZGUtPnNoYWRvdy54ODZfZW11bGF0ZV9jbXB4Y2hnKAo+PiAtICAgICAg ICAgICAgICAgdiwgYWRkciwgb2xkLCBuZXcsIGJ5dGVzLCBzaF9jdHh0KTsKPj4gKyAgICByYyA9 IHYtPmFyY2gucGFnaW5nLm1vZGUtPnNoYWRvdy54ODZfZW11bGF0ZV9jbXB4Y2hnKAo+PiArICAg ICAgICAgICAgIHYsIGFkZHIsICZvbGQsIG5ldywgYnl0ZXMsIHNoX2N0eHQpOwoKRm9yIHRoZSBz YWtlIG9mIHRoZSByZXNwb25zZSBiZWxvdywgcGxlYXNlIG5vdGUgdGhlIHBhc3Npbmcgb2YKJm9s ZCAocmF0aGVyIHRoYW4gcF9vbGQpIGhlcmUuCgo+PiArCj4+ICsgICAgbWVtY3B5KHBfb2xkLCAm b2xkLCBieXRlcyk7Cj4gCj4gVGhpcyBpcyByZWR1bmRhbnQgd2l0aCAuLi4KPiAKPj4gKwo+PiAr ICAgIHJldHVybiByYzsKPj4gIH0KPj4gIAo+PiAgc3RhdGljIGNvbnN0IHN0cnVjdCB4ODZfZW11 bGF0ZV9vcHMgaHZtX3NoYWRvd19lbXVsYXRvcl9vcHMgPSB7Cj4+IC0tLSBhL3hlbi9hcmNoL3g4 Ni9tbS9zaGFkb3cvbXVsdGkuYwo+PiArKysgYi94ZW4vYXJjaC94ODYvbW0vc2hhZG93L211bHRp LmMKPj4gQEAgLTQ3NDEsMTEgKzQ3NDEsMTEgQEAgc2hfeDg2X2VtdWxhdGVfd3JpdGUoc3RydWN0 IHZjcHUgKnYsIHVucwo+PiAgCj4+ICBzdGF0aWMgaW50Cj4+ICBzaF94ODZfZW11bGF0ZV9jbXB4 Y2hnKHN0cnVjdCB2Y3B1ICp2LCB1bnNpZ25lZCBsb25nIHZhZGRyLAo+PiAtICAgICAgICAgICAg ICAgICAgICAgICAgdW5zaWduZWQgbG9uZyBvbGQsIHVuc2lnbmVkIGxvbmcgbmV3LAo+PiAtICAg ICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50IGJ5dGVzLCBzdHJ1Y3Qgc2hfZW11bGF0 ZV9jdHh0ICpzaF9jdHh0KQo+PiArICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBsb25n ICpwX29sZCwgdW5zaWduZWQgbG9uZyBuZXcsCj4+ICsgICAgICAgICAgICAgICAgICAgICAgIHVu c2lnbmVkIGludCBieXRlcywgc3RydWN0IHNoX2VtdWxhdGVfY3R4dCAqc2hfY3R4dCkKPj4gIHsK Pj4gICAgICB2b2lkICphZGRyOwo+PiAtICAgIHVuc2lnbmVkIGxvbmcgcHJldjsKPj4gKyAgICB1 bnNpZ25lZCBsb25nIHByZXYsIG9sZCA9ICpwX29sZDsKPj4gICAgICBpbnQgcnYgPSBYODZFTVVM X09LQVk7Cj4+ICAKPj4gICAgICAvKiBVbmFsaWduZWQgd3JpdGVzIGFyZSBvbmx5IGFjY2VwdGFi bGUgb24gSFZNICovCj4+IEBAIC00NzY5LDcgKzQ3NjksMTAgQEAgc2hfeDg2X2VtdWxhdGVfY21w eGNoZyhzdHJ1Y3QgdmNwdSAqdiwgdQo+PiAgICAgIH0KPj4gIAo+PiAgICAgIGlmICggcHJldiAh PSBvbGQgKQo+PiAtICAgICAgICBydiA9IFg4NkVNVUxfUkVUUlk7Cj4+ICsgICAgewo+PiArICAg ICAgICAqcF9vbGQgPSBwcmV2Owo+IAo+IC4uLiB0aGlzLCBpcyBpdCBub3Q/CgpObywgaGVyZSB3 ZSBjb3B5IGluZm8gaHZtX2VtdWxhdGVfY21weGNoZygpJ3MgbG9jYWwgdmFyaWFibGUsCndoaWxl IHRoZXJlIHdlIGNvcHkgaW50byBpdHMgY2FsbGVyJ3Mgb25lLiBCdXQgYW55d2F5LCB0aGUgZG91 YmxlCmNvcHlpbmcgZ2V0cyBlbGltaW5hdGVkIGJ5IHBhdGNoIDI1LgoKPj4gLS0tIGEveGVuL2Fy Y2gveDg2L3B2L3JvLXBhZ2UtZmF1bHQuYwo+PiArKysgYi94ZW4vYXJjaC94ODYvcHYvcm8tcGFn ZS1mYXVsdC5jCj4+IEBAIC02NSwxNCArNjUsMTYgQEAgc3RhdGljIGludCBwdHdyX2VtdWxhdGVk X3JlYWQoZW51bSB4ODZfcwo+PiAgICAgIHJldHVybiBYODZFTVVMX09LQVk7Cj4+ICB9Cj4+ICAK Pj4gLXN0YXRpYyBpbnQgcHR3cl9lbXVsYXRlZF91cGRhdGUodW5zaWduZWQgbG9uZyBhZGRyLCBw YWRkcl90IG9sZCwgcGFkZHJfdCB2YWwsCj4+IC0gICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIHVuc2lnbmVkIGludCBieXRlcywgdW5zaWduZWQgaW50IGRvX2NtcHhjaGcsCj4+ICtzdGF0 aWMgaW50IHB0d3JfZW11bGF0ZWRfdXBkYXRlKHVuc2lnbmVkIGxvbmcgYWRkciwgaW50cHRlX3Qg KnBfb2xkLAo+PiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnRwdGVfdCB2YWws IHVuc2lnbmVkIGludCBieXRlcywKPj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg c3RydWN0IHg4Nl9lbXVsYXRlX2N0eHQgKmN0eHQpCj4+ICB7Cj4+ICAgICAgdW5zaWduZWQgbG9u ZyBtZm47Cj4+ICAgICAgdW5zaWduZWQgbG9uZyB1bmFsaWduZWRfYWRkciA9IGFkZHI7Cj4+ICAg ICAgc3RydWN0IHBhZ2VfaW5mbyAqcGFnZTsKPj4gICAgICBsMV9wZ2VudHJ5X3QgcHRlLCBvbDFl LCBubDFlLCAqcGwxZTsKPj4gKyAgICBpbnRwdGVfdCBvbGQgPSBwX29sZCA/ICpwX29sZCA6IDA7 Cj4+ICsgICAgdW5zaWduZWQgaW50IG9mZnNldCA9IDA7Cj4gCj4gSSByZWFsbHkgdGhpbmsgdGhp cyBjb252ZXJzaW9uIHRvIGludHB0ZSBuZWVkcyBzcGxpdHRpbmcgb3V0IGludG8gYQo+IHNlcGFy YXRlIHBhdGNoLiAgWW91J3JlIG1ha2luZyBtdWx0aXBsZSBjaGFuZ2VzIGluIHRoaXMgZnVuY3Rp b24gd2hpY2gKPiBhcmVuJ3QgYXQgY29tbWl0IG1lc3NhZ2UgYXQgYWxsLCBpbmNsdWRpbmcgaW50 cm9kdWNpbmcgdGhlIGRpc3RpbmN0aW9uCj4gSSd2ZSBqdXN0IG5vdGVkIG9mICpwX29sZCBiZWlu ZyBOVUxMIG1lYW5pbmcgYSB3cml0ZSByYXRoZXIgdGhhbiBjbXB4Y2hnLgoKSSBjYW4gc3BsaXQg b3V0IHRoZSB0eXBlIGNoYW5nZSwgYnV0IHlvdSByZWFsaXplIHRoaXMgbWVhbnMgdG91Y2hpbmcK dHdpY2Ugc29tZSBvZiB0aGUgZXhhY3Qgc2FtZSBjb2RlPyBBcyB0byBjaGFuZ2VzIG5vdCBtZW50 aW9uZWQKaW4gdGhlIGNvbW1pdCBtZXNzYWdlIC0gSSdtIGhhdmluZyB0cm91YmxlIHRvIHNwb3Qg dGhvc2UgKHRoZSB0eXBlCmNoYW5nZSBpcyBtZW50aW9uZWQpLgoKPiBPbiB0aGF0IG5vdGUgc3Bl Y2lmaWNhbGx5LCBpdCB3b3VsZCBiZSBjbGVhcmVyIHRvIGhhdmUgImNvbnN0IGJvb2wKPiBkb19j bXB4Y2hnID0gKnBfb2xkOyAvKiBjbXB4Y2hnLCBvciB3cml0ZT8gKi8iLiAgSWYgeW91IGRvbid0 IHdhbnQgdG8gZG8KPiBpdCwgdGhlbiB0aGVyZSBuZWVkcyB0byBiZSBhIGNvbW1lbnQgd2l0aCB0 aGUgZnVuY3Rpb24gZXhwbGFpbmluZyB0aGUKPiBzZW1hbnRpY3Mgb2YgcF9vbGQuCgpJJ2xsIGFk ZCBhIGNvbW1lbnQsIGV2ZW4gaWYgSSBoYXZlIGEgaGFyZCB0aW1lIGZpbmRpbmcgYSBnb29kIHBs YWNlCnRvIHB1dCBpdC4gQWhlYWQgb2YgdGhlIGZ1bmN0aW9uIGlzbid0IHJlYWxseSBhIGdvb2Qg cGxhY2UgaW1vLCBidXQgSQphbHNvIGNhbid0IGZpZ3VyZSBhbnl0aGluZyBiZXR0ZXIuCgpKYW4K CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpYZW4tZGV2 ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xp c3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8veGVuLWRldmVs