From mboxrd@z Thu Jan 1 00:00:00 1970 Return-path: Received: from mx1.redhat.com ([209.132.183.28]) by merlin.infradead.org with esmtp (Exim 4.76 #1 (Red Hat Linux)) id 1Tabm9-0003vs-I3 for kexec@lists.infradead.org; Tue, 20 Nov 2012 00:33:18 +0000 Date: Mon, 19 Nov 2012 22:32:58 -0200 From: Marcelo Tosatti Subject: Re: [PATCH v4 0/2] x86: clear vmcss on all cpus when doing kdump if necessary Message-ID: <20121120003258.GA1292@amt.cnet> References: <50A3645F.60302@cn.fujitsu.com> <50A611AA.6030903@cn.fujitsu.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <50A611AA.6030903@cn.fujitsu.com> List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: kexec-bounces@lists.infradead.org Errors-To: kexec-bounces+dwmw2=infradead.org@lists.infradead.org To: zhangyanfei Cc: "x86@kernel.org" , "kexec@lists.infradead.org" , Avi Kivity , "kvm@vger.kernel.org" , "linux-kernel@vger.kernel.org" T24gRnJpLCBOb3YgMTYsIDIwMTIgYXQgMDY6MTI6NThQTSArMDgwMCwgemhhbmd5YW5mZWkgd3Jv dGU6Cj4gSGVsbG8gTWFyY2VsbywKPiAKPiBBbnkgdGhvdWdodHM/CgpJIHRob3VnaHQgYSBmdW5j dGlvbiBjYWxsIHdhcyBPSywgYnV0IGl0cyBiZXR0ZXIgdG8gaGF2ZSBhbGwgY29kZSBpbgp2bXgu Yy4gUGxlYXNlIGhhdmUgYW4gYXRvbWljIG5vdGlmaWVyIGluIGtleGVjLmMgKHJlZ2lzdGVyZWQg YnkgS1ZNCm1vZHVsZSB2aWEgYXRvbWljX25vdGlmaWVyX2NoYWluX3JlZ2lzdGVyIGV0YykuCgpP dGhlciB0aGFuIHRoYXQsIHdoaWNoIGlzIGxhcmdlbHkgY29zbWV0aWMsIGl0IGxvb2tzIGZpbmUu ClNvcnJ5IGZvciBub3QgZXhwcmVzc2luZyB0aGlzIGVhcmxpZXIuCgoKPiDkuo4gMjAxMuW5tDEx 5pyIMTTml6UgMTc6MjksIHpoYW5neWFuZmVpIOWGmemBkzoKPiA+IEN1cnJlbnRseSwga2R1bXAg anVzdCBtYWtlcyBhbGwgdGhlIGxvZ2ljYWwgcHJvY2Vzc29ycyBsZWF2ZSBWTVggb3BlcmF0aW9u IGJ5Cj4gPiBleGVjdXRpbmcgVk1YT0ZGIGluc3RydWN0aW9uLCBzbyBhbnkgVk1DU3MgYWN0aXZl IG9uIHRoZSBsb2dpY2FsIHByb2Nlc3NvcnMgbWF5Cj4gPiBiZSBjb3JydXB0ZWQuIEJ1dCwgc29t ZXRpbWVzLCB3ZSBuZWVkIHRoZSBWTUNTcyB0byBkZWJ1ZyBndWVzdCBpbWFnZXMgY29udGFpbmVk Cj4gPiBpbiB0aGUgaG9zdCB2bWNvcmUuIFRvIHByZXZlbnQgdGhlIGNvcnJ1cHRpb24sIHdlIHNo b3VsZCBWTUNMRUFSIHRoZSBWTUNTcyBiZWZvcmUKPiA+IGV4ZWN1dGluZyB0aGUgVk1YT0ZGIGlu c3RydWN0aW9uLgo+ID4gCj4gPiBUaGUgcGF0Y2ggc2V0IHByb3ZpZGVzIGEgd2F5IHRvIFZNQ0xF QVIgdm1jc3MgcmVsYXRlZCB0byBndWVzdHMgb24gYWxsIGNwdXMgYmVmb3JlCj4gPiBleGVjdXRp bmcgdGhlIFZNWE9GRiB3aGVuIGRvaW5nIGtkdW1wLiBUaGlzIGlzIHVzZWQgdG8gZW5zdXJlIHRo ZSBWTUNTcyBpbiB0aGUKPiA+IHZtY29yZSB1cGRhdGVkIGFuZCBub24tY29ycnVwdGVkLgo+ID4g Cj4gPiBDaGFuZ2Vsb2cgZnJvbSB2MyB0byB2NDoKPiA+IDEuIGFkZCBhIG5ldyBwZXJjcHUgdmFy aWFibGUgdm1jbGVhcl9za2lwcGVkIHRvIHNraXAKPiA+ICAgIHZtY2xlYXIgaW4ga2R1bXAgaW4g c29tZSBjb25kaXRpb25zLgo+ID4gCj4gPiBDaGFuZ2Vsb2cgZnJvbSB2MiB0byB2MzoKPiA+IDEu IHJlbW92ZSB1bm5lY2Vzc2FyeSBjb25kaXRpb25zIGluIGZ1bmN0aW9uCj4gPiAgICBjcHVfZW1l cmdlbmN5X2NsZWFyX2xvYWRlZF92bWNzcyBhcyBNYXJjZWxvIHN1Z2dlc3RlZC4KPiA+IAo+ID4g Q2hhbmdlbG9nIGZyb20gdjEgdG8gdjI6Cj4gPiAxLiByZW1vdmUgdGhlIHN5c2N0bCBhbmQgY2xl YXIgVk1DU3MgdW5jb25kaXRpb25hbGx5Lgo+ID4gCj4gPiBaaGFuZyBZYW5mZWkgKDIpOgo+ID4g ICB4ODYva2V4ZWM6IFZNQ0xFQVIgdm1jc3Mgb24gYWxsIGNwdXMgaWYgbmVjZXNzYXJ5Cj4gPiAg IEtWTTogc2V0L3Vuc2V0IGNyYXNoX2NsZWFyX2xvYWRlZF92bWNzcyBhbmQgdm1jbGVhcl9za2lw cGVkIGluCj4gPiAgICAga3ZtX2ludGVsIG1vZHVsZQo+ID4gCj4gPiAgYXJjaC94ODYvaW5jbHVk ZS9hc20va2V4ZWMuaCB8ICAgIDMgKysrIAo+ID4gIGFyY2gveDg2L2tlcm5lbC9jcmFzaC5jICAg ICAgfCAgIDMyICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCj4gPiAgYXJjaC94ODYv a3ZtL3ZteC5jICAgICAgICAgICB8ICAgMzIgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysKPiA+ICAzIGZpbGVzIGNoYW5nZWQsIDY3IGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0p Cj4gPiAKPiA+IAo+ID4gLS0KPiA+IFRvIHVuc3Vic2NyaWJlIGZyb20gdGhpcyBsaXN0OiBzZW5k IHRoZSBsaW5lICJ1bnN1YnNjcmliZSBsaW51eC1rZXJuZWwiIGluCj4gPiB0aGUgYm9keSBvZiBh IG1lc3NhZ2UgdG8gbWFqb3Jkb21vQHZnZXIua2VybmVsLm9yZwo+ID4gTW9yZSBtYWpvcmRvbW8g aW5mbyBhdCAgaHR0cDovL3ZnZXIua2VybmVsLm9yZy9tYWpvcmRvbW8taW5mby5odG1sCj4gPiBQ bGVhc2UgcmVhZCB0aGUgRkFRIGF0ICBodHRwOi8vd3d3LnR1eC5vcmcvbGttbC8KPiA+IAo+IAo+ IC0tCj4gVG8gdW5zdWJzY3JpYmUgZnJvbSB0aGlzIGxpc3Q6IHNlbmQgdGhlIGxpbmUgInVuc3Vi c2NyaWJlIGt2bSIgaW4KPiB0aGUgYm9keSBvZiBhIG1lc3NhZ2UgdG8gbWFqb3Jkb21vQHZnZXIu a2VybmVsLm9yZwo+IE1vcmUgbWFqb3Jkb21vIGluZm8gYXQgIGh0dHA6Ly92Z2VyLmtlcm5lbC5v cmcvbWFqb3Jkb21vLWluZm8uaHRtbAoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX18Ka2V4ZWMgbWFpbGluZyBsaXN0CmtleGVjQGxpc3RzLmluZnJhZGVhZC5v cmcKaHR0cDovL2xpc3RzLmluZnJhZGVhZC5vcmcvbWFpbG1hbi9saXN0aW5mby9rZXhlYwo= From mboxrd@z Thu Jan 1 00:00:00 1970 From: Marcelo Tosatti Subject: Re: [PATCH v4 0/2] x86: clear vmcss on all cpus when doing kdump if necessary Date: Mon, 19 Nov 2012 22:32:58 -0200 Message-ID: <20121120003258.GA1292@amt.cnet> References: <50A3645F.60302@cn.fujitsu.com> <50A611AA.6030903@cn.fujitsu.com> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: QUOTED-PRINTABLE Cc: "x86@kernel.org" , "kexec@lists.infradead.org" , Avi Kivity , "linux-kernel@vger.kernel.org" , "kvm@vger.kernel.org" To: zhangyanfei Return-path: Content-Disposition: inline In-Reply-To: <50A611AA.6030903@cn.fujitsu.com> Sender: linux-kernel-owner@vger.kernel.org List-Id: kvm.vger.kernel.org On Fri, Nov 16, 2012 at 06:12:58PM +0800, zhangyanfei wrote: > Hello Marcelo, >=20 > Any thoughts? I thought a function call was OK, but its better to have all code in vmx.c. Please have an atomic notifier in kexec.c (registered by KVM module via atomic_notifier_chain_register etc). Other than that, which is largely cosmetic, it looks fine. Sorry for not expressing this earlier. > =E4=BA=8E 2012=E5=B9=B411=E6=9C=8814=E6=97=A5 17:29, zhangyanfei =E5=86= =99=E9=81=93: > > Currently, kdump just makes all the logical processors leave VMX op= eration by > > executing VMXOFF instruction, so any VMCSs active on the logical pr= ocessors may > > be corrupted. But, sometimes, we need the VMCSs to debug guest imag= es contained > > in the host vmcore. To prevent the corruption, we should VMCLEAR th= e VMCSs before > > executing the VMXOFF instruction. > >=20 > > The patch set provides a way to VMCLEAR vmcss related to guests on = all cpus before > > executing the VMXOFF when doing kdump. This is used to ensure the V= MCSs in the > > vmcore updated and non-corrupted. > >=20 > > Changelog from v3 to v4: > > 1. add a new percpu variable vmclear_skipped to skip > > vmclear in kdump in some conditions. > >=20 > > Changelog from v2 to v3: > > 1. remove unnecessary conditions in function > > cpu_emergency_clear_loaded_vmcss as Marcelo suggested. > >=20 > > Changelog from v1 to v2: > > 1. remove the sysctl and clear VMCSs unconditionally. > >=20 > > Zhang Yanfei (2): > > x86/kexec: VMCLEAR vmcss on all cpus if necessary > > KVM: set/unset crash_clear_loaded_vmcss and vmclear_skipped in > > kvm_intel module > >=20 > > arch/x86/include/asm/kexec.h | 3 +++=20 > > arch/x86/kernel/crash.c | 32 ++++++++++++++++++++++++++++++= ++ > > arch/x86/kvm/vmx.c | 32 ++++++++++++++++++++++++++++++= ++ > > 3 files changed, 67 insertions(+), 0 deletions(-) > >=20 > >=20 > > -- > > To unsubscribe from this list: send the line "unsubscribe linux-ker= nel" in > > the body of a message to majordomo@vger.kernel.org > > More majordomo info at http://vger.kernel.org/majordomo-info.html > > Please read the FAQ at http://www.tux.org/lkml/ > >=20 >=20 > -- > To unsubscribe from this list: send the line "unsubscribe kvm" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html