From: Vivek Goyal <vgoyal@redhat.com>
To: Neil Horman <nhorman@tuxdriver.com>
Cc: Hidetoshi Seto <seto.hidetoshi@jp.fujitsu.com>,
Lai Jiangshan <laijs@cn.fujitsu.com>,
Andrew Morton <akpm@linux-foundation.org>,
Brayan Arraes <brayan@yack.com.br>,
"Eric W. Biederman" <ebiederm@xmission.com>,
LKML <linux-kernel@vger.kernel.org>,
"Ken'ichi Ohmichi" <oomichi@mxs.nes.nec.co.jp>
Subject: Re: [PATCH] sysrq, kdump: fix regression, revert "simplify sysrq-c handler"
Date: Wed, 22 Jul 2009 09:42:11 -0400 [thread overview]
Message-ID: <20090722134211.GA7995@redhat.com> (raw)
In-Reply-To: <20090722111049.GB4539@hmsreliant.think-freely.org>
On Wed, Jul 22, 2009 at 07:10:49AM -0400, Neil Horman wrote:
> On Wed, Jul 22, 2009 at 11:01:29AM +0900, Hidetoshi Seto wrote:
> > Neil Horman wrote:
> > > None of this answers Erics question, what is it that you could do before, that
> > > you couldn't do now?
> >
> > One is, as Ohmichi-san pointed, triggering kdump via echo c > /proc/sysrq-trigger.
> >
> > In contrast to oops via SysRq-c from keyboard interrupt which results in
> > panic due to in_interrupt(), oops via echo-c will not become panic unless
> > panic_on_oops.
> >
> > So in other words, we could expect same effect in both of echo-c and SysRq-c
> > before, but now we cannot because it depends on the panic_on_oops.
> > Isn't it a regression?
> >
> Only if you blindly consider a change in behavior to be a regression. consider
> that previously executing a sysrq-c did the same thing if you did a echo c >
> /proc/sysrq-trigger on a keyboard sysrq-c, but did different things based on
> weather or not your had a kexec kernel loaded.
>
> > Whether kdump should be executed on oops (which is not panic) or not is a
> > separate thing.
> >
> > > There are reasons to want to have a convenient way to
> > > crash the kernel, other than to test kdump (several distributions have augmented
> > > sysrq-c to do this for some time to test other previous dump mechanisms and
> > > features), so while its not been upstream, saying that its well known to test
> > > kdump without causing an oops is a bit of a misleading statement.
> >
> > Let make me sure the difference between 'crash', 'oops', and 'panic'.
> > At least 'oops' is not panic, as is obvious from the name of panic_on_oops.
> > And it seems you are using 'crash' and 'oops' in mixture.
> >
> I'm perfectly well aware of the difference, I just assert theres value to having
> sysrq-c be able to test both paths, especially given that we already have the
> sysrq-c sysctl available to toggle behavior for just this case.
>
> > If you mean 'crash' as 'panic', my complaint is echo-c does not panic while
> > SysRq-c does panic. So if possible I'd like to suggest a change like:
> >
> See above, I think theres value to having sysrq-c be able to do both, although I
> agree the method by which it triggers both is a bit muddled.
>
> > static void sysrq_handle_crash(int key, struct tty_struct *tty)
> > {
> > - char *killer = NULL;
> > - *killer = 1;
> > + panic("SysRq-triggered panic!\n");
> > }
> >
> Well, this removes the ability from sysrq-c to test the oops handling path, but
> I suppose it does buy us consistent behavior between the keyboard and proc
> interfaces, which is likely more important. I can agree to that. Perhaps we
> can create another sysctl to test the oops path later.
>
Can't we just set panic_on_oops = 1 in sysrq_handle_crash()? This will
make sure that we test oops path as well as have consistent behavior
between two methods of sysrc-c invocation.
Thanks
Vivek
> > I agree that causing a real crash(panic) is better way to test crashdump than
> > calling the entry function of the crashdump directly, and also that opening
> > the path for other dump mechanisms is welcomed.
> >
> Ok, so we're in line there :)
>
> > > It seems to
> > > me that right now your major complaint is that the documentation is out of date,
> > > and you're having to do things slightly differently to get the same behavioral
> > > results. Would it solve your issue, if we simply updated the documentation to
> > > illustrate how it works now?
> >
> > Of course the documentation should be updated asap.
> > But I think the major complaint is about a difference in the behaviors of SysRq-c
> > and "echo c > /proc/sysrq-trigger".
> >
> Ok, I can agree with that. I'd support a change like what you have above to
> bring the keyboard and proc interface behavior in line.
>
> Regards
> Neil
>
>
> >
> > Thanks,
> > H.Seto
> >
> >
next prev parent reply other threads:[~2009-07-22 13:42 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-07-20 12:46 [PATCH] sysrq, kdump: fix regression, revert "simplify sysrq-c handler" Lai Jiangshan
2009-07-20 19:22 ` Eric W. Biederman
2009-07-20 21:16 ` Neil Horman
2009-07-21 6:46 ` Lai Jiangshan
2009-07-21 22:18 ` Eric W. Biederman
2009-07-21 6:00 ` Lai Jiangshan
2009-07-21 6:56 ` Eric W. Biederman
2009-07-21 6:49 ` Hidetoshi Seto
2009-07-21 11:08 ` Neil Horman
2009-07-21 12:16 ` Lai Jiangshan
2009-07-22 2:01 ` Hidetoshi Seto
2009-07-22 11:10 ` Neil Horman
2009-07-22 13:42 ` Vivek Goyal [this message]
2009-07-22 19:38 ` Neil Horman
2009-07-23 1:10 ` Hidetoshi Seto
2009-07-23 1:09 ` Hidetoshi Seto
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20090722134211.GA7995@redhat.com \
--to=vgoyal@redhat.com \
--cc=akpm@linux-foundation.org \
--cc=brayan@yack.com.br \
--cc=ebiederm@xmission.com \
--cc=laijs@cn.fujitsu.com \
--cc=linux-kernel@vger.kernel.org \
--cc=nhorman@tuxdriver.com \
--cc=oomichi@mxs.nes.nec.co.jp \
--cc=seto.hidetoshi@jp.fujitsu.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).