FreeBSD 8.1-R/amd64 - zfs 'hangs' - help tracing?
Andriy Gapon
avg at icyb.net.ua
Wed Sep 29 15:03:54 UTC 2010
on 29/09/2010 13:30 Karl Pielorz said the following:
> --On 29 September 2010 11:24 +0100 Martin Simmons <martin at lispworks.com> wrote:
>
>>> I saw a while ago a command under 8.1 to get 'more info' for these stuck
>>> processes, but can't for the life of me remember it?
>>
>> Maybe procstat -k -k $pid is what you are looking for (i.e. a kernel
>> backtrace)? Use -a instead of $pid to get all processes.
>
> Yup, that's it - thanks!
>
> Having run it I get:
>
> procstat -k -k 1927 (PID 1927 is the 'ls' that's locked up)
>
> PID TID COMM TDNAME KSTACK
> 1927 100206 ls - mi_switch+0x16f sleepq_wait+0x42
> _cv_wait+0x111 zio_wait+0x61 dbuf_read+0x39a dnode_hold_impl+0xe7
> dmu_bonus_hold+0x2a zfs_zget+0x227 zfs_dirent_lock+0x4e3 zfs_dirlook+0x69
> zfs_lookup+0x1f0 zfs_freebsd_lookup+0x81 vfs_cache_lookup+0xf0 VOP_LOOKUP_APV+0x40
> lookup+0x40a namei+0x52b kern_statat_vnhook+0x8f kern_statat+0x15
>
>
> Which will hopefully mean something more to someone here than it does me at the
> moment ;)
This looks like the process is stuck waiting for I/O completion.
Can't tell whether it's an I/O problem, or perhaps the I/O operation has long
completed but wakeup from it was lost...
--
Andriy Gapon
More information about the freebsd-fs
mailing list