Re: Console not capturing call trace

From: Jay Cliburn
Date: Sun Sep 28 2008 - 08:43:19 EST


On Sun, 28 Sep 2008 14:14:09 +0200
"Vegard Nossum" <vegard.nossum@xxxxxxxxx> wrote:

> On Sun, Sep 21, 2008 at 5:46 PM, Jay Cliburn
> <jacliburn@xxxxxxxxxxxxx> wrote:
> > I'm thinking this may be a userspace issue, but most users don't
> > hack network drivers and don't encounter kernel warnings and
> > oopses, and therefore aren't likely to encounter this, so I'm
> > bringing it to the kernel list (especially those who run Fedora)
> > for assistance/opinions.
> >
> > The problem: I no longer get full module lists and call traces on
> > the console for a WARN_ON (for example). I run Fedora 9 and its
> > current version of rsyslog-3.18.1-2.fc9.x86_64. Reverting to
> > rsyslog-3.14.1-2.fc9.x86_64 or advancing to
> > rsyslog-3.21.3-3.fc10.x86_64 didn't seem to help.
> >
> > For test purposes I inserted a WARN_ON(1) statement in the atl1
> > driver, and dmesg shows the output just fine, but /var/log/messages
> > and my serial console both fail to show the module list and call
> > trace. (Evidence below.)
> >
> > One thing I can't figure out is where the "<8>" comes from in
> > the serial console output down at the bottom of this message.
> > Backstepping from warn_on_slowpath() to print_modules() in the
> > kernel code doesn't seem to show an <8> printed anywhere. I've got
> > /proc/sys/kernel/printk set to 8 8 8 8, so maybe that's related?
> >
> > Has anyone else encountered this or know which rsyslogd knob to
> > tweak to enable the full modules list and call trace? I've
> > verified the condition occurs with current git, 2.6.26.3, and
> > 2.6.25.16 kernels, so I think it's not a kernel problem. It *used*
> > to work fine, but I can't remember when it stopped doing so.
>
> Hi,
>
> I'll try an answer since you've had no other replies.
>
> You probably need to set up rsyslogd to log all kernel messages. For
> me, changing the /etc/rsyslog.conf like this does the trick (but
> beware of my linewrapping client):
>
> --- rsyslog.conf.orig 2008-09-28 14:10:20.000000000 +0200
> +++ rsyslog.conf.new 2008-09-28 14:10:12.000000000 +0200
> @@ -36,7 +36,7 @@
>
> # Log anything (except mail) of level info or higher.
> # Don't log private authentication messages!
> -*.info;mail.none;authpriv.none;cron.none /var/log/messages
> +kern.*;*.info;mail.none;authpriv.none;cron.none
> /var/log/messages
>
> # The authpriv file has restricted access.
> authpriv.* /var/log/secure
>
>
> I.e., you just need to add "kern.*" in the line that controls logging
> to /var/log/messages. I hope this helps.

Thanks for replying Vegard. The problem turned out to be that I
overwrote /proc/sys/kernel/printk with "8 8 8 8" instead of just using
"8 x x x," where x is the default value.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/