2.6.9-rc2+BK hvc console oops

Ryan Arnold rsa at us.ibm.com
Tue Sep 21 04:42:43 EST 2004


On Sat, 2004-09-18 at 02:06, Anton Blanchard wrote:
> Hi,
> 
> Just got this oops on current -BK.
> 
> Anton
> 
> INIT: Sending processes the KILL signal
> cpu 0x0: Vector: 300 (Data Access) at [c00000000f86f460]
>     pc: c0000000003fdb38: ._spin_lock_irqsave+0x30/0xbc
>     lr: c000000000221c18: .hvc_hangup+0x38/0xd4
>     sp: c00000000f86f6e0
>    msr: 8000000000001032

Ugh, The problem here is the same as was seen in hvc_close() earlier.  I
should have been paying more attention.  My naive fix for blocking ldisc
writes during a tty close by setting tty->driver_data = NULL isn't going
to cut it.

It looks like hangup is being called while tty-release() is waiting for
a previously called driver level close() operation to complete.  The tty
layer doesn't seem to care about the fact that release_dev() is
blocking.  I think I may get rid of the tty->driver_data = NULL fix and
use an atomic write/read on a flag during the close operation to prevent
such things as writes and hangups during close ops.

Ryan S. Arnold
IBM Linux Technology Center








More information about the Linuxppc64-dev mailing list