From mboxrd@z Thu Jan 1 00:00:00 1970 From: Shuai Ruan Subject: Re: [V5] x86/xsaves: fix overwriting between non-lazy/lazy xsaves Date: Wed, 23 Mar 2016 14:14:55 +0800 Message-ID: <21085.0971438505$1458713930@news.gmane.org> References: <1458270080-19493-1-git-send-email-shuai.ruan@linux.intel.com> <56F1660902000078000DF38B@prv-mh.provo.novell.com> <20160323020224.GB4131@shuai.ruan@linux.intel.com> Reply-To: Shuai Ruan Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Content-Disposition: inline In-Reply-To: <20160323020224.GB4131@shuai.ruan@linux.intel.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: Jan Beulich Cc: andrew.cooper3@citrix.com, keir@xen.org, xen-devel@lists.xen.org List-Id: xen-devel@lists.xenproject.org T24gV2VkLCBNYXIgMjMsIDIwMTYgYXQgMTA6MDI6MjRBTSArMDgwMCwgU2h1YWkgUnVhbiB3cm90 ZToKPiA+ID4gLSAgICAvKiBTZXQgWFNUQVRFX0JWIGFuZCBYQ09NUF9CVi4gICovCj4gPiA+ICsg ICAgLyogU2V0IFhTVEFURV9CVi4gICovCj4gPiA+ICAgICAgeHNhdmUtPnhzYXZlX2hkci54c3Rh dGVfYnYgPSB4c3RhdGVfYnY7Cj4gPiA+IC0gICAgeHNhdmUtPnhzYXZlX2hkci54Y29tcF9idiA9 IHYtPmFyY2gueGNyMF9hY2N1bSB8IFhTVEFURV9DT01QQUNUSU9OX0VOQUJMRUQ7Cj4gPiA+ICAg ICAgc2V0dXBfeHN0YXRlX2NvbXAoeHN0YXRlX2NvbXBfb2Zmc2V0cywgeHN0YXRlX2J2KTsKPiA+ IAo+ID4gSSBzZWUgeW91IHNldCB4Y29tcF9idiAoYW5kIGhlbmNlIHRoZSBjb21wYWN0aW9uIGJp dCkgaW4geHJzdG9yKCkKPiA+IG5vdywgYnV0IGFmYWljdCB0aGF0IGRvZXNuJ3QgYWxsb3cgeW91 IHRvIGNvbXBsZXRlbHkgZHJvcCBpbml0aWFsaXppbmcKPiA+IHRoZSBmaWVsZCBoZXJlLCBhcyB0 aGUgY29kZSB0aGVyZSBsb29rcyBhdCB0aGUgY29tcGFjdGlvbiBiaXQuCj4gPiAKPiA+ID4gKyAg ICAgICAgICAgICAgICBpZiAoIHVubGlrZWx5KCEocHRyLT54c2F2ZV9oZHIueGNvbXBfYnYgJgo+ ID4gPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBYU1RBVEVfQ09NUEFDVElPTl9F TkFCTEVEKSkgKQo+ID4gPiArICAgICAgICAgICAgICAgIHB0ci0+eHNhdmVfaGRyLnhjb21wX2J2 ID0gcHRyLT54c2F2ZV9oZHIueHN0YXRlX2J2Cj4gPiA+ICsJCQkJCQkgIHxYU1RBVEVfQ09NUEFD VElPTl9FTkFCTEVEOwo+ID4gPiArCj4gPiA+ICsgICAgICAgICAgICAgICAgWFJTVE9SKCIweDQ4 LCIsIjB4MGYsMHhjNywweDFmIik7IC8qIHhyc3RvcnMgKi8KPiA+ID4gKyAJICAgIH0KPiA+ID4g KyAgICAgICAgICAgIGVsc2UKPiA+ID4gKyAgICAgICAgICAgICAgICBYUlNUT1IoIjB4NDgsIiwi MHgwZiwweGFlLDB4MmYiKTsgLyogeHJzdG9yICovCj4gPiAKPiA+IEF0IHRoaXMgcG9pbnQsIHdo YXQgZ3VhcmFudGVlcyB0aGF0IHhjb21wX2J2IGlzIHplcm8sIG5vIG1hdHRlcgo+ID4gd2hlcmUg dGhlIHN0YXRlIHRvIGJlIGxvYWRlZCBvcmlnaW5hdGVzIGZyb20/IEkgdGhpbmsgYXQgbGVhc3Qg aW4KPiA+IGFyY2hfc2V0X2luZm9fZ3Vlc3QoKSwgaHZtX2xvYWRfY3B1X2N0eHQoKSwgYW5kCj4g PiBodm1fdmNwdV9yZXNldF9zdGF0ZSgpIHlvdSB3ZW50IHRvbyBmYXIgZGVsZXRpbmcgY29kZSwg YW5kIHlvdQo+ID4gcmVhbGx5IG5lZWQgdG8ga2VlcCB0aGUgc3RvcmluZyBvZiB6ZXJvIHRoZXJl LiBEaWQgeW91IGRyYXcsIGp1c3QKPiA+IGZvciB5b3Vyc2VsZiwgbWVudGFsbHkgb3Igb24gYSBz aGVldCBvZiBwYXBlciwgYSBkaWFncmFtIGlsbHVzdHJhdGluZwo+ID4gdGhlIHZhcmlvdXMgc3Rh dGUgdHJhbnNpdGlvbnM/Cj4gPiAKPiBGb3IgYWJvdmUgdHdvIGNvbW1lbnRzLgo+IAo+IFRoZSBw YXRjaCBpcyBiYXNlIG9uIFt2NF14ODYveHNhdmVzOiBjYWxjdWxhdGUgdGhlIHhzdGF0ZV9jb21w X29mZnNldHMgYmFzZQo+IG9uIHhzdGF0ZV9idiBhbmQgSSBhbnN3ZXIgeW91ciBxdWVzdGlvbiBv biB3aHkgY2FjdWxhdGUgeHN0YXRlX2NvbXBfb2Zmc2V0Cj4gYmFzZWQgb24geHN0YXRlX2J2IGlu IHByZXZpb3VzIHRocmVhZC4gSWYgdGhhdCBpcyByaWdodCwgZHJvcAo+IGluaXRpYWxpemluZyB4 Y29tcF9idiBpcyBvay4gTm93IHhjb21wX2J2IGNhbiBndWFyYW50ZWUgdG8gYmUgemVybyBmb3Ig Cj4gYXJjaF9zZXRfaW5mb19ndWVzdCgpIGFuZCBodm1fbG9hZF9jcHVfY3R4dCgpLiBJZiB0aGUg ZHJvcCBpcyB3cm9uZwo+IChkdWUgdG8gbXkgbWlzdW5kZXJzdGFuZCBvZiB0aGUgU0RNKSwgSSB3 aWxsIGNoYW5nZSB0aGUgaWYgKCkgaGVyZS4KPiAKSWdub3JlIHRoZSBhYm92ZSBwYXJhZ3JhcGgs IEkgcmVhbGl6ZWQgdGhhdCBbdjRdeDg2L3hzYXZlczogY2FsY3VsYXRlCnRoZSB4c3RhdGVfY29t cF9vZmZzZXRzIGJhc2Ugb24geHN0YXRlX2J2IGlzIHdyb25nKHNob3VsZCBiZSBiYXNlIG9uCnhj b21wX2J2IGFzIHByZXZpb3VzIHZlcnNpb24pLiBUaGVuIEkgc2hvdWxkIG5vdCBkZWxldGUgdGhl IGNvZGUgCmluaXRpYWxpemluZyB0aGUgeGNvbXBfYnYgaW4gY29tcHJlc3NfeHNhdmVfc3RhdGUo KSAKQnV0IGZvciBodm1fdmNwdV9yZXNldF9zdGF0ZSgpLCBJIHRoaW5rIHdlIHNob3VsZCBkZWxl dGluZyB0aGUgY29kZQppbml0aWFsaXppbmcgdGhlIHhjb21wX2J2IGFzIHNhaWQgYmVsb3cuCj4g Rm9yIGh2bV92Y3B1X3Jlc2V0X3N0YXRlKCksIHdlIHNob3VsZCBkZXBlbmQgb24gd2hldGhlciB4 c2F2ZXMgaXMgdXNlZCAKPiB0byBkZWNpZGUgd2hldGhlciB0byBpbml0IHhjb21wX2J2IG9yIG5v dC4gQW5kIGN1cnJlbnRseSB3ZSB1c2UKPiB4Y3IwX2FjY3VtIHRvIGluZGljYXRlIHRoZSB1c2Ug b2YgeHNhdmVzLCB3aGVuIGh2bV92Y3B1X3Jlc2V0X3N0YXRlKCkKPiBpcyBjYWxsZWQgLCBjYW4g dmNwdS0+eGNyMF9hY2N1bSBpbmRpY2F0ZSB1c2luZyBvZiB4c2F2ZXMgPwo+IEkgdGhpbmsgaW4g aHZtX3ZjcHVfcmVzZXRfc3RhdGUoKSwgd2Ugc2hvdWxkIGxlYXZlIHhjb21wX2J2IHplcm8uCj4g Cgo+ID4gU2luY2UgYWdhaW4geW91IHJlcGVhdCB0aGUgc2FtZSBsb2dpYyB0d2ljZSwgdGhpcyBz aG91bGQgYWdhaW4gaGF2ZQo+ID4gYmVlbiBhIHNpZ25hbCB0aGF0IGFsbCB5b3VyIGNoYW5nZXMg c2hvdWxkIGdvIGludG8gdGhlIFhSU1RPUigpCj4gPiBtYWNyby4gT3IgYWx0ZXJuYXRpdmVseSwg c2luY2UgdGhlIGV4Y2VwdGlvbiBmaXh1cCBhbHNvIGRpZmZlcnMsIHlvdQo+ID4gbWF5IHdhbnQg dG8gY29udmVydCB0aGUgd2hvbGUgbG9naWMgaW50byBhbiBYU0FWRVMgYW5kIGFuIFhTQVZFCj4g PiBwYXRoLiBNeSBvbmx5IHJlYWxseSBzaW5jZXJlIHJlcXVlc3QgaGVyZSBpcyAtIGFzIGxpdHRs ZSByZWR1bmRhbmN5IGFzCj4gPiBwb3NzaWJsZSwgc2luY2UgaGF2aW5nIHRvIGNoYW5nZSB0aGUg c2FtZSB0aGluZyB0d2ljZSBpbiBtb3JlIHRoYW4KPiA+IG9uZSBwbGFjZSBpcyBhbHdheXMgY2Fs bGluZyBmb3IgdHJvdWJsZS4KSSB3aWxsIGRvIGFsbCBjaGFuZ2VzIG9ubHkgaW4gWFJTVE9SKCku IENvZGUgbGlrZSA6IAoKI2RlZmluZSBfWFJTVE9SKHBmeCwgeHJzdG9yX2lucykKICAgICAgIGFz bSB2b2xhdGlsZSAoICIxOiAuYnl0ZSAiIHBmeCB4cnN0b3JfaW5zIlxuIiBcCiAgICAgICAJCSAg ICAgICIzOlxuIiBcCgkJICAgICAgIiAgIC5zZWN0aW9uIC5maXh1cCxcImF4XCJcbiIgXAoJCSAg ICAgICIyOiBpbmNsICVbZmF1bHRzXVxuIiBcCgkJICAgICAgIiAgIGptcCAzYlxuIiBcCgkJICAg ICAgIiAgIC5wcmV2aW91c1xuIiBcCiAgICAgICAgICAgICAgICAgICAgICBfQVNNX0VYVEFCTEUo MWIsIDJiKSBcCiAgICAgICAgICAgICAgICAgICAgICA6IFttZW1dICIrbSIgKCpwdHIpLCBbZmF1 bHRzXSAiK2ciIChmYXVsdHMpIFwKICAgICAgICAgICAgICAgICAgICAgIDogW2xtYXNrXSAiYSIg KGxtYXNrKSwgW2htYXNrXSAiZCIgKGhtYXNrKSwgXAogICAgICAgICAgICAgICAgICAgICAgW3B0 cl0gIkQiIChwdHIpICkKCiNkZWZpbmUgWFJTVE9SKHBmeCkgXAogICAgICAgICAgICBpZiAoIHYt PmFyY2gueGNyMF9hY2N1bSAmIFhTVEFURV9YU0FWRVNfT05MWSApIFwKICAgICAgICAgICAgeyBc CiAgICAgICAgICAgICAgICBpZiAoIHVubGlrZWx5KCEocHRyLT54c2F2ZV9oZHIueGNvbXBfYnYg XAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICYgWFNUQVRFX0NPTVBBQ1RJT05fRU5B QkxFRCkpICkgXAogICAgICAgICAgICAgICAgICAgIHB0ci0+eHNhdmVfaGRyLnhjb21wX2J2IHw9 IChwdHItPnhzYXZlX2hkci54c3RhdGVfYnYgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICB8IFhTVEFURV9DT01QQUNUSU9OX0VOQUJMRUQpOyBcCgkJX1hS U1RPUigiMHg0OCwgIiwgIjB4MGYsMHhjNywweDFmIik7IFwKCSAgICB9IFwKCSAgICBlbHNlIFwK CSAgICB7IFwKCQlfWFJTVE9SKCIweDQ4LCAiLCAiMHgwZiwweGFlLDB4MmYiKTsgXAoJICAgIH0K Li4uLgojdW5kZWYgWFJTVE9SCiN1bmRlZiBfWFJTVE9SCgpBIG5vdyB3YXBwZXIgaXMgaW50cnVk dWNlZCBhcyAiX1hSU1RPUiIoIG1heWJlIHRoZSBtYWNybyBuYW1lIGlzIG5vdApnb29kICkuIAoK PiA+IFhlbi1kZXZlbEBsaXN0cy54ZW4ub3JnCj4gPiBodHRwOi8vbGlzdHMueGVuLm9yZy94ZW4t ZGV2ZWwKPiAKPiBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f Xwo+IFhlbi1kZXZlbCBtYWlsaW5nIGxpc3QKPiBYZW4tZGV2ZWxAbGlzdHMueGVuLm9yZwo+IGh0 dHA6Ly9saXN0cy54ZW4ub3JnL3hlbi1kZXZlbAoKX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX18KWGVuLWRldmVsIG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlz dHMueGVuLm9yZwpodHRwOi8vbGlzdHMueGVuLm9yZy94ZW4tZGV2ZWwK