Subject: Re: ppp/tty panic
To: Iain Hibbert <plunky@rya-online.net>
From: Andrew Doran <ad@netbsd.org>
List: current-users
Date: 11/10/2007 18:31:56
On Sat, Nov 10, 2007 at 11:48:43AM +0000, Iain Hibbert wrote:

> with a -current kernel from this morning (userland about a month old), I
> get the following panic when trying to connect with ppp
> 
> panic: kernel diagnostic assertion "mutex_owned(&tty_lock)" failed: file "/home/plunky/src/sys/kern/tty.c", line 1396
> Stopped in pid 478.1 (pppd) at	netbsd:breakpoint+0x1:	ret
> db> bt
> breakpoint(c048cd70,c042fde1,c0451cdf,c0451da4,574) at netbsd:breakpoint+0x1
> __kernassert(c042fde1,c0451da4,574,c0451cdf,c0bfd800) at netbsd:__kernassert+0x39
> ttyflush(cb724abc,3,4,c0290429,cb724abc) at netbsd:ttyflush+0x119
> pppopen(506,cb724abc,0,c02714f7,7) at netbsd:pppopen+0x188
> ttioctl(cb724abc,8004741b,cb752b90,3,cb569000) at netbsd:ttioctl+0x3e6
> ptyioctl(506,8004741b,cb752b90,3,cb569000) at netbsd:ptyioctl+0x2a4
> spec_ioctl(cb752a70,c0ca449c,ffffffff,c03f8300,caffaca4) at netbsd:spec_ioctl+0xbd
> VOP_IOCTL(caffaca4,8004741b,cb752b90,3,c9dc3300) at netbsd:VOP_IOCTL+0x3d
> vn_ioctl(cb72bd88,8004741b,cb752b90,cb569000,cb72bf38) at netbsd:vn_ioctl+0x71
> sys_ioctl(cb569000,cb752c48,cb752c68,8075e40,8075000) at netbsd:sys_ioctl+0x1b4
> syscall_plain() at netbsd:syscall_plain+0x15a
> --- syscall (number 54) ---
> 0xbbb5d527:
> 
> any ideas?

The locking around the tty code is kind of gross... I just checked in a fix,
I think it should work now.

Thanks,
Andrew