Re: 2.6.16.18 kernel freezes while pppd is exiting

From: Paul Fulghum
Date: Mon Jun 12 2006 - 12:10:23 EST


Alan Cox wrote:
spin_unlock_irqrestore(&tty->buf.lock, flags);
+ clear_bit(TTY_FLUSHING, &tty->flags);


Shouldn't those two be reversed if you want to go with this path.

I don't see that is necessary.

> How is this occuring anyway the flush_to_ldisc path should never re-enter.

If a driver has low_latency set, flush_to_ldisc
can be called from both scheduled work (due to
hitting TTY_DONT_FLIP) and directly from an ISR.
On an SMP system, they can run in parallel.

I don't know for sure that is the path being hit,
it could be some other odd combination.
But there is no inherent serialization
of flush_to_ldisc.

--
Paul Fulghum
Microgate Systems, Ltd.
-
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/