Re: [tip:sched/locking] sched: Add p->pi_lock to task_rq_lock()

From: Ingo Molnar
Date: Sun Jun 05 2011 - 05:56:13 EST



* Arne Jansen <lists@xxxxxxxxxxxxxx> wrote:

> >( Arne, please also double check on a working bootup that the NMI
> > watchdog is actually ticking, by checking the NMI counts in
> > /proc/interrupts go up slowly but surely on all CPUs. )
>
> It does, but _very_ slowly. Some CPUs do not count up for tens of
> minutes if the machine is idle. If I generate some load like 'make
> tags', the counters go up quite quickly.
> After 4 minutes and one 'make cscope' it looks like this:
> NMI: 8 13 43 5 2
> 3 22 1 Non-maskable interrupts
>
> But I never see a single tick on console or in dmesg, even when I
> replace the early_printk with a printk.

hm, that might be because the NMI watchdog uses halted cycles to
tick.

That's not a problem (the kernel cannot lock up while there are no
cycles ticking) but nevertheless could you work this around please
by starting 8 infinite shell loops:

for ((i=0; i<8; i++)); do while : ; do : ; done & done

?

This will saturate all cores and makes sure the NMI watchdog is
ticking everywhere.

Hopefully this wont make the bug go away :-)

This will remove one factor of uncertainty (of where the NMI watchdog
is working or not), so it simplifies debugging.

> [ 36.064321] ------------[ cut here ]------------
> [ 36.064328] WARNING: at kernel/printk.c:293 do_syslog+0xbf/0x550()
> [ 36.064330] Hardware name: X8SIL
> [ 36.064331] Attempt to access syslog with CAP_SYS_ADMIN but no
> CAP_SYSLOG (deprecated).

Yeah, unrelated, and rather annoying looking that warning. The
warning is borderline correct (it's messy to drop CAP_SYSLOG but keep
CAP_SYS_ADMIN) but still, if we warned every time userspace relies on
something the kernel provided in the past, in a somewhat messy way,
we'd never complete bootup i guess ;-)

Thanks,

Ingo
--
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/