From mboxrd@z Thu Jan 1 00:00:00 1970 Return-path: Received: from mx1.redhat.com ([209.132.183.28]) by bombadil.infradead.org with esmtps (Exim 4.80.1 #2 (Red Hat Linux)) id 1YaQ6G-00054a-WB for kexec@lists.infradead.org; Tue, 24 Mar 2015 14:46:37 +0000 Date: Tue, 24 Mar 2015 10:46:08 -0400 From: Vivek Goyal Subject: Re: Re: [PATCH v2] kernel/panic/kexec: fix "crash_kexec_post_notifiers" option issue in oops path Message-ID: <20150324144608.GB2970@redhat.com> References: <54F9D645.2050008@jp.fujitsu.com> <20150323034752.GD2068@dhcp-16-105.nay.redhat.com> <20150323071943.GA22765@gmail.com> <5510DA42.6040708@hitachi.com> <20150324071129.GA28619@gmail.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20150324071129.GA28619@gmail.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" Errors-To: kexec-bounces+dwmw2=infradead.org@lists.infradead.org To: Ingo Molnar Cc: Baoquan He , kexec@lists.infradead.org, linux-kernel@vger.kernel.org, hidehiro.kawai.ez@hitachi.com, =?utf-8?B?IkhhdGF5YW1hLCBEYWlzdWtlL+eVkeWxsSDlpKfovJQi?= , mingo@redhat.com, ebiederm@xmission.com, Masami Hiramatsu , akpm@linux-foundation.org, bp@suse.de T24gVHVlLCBNYXIgMjQsIDIwMTUgYXQgMDg6MTE6MjlBTSArMDEwMCwgSW5nbyBNb2xuYXIgd3Jv dGU6Cj4gCj4gKiBNYXNhbWkgSGlyYW1hdHN1IDxtYXNhbWkuaGlyYW1hdHN1LnB0QGhpdGFjaGku Y29tPiB3cm90ZToKPiAKPiA+ICgyMDE1LzAzLzIzIDE2OjE5KSwgSW5nbyBNb2xuYXIgd3JvdGU6 Cj4gPiA+IAo+ID4gPiAqIEJhb3F1YW4gSGUgPGJoZUByZWRoYXQuY29tPiB3cm90ZToKPiA+ID4g Cj4gPiA+PiBDQyBtb3JlIHBlb3BsZSAuLi4KPiA+ID4+Cj4gPiA+PiBPbiAwMy8wNy8xNSBhdCAw MTozMWFtLCAiSGF0YXlhbWEsIERhaXN1a2Uv55WR5bGxIOWkp+i8lCIgd3JvdGU6Cj4gPiA+Pj4g VGhlIGNvbW1pdCBmMDZlNTE1M2Y0YWUyZTJmM2IwMzAwZjBlMjYwZTQwY2I3ZmVmZDQ1IGludHJv ZHVjZWQKPiA+ID4+PiAiY3Jhc2hfa2V4ZWNfcG9zdF9ub3RpZmllcnMiIGtlcm5lbCBib290IG9w dGlvbiwgd2hpY2ggdG9nZ2xlcwo+ID4gPj4+IHdoZWF0aGVyIHBhbmljKCkgY2FsbHMgY3Jhc2hf a2V4ZWMoKSBiZWZvcmUgcGFuaWNfbm90aWZpZXJzIGFuZCBkdW1wCj4gPiA+Pj4ga21zZyBvciBh ZnRlci4KPiA+ID4+Pgo+ID4gPj4+IFRoZSBwcm9ibGVtIGlzIHRoYXQgdGhlIGNvbW1pdCBvdmVy bG9va3MgcGFuaWNfb25fb29wcyBrZXJuZWwgYm9vdAo+ID4gPj4+IG9wdGlvbi4gSWYgaXQgaXMg ZW5hYmxlZCwgY3Jhc2hfa2V4ZWMoKSBpcyBjYWxsZWQgZGlyZWN0bHkgd2l0aG91dAo+ID4gPj4+ IGdvaW5nIHRocm91Z2ggcGFuaWMoKSBpbiBvb3BzIHBhdGguCj4gPiA+Pj4KPiA+ID4+PiBUbyBm aXggdGhpcyBpc3N1ZSwgdGhpcyBwYXRjaCBhZGRzIGEgY2hlY2sgdG8KPiA+ID4+PiAiY3Jhc2hf a2V4ZWNfcG9zdF9ub3RpZmllcnMiIGluIHRoZSBjb25kaXRpb24gb2Yga2V4ZWNfc2hvdWxkX2Ny YXNoKCkuCj4gPiA+Pj4KPiA+ID4+PiBBbHNvLCBwdXQgYSBjb21tZW50IGluIGtleGVjX3Nob3Vs ZF9jcmFzaCgpIHRvIGV4cGxhaW4gbm90IG9idmlvdXMKPiA+ID4+PiB0aGluZ3Mgb24gdGhpcyBw YXRjaC4KPiA+ID4+Pgo+ID4gPj4+IFNpZ25lZC1vZmYtYnk6IEhBVEFZQU1BIERhaXN1a2UgPGQu aGF0YXlhbWFAanAuZnVqaXRzdS5jb20+Cj4gPiA+Pj4gQWNrZWQtYnk6IEJhb3F1YW4gSGUgPGJo ZUByZWRoYXQuY29tPgo+ID4gPj4+IFRlc3RlZC1ieTogSGlkZWhpcm8gS2F3YWkgPGhpZGVoaXJv Lmthd2FpLmV6QGhpdGFjaGkuY29tPgo+ID4gPj4+IFJldmlld2VkLWJ5OiBNYXNhbWkgSGlyYW1h dHN1IDxtYXNhbWkuaGlyYW1hdHN1LnB0QGhpdGFjaGkuY29tPgo+ID4gPj4+IC0tLQo+ID4gPj4+ ICBpbmNsdWRlL2xpbnV4L2tlcm5lbC5oIHwgIDMgKysrCj4gPiA+Pj4gIGtlcm5lbC9rZXhlYy5j ICAgICAgICAgfCAxMSArKysrKysrKysrKwo+ID4gPj4+ICBrZXJuZWwvcGFuaWMuYyAgICAgICAg IHwgIDIgKy0KPiA+ID4+PiAgMyBmaWxlcyBjaGFuZ2VkLCAxNSBpbnNlcnRpb25zKCspLCAxIGRl bGV0aW9uKC0pCj4gPiA+IAo+ID4gPiBUaGlzIGlzIGhhY2sgdXBvbiBoYWNrLCBidXQgd2h5IHdh cyB0aGlzIGNyYXAgbWVyZ2VkIGluIHRoZSBmaXJzdCAKPiA+ID4gcGxhY2U/Cj4gPiA+IAo+ID4g PiBJIHNlZSB0d28gcHJvYmxlbXMganVzdCBieSBjdXJzb3J5IHJldmlldzoKPiA+ID4gCj4gPiA+ IDEpCj4gPiA+IAo+ID4gPiBGaXJzdGx5LCB0aGUgcmVhbCBidWcgaW46Cj4gPiA+IAo+ID4gPiAg IGYwNmU1MTUzZjRhZSAoImtlcm5lbC9wYW5pYy5jOiBhZGQgImNyYXNoX2tleGVjX3Bvc3Rfbm90 aWZpZXJzIiBvcHRpb24gZm9yIGtkdW1wIGFmdGVyIHBhbmljX25vdGlmZXJzIikKPiA+ID4gCj4g PiA+IFdhcyB0aGF0IGNyYXNoX2tleGVjKCkgd2FzIGNhbGxlZCB1bmNvbmRpdGlvbmFsbHkgYWZ0 ZXIgbm90aWZpZXJzIHdlcmUgCj4gPiA+IGNhbGxlZCwgd2hpY2ggc2hvdWxkIGJlIGZpeGVkIHZp YSB0aGUgc2ltcGxlIHBhdGNoIGJlbG93ICh1bnRlc3RlZCkuIAo+ID4gPiBMb29rcyBtdWNoIHNp bXBsZXIgdGhhbiB5b3VyIGZpeC4KPiA+IAo+ID4gTm8sIERhaXN1a2UncyBwYXRjaCBpcyBub3Qg Zm9yIHRoYXQgY2FzZS4gWy4uLl0KPiAKPiBZZXQgdGhlIGFjdHVhbCBidWcgaXMgaW4gdGhhdCBj b21taXQsICdjcmFzaF9rZXhlY19wb3N0X25vdGlmaWVycycgd2FzIAo+IGNsZWFybHkgbm90IGEg bm8tb3AgaW4gdGhlIGRlZmF1bHQgY2FzZSwgYWdhaW5zdCBleHBlY3RhdGlvbnMuCgpIaSBJbmdv LAoKSSBkaWQgYSBxdWljayB0ZXN0IGFuZCBpbiBkZWZhdWx0IGNhc2UgY3Jhc2hfa2V4ZWMoKSBy dW5zIGJlZm9yZSBwYW5pYwpub3RpZmllcnMuIFNvIGl0IGRvZXMgbG9vayBsaWtlIGNyYXNoX2tl eGVjX3Bvc3Rfbm90aWZpZXJzIGlzIGEgbm8tb3AKaW4gZGVmYXVsdCBjYXNlLgoKV2hhdCBhbSBJ IG1pc3NpbmcuCgpUaGFua3MKVml2ZWsKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fCmtleGVjIG1haWxpbmcgbGlzdAprZXhlY0BsaXN0cy5pbmZyYWRlYWQu b3JnCmh0dHA6Ly9saXN0cy5pbmZyYWRlYWQub3JnL21haWxtYW4vbGlzdGluZm8va2V4ZWMK From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752711AbbCXOqn (ORCPT ); Tue, 24 Mar 2015 10:46:43 -0400 Received: from mx1.redhat.com ([209.132.183.28]:58116 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752482AbbCXOqj (ORCPT ); Tue, 24 Mar 2015 10:46:39 -0400 Date: Tue, 24 Mar 2015 10:46:08 -0400 From: Vivek Goyal To: Ingo Molnar Cc: Masami Hiramatsu , Baoquan He , =?utf-8?B?IkhhdGF5YW1hLCBEYWlzdWtlL+eVkeWxsSDlpKfovJQi?= , ebiederm@xmission.com, hidehiro.kawai.ez@hitachi.com, linux-kernel@vger.kernel.org, kexec@lists.infradead.org, akpm@linux-foundation.org, mingo@redhat.com, bp@suse.de Subject: Re: Re: [PATCH v2] kernel/panic/kexec: fix "crash_kexec_post_notifiers" option issue in oops path Message-ID: <20150324144608.GB2970@redhat.com> References: <54F9D645.2050008@jp.fujitsu.com> <20150323034752.GD2068@dhcp-16-105.nay.redhat.com> <20150323071943.GA22765@gmail.com> <5510DA42.6040708@hitachi.com> <20150324071129.GA28619@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20150324071129.GA28619@gmail.com> User-Agent: Mutt/1.5.23 (2014-03-12) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, Mar 24, 2015 at 08:11:29AM +0100, Ingo Molnar wrote: > > * Masami Hiramatsu wrote: > > > (2015/03/23 16:19), Ingo Molnar wrote: > > > > > > * Baoquan He wrote: > > > > > >> CC more people ... > > >> > > >> On 03/07/15 at 01:31am, "Hatayama, Daisuke/畑山 大輔" wrote: > > >>> The commit f06e5153f4ae2e2f3b0300f0e260e40cb7fefd45 introduced > > >>> "crash_kexec_post_notifiers" kernel boot option, which toggles > > >>> wheather panic() calls crash_kexec() before panic_notifiers and dump > > >>> kmsg or after. > > >>> > > >>> The problem is that the commit overlooks panic_on_oops kernel boot > > >>> option. If it is enabled, crash_kexec() is called directly without > > >>> going through panic() in oops path. > > >>> > > >>> To fix this issue, this patch adds a check to > > >>> "crash_kexec_post_notifiers" in the condition of kexec_should_crash(). > > >>> > > >>> Also, put a comment in kexec_should_crash() to explain not obvious > > >>> things on this patch. > > >>> > > >>> Signed-off-by: HATAYAMA Daisuke > > >>> Acked-by: Baoquan He > > >>> Tested-by: Hidehiro Kawai > > >>> Reviewed-by: Masami Hiramatsu > > >>> --- > > >>> include/linux/kernel.h | 3 +++ > > >>> kernel/kexec.c | 11 +++++++++++ > > >>> kernel/panic.c | 2 +- > > >>> 3 files changed, 15 insertions(+), 1 deletion(-) > > > > > > This is hack upon hack, but why was this crap merged in the first > > > place? > > > > > > I see two problems just by cursory review: > > > > > > 1) > > > > > > Firstly, the real bug in: > > > > > > f06e5153f4ae ("kernel/panic.c: add "crash_kexec_post_notifiers" option for kdump after panic_notifers") > > > > > > Was that crash_kexec() was called unconditionally after notifiers were > > > called, which should be fixed via the simple patch below (untested). > > > Looks much simpler than your fix. > > > > No, Daisuke's patch is not for that case. [...] > > Yet the actual bug is in that commit, 'crash_kexec_post_notifiers' was > clearly not a no-op in the default case, against expectations. Hi Ingo, I did a quick test and in default case crash_kexec() runs before panic notifiers. So it does look like crash_kexec_post_notifiers is a no-op in default case. What am I missing. Thanks Vivek