From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Jan Beulich" Subject: Re: [PATCH 2/6] x86/domctl: Fix TOCTOU race with the use of XEN_DOMCTL_getvcpuextstate Date: Mon, 12 Sep 2016 05:17:48 -0600 Message-ID: <57D6AAFC020000780010DFE0@prv-mh.provo.novell.com> References: <1473673900-8585-1-git-send-email-andrew.cooper3@citrix.com> <1473673900-8585-3-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: <1473673900-8585-3-git-send-email-andrew.cooper3@citrix.com> Content-Disposition: inline List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: Andrew Cooper Cc: Xen-devel List-Id: xen-devel@lists.xenproject.org Pj4+IE9uIDEyLjA5LjE2IGF0IDExOjUxLCA8YW5kcmV3LmNvb3BlcjNAY2l0cml4LmNvbT4gd3Jv dGU6Cj4gQSB0b29sc3RhY2sgbXVzdCBjYWxsIFhFTl9ET01DVExfZ2V0dmNwdWV4dHN0YXRlIHR3 aWNlOyBmaXJzdCB0byBmaW5kIHRoZSBzaXplCj4gb2YgdGhlIGJ1ZmZlciB0byB1c2UsIGFuZCBh IHNlY29uZCB0aW1lIHRvIGdldCB0aGUgYWN0dWFsIGNvbnRlbnQuCj4gCj4gVGhlIHJlcG9ydGVk IHNpemUgd2FzIGJhc2VkIG9uIHYtPmFyY2gueGNyMF9hY2N1bSwgYnV0IGEgZ3Vlc3Qgd2hpY2gg ZXh0ZW5kcwo+IGl0cyB4Y3IwX2FjY3VtIGJldHdlZW4gdGhlIHR3byBoeXBlcmNhbGxzIHdpbGwg Y2F1c2UgdGhlIHRvb2xzdGFjayB0byBmYWlsIHRoZQo+IGV2Yy0+c2l6ZSAhPSBzaXplIGNoZWNr LCBhcyB0aGUgcHJvdmlkZWQgYnVmZmVyIGlzIG5vdyB0b28gc21hbGwuICBUaGlzIGNhdXNlcwo+ IGEgaGFyZCBlcnJvciBkdXJpbmcgdGhlIGZpbmFsIHBoYXNlIG9mIG1pZ3JhdGlvbi4KPiAKPiBJ bnN0ZWFkLCByZXR1cm4gcmV0dXJuIGEgc2l6ZSBiYXNlZCBvbiB4ZmVhdHVyZV9tYXNrLCB3aGlj aCBpcyB0aGUgbWF4aW11bQo+IHNpemUgWGVuIHdpbGwgZXZlciBwZXJtaXQuICBUaGUgaHlwZXJj YWxsIG11c3Qgbm93IHRvbGVyYXRlIGEKPiB0b29sc3RhY2stcHJvdmlkZWQgYnVmZmVyIHdoaWNo IGlzIG92ZXJseSBsYXJnZSAoZm9yIHRoZSBjYXNlIHdoZXJlIGEgZ3Vlc3QKPiBpc24ndCB1c2lu ZyBhbGwgYXZhaWxhYmxlIHhzYXZlIHN0YXRlcyksIGFuZCBzaG91bGQgd3JpdGUgYmFjayBob3cg bXVjaCBkYXRhCj4gd2FzIGFjdHVhbGx5IHdyaXR0ZW4gaW50byB0aGUgYnVmZmVyLgoKVG8gYmUg aG9uZXN0LCBJJ20gb2YgdHdvIG1pbmRzIGhlcmUuIFBhcnQgb2YgbWUgdGhpbmtzIHRoaXMgaXMg YW4Kb2theSBjaGFuZ2UuIEhvd2V2ZXIsIGluIHBhcnRpY3VsYXIgLi4uCgo+IC0tLSBhL3hlbi9h cmNoL3g4Ni9kb21jdGwuYwo+ICsrKyBiL3hlbi9hcmNoL3g4Ni9kb21jdGwuYwo+IEBAIC0xMDU0 LDE5ICsxMDU0LDI1IEBAIGxvbmcgYXJjaF9kb19kb21jdGwoCj4gICAgICAgICAgICAgIHVuc2ln bmVkIGludCBzaXplOwo+ICAKPiAgICAgICAgICAgICAgcmV0ID0gMDsKPiAtICAgICAgICAgICAg dmNwdV9wYXVzZSh2KTsKPiAgCj4gLSAgICAgICAgICAgIHNpemUgPSBQVl9YU0FWRV9TSVpFKHYt PmFyY2gueGNyMF9hY2N1bSk7Cj4gICAgICAgICAgICAgIGlmICggKCFldmMtPnNpemUgJiYgIWV2 Yy0+eGZlYXR1cmVfbWFzaykgfHwKPiAgICAgICAgICAgICAgICAgICBndWVzdF9oYW5kbGVfaXNf bnVsbChldmMtPmJ1ZmZlcikgKQo+ICAgICAgICAgICAgICB7Cj4gKyAgICAgICAgICAgICAgICAv Kgo+ICsgICAgICAgICAgICAgICAgICogQSBxdWVyeSBmb3IgdGhlIHNpemUgb2YgYnVmZmVyIHRv IHVzZS4gIE11c3QgcmV0dXJuIHRoZQo+ICsgICAgICAgICAgICAgICAgICogbWF4aW11bSBzaXpl IHdlIGV2ZXIgbWlnaHQgaGFuZCBiYWNrIHRvIHVzZXJzcGFjZSwgYmVhcmluZwo+ICsgICAgICAg ICAgICAgICAgICogaW4gbWluZCB0aGF0IHRoZSB2Y3B1IG1pZ2h0IGluY3JlYXNlIGl0cyB4Y3Iw X2FjY3VtIGJldHdlZW4KPiArICAgICAgICAgICAgICAgICAqIHRoaXMgcXVlcnkgZm9yIHNpemUs IGFuZCB0aGUgZm9sbG93aW5nIHF1ZXJ5IGZvciBkYXRhLgo+ICsgICAgICAgICAgICAgICAgICov Cj4gICAgICAgICAgICAgICAgICBldmMtPnhmZWF0dXJlX21hc2sgPSB4ZmVhdHVyZV9tYXNrOwo+ IC0gICAgICAgICAgICAgICAgZXZjLT5zaXplID0gc2l6ZTsKPiAtICAgICAgICAgICAgICAgIHZj cHVfdW5wYXVzZSh2KTsKPiArICAgICAgICAgICAgICAgIGV2Yy0+c2l6ZSA9IFBWX1hTQVZFX1NJ WkUoeGZlYXR1cmVfbWFzayk7Cj4gICAgICAgICAgICAgICAgICBnb3RvIHZjcHVleHRzdGF0ZV9v dXQ7Cj4gICAgICAgICAgICAgIH0KPiAgCj4gLSAgICAgICAgICAgIGlmICggZXZjLT5zaXplICE9 IHNpemUgfHwgZXZjLT54ZmVhdHVyZV9tYXNrICE9IHhmZWF0dXJlX21hc2sgKQo+ICsgICAgICAg ICAgICB2Y3B1X3BhdXNlKHYpOwo+ICsgICAgICAgICAgICBzaXplID0gUFZfWFNBVkVfU0laRSh2 LT5hcmNoLnhjcjBfYWNjdW0pOwo+ICsKPiArICAgICAgICAgICAgaWYgKCBldmMtPnNpemUgPCBz aXplIHx8IGV2Yy0+eGZlYXR1cmVfbWFzayAhPSB4ZmVhdHVyZV9tYXNrICkKCi4uLiB0aGUgcmVs YXhhdGlvbiBmcm9tICE9IHRvIDwgbG9va3Mgc29tZXdoYXQgZnJhZ2lsZSB0byBtZSwgZ29pbmcK Zm9yd2FyZC4gRGlkIHlvdSBjb25zaWRlciBkZWFsaW5nIHdpdGggdGhlIGlzc3VlIGluIHRoZSB0 b29sIHN0YWNrPyBJdApjYW4ndCBiZSB0aGF0IGhhcmQgdG8gcmVwZWF0IHRoZSBzaXplIHF1ZXJ5 IGluIGNhc2UgZGF0YSByZXRyaWV2YWwgZmFpbHMuClN1Y2ggcmV0cnkgbG9naWMgd291bGQgYmUg d2VsbCBib3VuZGVkIGluIHRlcm1zIG9mIGl0ZXJhdGlvbnMgaXQgY2FuCnBvdGVudGlhbGx5IHRh a2UuIEluIGZhY3QgLi4uCgo+IEBAIC0xMTAzLDYgKzExMDksMTAgQEAgbG9uZyBhcmNoX2RvX2Rv bWN0bCgKPiAgICAgICAgICAgICB9Cj4gIAo+ICAgICAgICAgICAgICB2Y3B1X3VucGF1c2Uodik7 Cj4gKwo+ICsgICAgICAgICAgICAvKiBTcGVjaWZ5IGhvdyBtdWNoIGRhdGEgd2UgYWN0dWFsbHkg d3JvdGUgaW50byB0aGUgYnVmZmVyLiAqLwo+ICsgICAgICAgICAgICBpZiAoICFyZXQgKQo+ICsg ICAgICAgICAgICAgICAgZXZjLT5zaXplID0gc2l6ZTsKCi4uLiBpZiB0aGlzIGdvdCB3cml0dGVu IG9uIHRoZSBlYXJsaWVyIGVycm9yIHBhdGgsIHRoZXJlIHdvdWxkbid0IGV2ZW4KYmUgYSBuZWVk IHRvIHJldHJ5IHRoZSBzaXplIHF1ZXJ5OiBEYXRhIHJldHJpZXZhbCBjb3VsZCBiZSByZXRyaWVk CndpdGggdGhlIG5ldyBzaXplIHJpZ2h0IGFmdGVyIGVubGFyZ2luZyB0aGUgYnVmZmVyLgoKSmFu CgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KWGVuLWRl dmVsIG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVuLm9yZwpodHRwczovL2xpc3RzLnhl bi5vcmcveGVuLWRldmVsCg==