All of lore.kernel.org
 help / color / mirror / Atom feed
From: Andy Whitcroft <apw@canonical.com>
To: Andrew Morton <akpm@linux-foundation.org>
Cc: Crutcher Dunnavant <crutcher+kernel@datastacks.com>,
	linux-kernel@vger.kernel.org
Subject: Re: sysrq loglevel
Date: Wed, 7 Jan 2009 20:50:30 +0000	[thread overview]
Message-ID: <20090107205030.GE12402@shadowen.org> (raw)
In-Reply-To: <20090107112539.972e60e2.akpm@linux-foundation.org>

On Wed, Jan 07, 2009 at 11:25:39AM -0800, Andrew Morton wrote:
> On Wed, 7 Jan 2009 12:37:58 +0000 Andy Whitcroft <apw@canonical.com> wrote:
> 
> > It seems that we deliberatly manage the console_loglevel while handling a
> > sysrq request.  Raising it to 7 to emit the sysrq command header, and then
> > lower it before processing the command itself.  When booting the kernel
> > 'quiet' this means that we only see the header of the command and not its
> > output on the console, the whole thing is in dmesg and thereby in syslog
> > (if it is working).
> 
> I always thought it was fairly stupid.  Wouldn't we get the same effect
> by tossing that code and switching those printks to KERN_EMERG?

I believe it is different as the level is still KERN_INFO and that is
what the consumers of /proc/kmsg will see, and that might affect where
they are logged to.

> > void __handle_sysrq(int key, struct tty_struct *tty, int check_mask)
> > [...]
> >         console_loglevel = 7;
> >         printk(KERN_INFO "SysRq : ");
> > [...]
> >                         printk("%s\n", op_p->action_msg);
> >                         console_loglevel = orig_log_level;
> >                         op_p->handler(key, tty);
> > [...]
> > 
> > Is this intentional?  I can see arguments both ways.  One way to look at
> > it would be that I asked for the output so I should get it regardless.
> > The other side might be that consoles can be really slow (serial or
> > something) and so only outputting it there if logging is enabled
> > generally is sane.
> > 
> > Obviously we can work round this at the moment using sysrq-7 to up the
> > loglevel before the command and sysrq-4 after to restore quiet.
> > 
> > What do people think.  If we are happy with the status quo then I will
> > spin a documentation patch to point out this behaviour and the work
> > around.  Else I will happily spin a patch to fix it.
> > 
> 
> There is a legitimate use case, I think: to emit the sysrq command's
> output into the log bufffer and not to the console[s].  So you can do
> 
> 	echo t > /proc/sysrq-trigger
> 	dmesg -s 1000000 > foo

Yeah I agree.  I will spin a documentation patch to capture this
reasoning so we don't end up asking again in a years time.

-apw

  reply	other threads:[~2009-01-07 20:50 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-01-07 12:37 sysrq loglevel Andy Whitcroft
2009-01-07 19:25 ` Andrew Morton
2009-01-07 20:50   ` Andy Whitcroft [this message]
2009-01-07 21:49     ` [PATCH 0/3] document sysrq interaction with loglevels Andy Whitcroft
2009-01-07 21:49       ` [PATCH 1/3] sysrq documentation: remove the redundant updated date Andy Whitcroft
2009-01-07 21:49       ` [PATCH 2/3] sysrq documentation: document why the command header only is shown Andy Whitcroft
2009-01-07 23:30         ` Randy Dunlap
2009-01-07 21:49       ` [PATCH 3/3] sysrq: add commentary on why we use the console loglevel over using KERN_EMERG Andy Whitcroft
2009-01-08  8:44         ` Nick Andrew
2009-01-08  2:10     ` [PATCH 0/3] document sysrq interaction with loglevels V2 Andy Whitcroft
2009-01-08  2:10       ` [PATCH 1/3] sysrq documentation: remove the redundant updated date Andy Whitcroft
2009-01-08  2:10       ` [PATCH 2/3] sysrq documentation: document why the command header only is shown Andy Whitcroft
2009-01-08  2:10       ` [PATCH 3/3] sysrq: add commentary on why we use the console loglevel over using KERN_EMERG Andy Whitcroft

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=20090107205030.GE12402@shadowen.org \
    --to=apw@canonical.com \
    --cc=akpm@linux-foundation.org \
    --cc=crutcher+kernel@datastacks.com \
    --cc=linux-kernel@vger.kernel.org \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.