kern/61946: lock order reversal: when "ssh -f -L"

TOGAWA Satoshi toga at puyo.org
Mon Jan 26 06:40:37 PST 2004


>Number:         61946
>Category:       kern
>Synopsis:       lock order reversal: when "ssh -f -L"
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Mon Jan 26 06:40:13 PST 2004
>Closed-Date:
>Last-Modified:
>Originator:     User &
>Release:        FreeBSD 5.2-CURRENT i386
>Organization:
none
>Environment:
System: FreeBSD nayuki.vegalta.org 5.2-CURRENT FreeBSD 5.2-CURRENT #0: Mon Jan 26 16:15:36 JST 2004 togawa at nayuki.vegalta.org:/usr/obj/usr/src/sys/NAYUKI i386

>Description:
	When I execute ssh command with port-fowarding and background,
	"ssh -f -L 143:localhost:143 foo.example.com ping -i 60 localhost"
	(ping command is to keep alive connection)
	I see this error log. And ssh command works fine.

	------
	lock order reversal
	 1st 0xc2dac938 filedesc structure (filedesc structure) @ /usr/src/sys/kern/sys_generic.c:901
	 2nd 0xc0925e80 Giant (Giant) @ /usr/src/sys/fs/specfs/spec_vnops.c:377
	Stack backtrace:
	backtrace(c086c8e8,c0925e80,c086893d,c086893d,c0863f4e) at backtrace+0x17
	witness_lock(c0925e80,8,c0863f4e,179,1) at witness_lock+0x6f6
	_mtx_lock_flags(c0925e80,0,c0863f4e,179,c086cef9) at _mtx_lock_flags+0xda
	spec_poll(d1b83afc,d1b83b1c,c06a85dc,d1b83afc,c0908040) at spec_poll+0x134
	spec_vnoperate(d1b83afc,c0908040,c2ae4410,40,c2b7e900) at spec_vnoperate+0x18
	vn_poll(c2b05c7c,40,c2b7e900,c2add930,c2b7e900) at vn_poll+0x3c
	selscan(c2add930,d1b83b9c,d1b83b8c,9,4) at selscan+0x141
	kern_select(c2add930,9,806f2c0,806f2e0,0) at kern_select+0x36f
	select(c2add930,d1b83d14,c0887567,3ee,5) at select+0x66
	syscall(2f,2f,2f,0,3) at syscall+0x2c0
	Xint0x80_syscall() at Xint0x80_syscall+0x1d
	--- syscall (93), eip = 0x282d5d2f, esp = 0xbfbfe93c, ebp = 0xbfbfe9e8 ---
	------

	When without "-f -L", this error is not occered.

>How-To-Repeat:
	ssh -f -L 143:localhost:143 foo.example.com echo ''

>Fix:
	I don't know...
>Release-Note:
>Audit-Trail:
>Unformatted:


More information about the freebsd-bugs mailing list