find stuck in state "clock"

Simon 'corecode' Schubert corecode at fs.ei.tum.de
Sun Aug 28 16:24:26 PDT 2005


Simon 'corecode' Schubert wrote:
Ok, I tried to play a bit Sherlock Holmes (on the live system).
More data:

tcsh (holding the vnode lock) is stuck in:

#2  0xc017b7e0 in tsleep (ident=0xc7b127b4, flags=256, wmesg=0xc02a1a6a 
"ttywai", timo=0)
    at /usr/src/sys/kern/kern_synch.c:425
#3  0xc01930e7 in ttysleep (tp=0xc7b12768, chan=0xc7b127b4, slpflags=256,
    wmesg=0xc02a1a6a "ttywai", timo=0) at /usr/src/sys/kern/tty.c:2571
#4  0xc0191951 in ttywait (tp=0xc7b12768) at /usr/src/sys/kern/tty.c:1278
#5  0xc01919b2 in ttywflush (tp=0xc7b12768) at /usr/src/sys/kern/tty.c:1304
#6  0xc0191bab in ttylclose (tp=0xc7b12768, flag=3) at 
/usr/src/sys/kern/tty.c:1479
#7  0xc0194622 in ptsclose (dev=0xc7b20530, flag=3, mode=8192, 
td=0xc924c500)
    at /usr/src/sys/kern/tty_pty.c:246
#8  0xc0163ad5 in cdevsw_putport (port=<incomplete type>, lmsg=0xc8dab940)
    at /usr/src/sys/kern/kern_device.c:108
#9  0xc01795f5 in lwkt_domsg (port=0xc02ff720, msg=0xc8dab940)
    at /usr/src/sys/sys/msgport2.h:86
#10 0xc0163c34 in dev_dclose (dev=0xc7b20530, fflag=3, devtype=8192, 
td=0xc924c500)
    at /usr/src/sys/kern/kern_device.c:194
#11 0xc01bb0e2 in spec_close (ap=0xc8dab9dc) at 
/usr/src/sys/vfs/specfs/spec_vnops.c:630
#12 0xc024395d in ufsspec_close (ap=0xc8dab9dc) at 
/usr/src/sys/vfs/ufs/ufs_vnops.c:1866
#13 0xc0243f6e in ufs_vnoperatespec (ap=0xc8dab9dc)
    at /usr/src/sys/vfs/ufs/ufs_vnops.c:2379
#14 0xc01b6086 in vop_close (ops=<incomplete type>, vp=0xc8dd3298, fflag=3,
    td=0xc924c500) at /usr/src/sys/kern/vfs_vopops.c:423
#15 0xc01b53c7 in vn_close (vp=0xc8dd3298, flags=3, td=<incomplete type>)
    at /usr/src/sys/kern/vfs_vnops.c:381
#16 0xc01b5ecc in vn_closefile (fp=0xc0cf2c40, td=<incomplete type>)
    at /usr/src/sys/kern/vfs_vnops.c:966
#17 0xc0165c30 in fdrop (fp=0xc0cf2c40, td=0xc924c500) at 
/usr/src/sys/sys/file2.h:125
#18 0xc0165b97 in closef (fp=0xc0cf2c40, td=0xc924c500)
    at /usr/src/sys/kern/kern_descrip.c:1484
#19 0xc0165720 in fdfree (p=0xc9413780) at 
/usr/src/sys/kern/kern_descrip.c:1227
#20 0xc0169268 in exit1 (rv=0) at /usr/src/sys/kern/kern_exit.c:188
#21 0xc0169075 in sys_exit (uap=0xc8dabc34) at 
/usr/src/sys/kern/kern_exit.c:103

Question: why can't I kill this sleep?  It's got PCATCH!

and sshd (holding the cache lock for ttyp5 and trying to get the vnode 
lock) is in:

#2  0xc017b7e0 in tsleep (ident=0xc8dd330c, flags=0, wmesg=0xc02a68c5 
"vnode", timo=0)
    at /usr/src/sys/kern/kern_synch.c:425
#3  0xc016bc61 in acquire (lkp=0xc8dd330c, extflags=16777280, wanted=1536)
    at /usr/src/sys/kern/kern_lock.c:127
#4  0xc016bfaa in lockmgr (lkp=0xc8dd330c, flags=16777218, interlkp=0x0, 
td=0xc9248800)
    at /usr/src/sys/kern/kern_lock.c:354
#5  0xc01a9012 in vop_stdlock (ap=0xc90b8a94) at 
/usr/src/sys/kern/vfs_default.c:1217
#6  0xc0243f6e in ufs_vnoperatespec (ap=0xc90b8a94)
    at /usr/src/sys/vfs/ufs/ufs_vnops.c:2379
#7  0xc01b6606 in vop_lock (ops=<incomplete type>, vp=0xc8dd3298, 
flags=16777218,
    td=0xc9248800) at /usr/src/sys/kern/vfs_vopops.c:826
#8  0xc01b5e78 in vn_lock (vp=0xc8dd3298, flags=2, td=<incomplete type>)
    at /usr/src/sys/kern/vfs_vnops.c:940
#9  0xc01ae96c in vget (vp=
[gdb garbage output]
    at /usr/src/sys/kern/vfs_lock.c:319
#10 0xc01b304d in setfown (vp=0xc8dd3298, uid=0, gid=0)
    at /usr/src/sys/kern/vfs_syscalls.c:2292
#11 0xc01b30e4 in kern_chown (nd=0xc90b8bd8, uid=0, gid=0)
    at /usr/src/sys/kern/vfs_syscalls.c:2313
#12 0xc01b3132 in chown (uap=0xc90b8c34) at 
/usr/src/sys/kern/vfs_syscalls.c:2331

I wonder where in this code the cache entry is actually being held 
locked... Maybe it didn't unlock the entry at some other point?

cheers
  simon
--
Serve - BSD     +++  RENT this banner advert  +++    ASCII Ribbon   /"\
Work - Mac      +++  space for low $$$ NOW!1  +++      Campaign     \ /
Party Enjoy Relax   |   http://dragonflybsd.org      Against  HTML   \
Dude 2c 2 the max   !   http://golden-apple.biz       Mail + News   / \




More information about the Bugs mailing list