Re: real time hang w/ latency tracing

From: Daniel Walker
Date: Wed Apr 04 2007 - 11:37:58 EST


On Wed, 2007-04-04 at 10:51 +0200, Ingo Molnar wrote:
> * Daniel Walker <dwalker@xxxxxxxxxx> wrote:
>
> > Index: linux-2.6.20/include/linux/serial_core.h
> > ===================================================================
> > --- linux-2.6.20.orig/include/linux/serial_core.h
> > +++ linux-2.6.20/include/linux/serial_core.h
> > @@ -213,7 +213,11 @@ struct uart_icount {
> > typedef unsigned int __bitwise__ upf_t;
> >
> > struct uart_port {
> > +#ifdef CONFIG_LATENCY_TIMING
> > + raw_spinlock_t lock; /* port lock */
> > +#else
> > spinlock_t lock; /* port lock */
> > +#endif
>
> ugh - this will only cause other problems if anyone else is trying to
> use the serial code. This needs a cleaner fix - such as not doing that
> printk from atomic context.

I assumed this fix wasn't totally right .. Interrupts could be enabled
just before printing , after any critical stuff has happened then
disabled again after printing .. Or are you thinking of something more
complex?

Daniel

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