[OmniOS-discuss] "zpool import" triggers deadlock in somes cases ? (metaslab_group_taskqs)
Alex
alex.ranskis at gmail.com
Mon Apr 28 15:05:36 UTC 2014
Hi,
Thanks for your feedback ! It does not hang in my case, but maybe it is
related anyway.
On 28 April 2014 16:22, Youzhong Yang <youzhong at gmail.com> wrote:
> This could be the following issue:
>
> https://www.illumos.org/issues/4730
>
>
>
> On Mon, Apr 28, 2014 at 9:17 AM, Alex <alex.ranskis at gmail.com> wrote:
>
>> Hello,
>>
>> I'm trying to understand this behavior, which I see on servers connected
>> to an external disk enclosure. (I cannot reproduce it on a simple 1 disk VM)
>>
>> # kstat -c taskq | grep metaslab_group_tasksq| wc -l
>> 1112
>>
>> # zpool import >/dev/null
>>
>> # kstat -c taskq | grep metaslab_group_tasksq| wc -l
>> 1160
>>
>>
>> we are accumulating 'metaslab_group_taskqs'
>>
>> module: unix instance: 513
>> name: metaslab_group_tasksq class: taskq
>> crtime 842173.739164514
>> executed 0
>> maxtasks 0
>> nactive 0
>> nalloc 0
>> pid 0
>> priority 60
>> snaptime 842774.7092530ok 06
>> tasks 0
>> threads 3
>> totaltime 0
>>
>>
>> The "zpool import" command itself runs fine. I get the same behavior
>> whether there are pools to import or not.
>>
>> but kernel threads are piling up, for each CV there are 3 threads :
>> > ffffff05844fe080::wchaninfo -v
>> ADDR TYPE NWAITERS THREAD PROC
>> ffffff05844fe080 cond 3: ffffff0021c58c40 sched
>> ffffff0021c5ec40 sched
>> ffffff0021c64c40 sched
>>
>> and they're all blocking, with a similar stack :
>> > ffffff0021c58c40::findstack -v
>> stack pointer for thread ffffff0021c58c40: ffffff0021c58a80
>> [ ffffff0021c58a80 _resume_from_idle+0xf4() ]
>> ffffff0021c58ab0 swtch+0x141()
>> ffffff0021c58af0 cv_wait+0x70(ffffff05844fe080, ffffff05844fe070)
>> ffffff0021c58b60 taskq_thread_wait+0xbe(ffffff05844fe050,
>> ffffff05844fe070, ffffff05844fe080, ffffff0021c58bc0, ffffffffffffffff)
>> ffffff0021c58c20 taskq_thread+0x37c(ffffff05844fe050)
>> ffffff0021c58c30 thread_start+8()
>>
>>
>> the taskq seems to be created by a call to metaslab_group_create(), here :
>> zfs`vdev_alloc+0x54a
>> zfs`spa_config_parse+0x48
>> zfs`spa_config_parse+0xda
>> zfs`spa_config_valid+0x78
>> zfs`spa_load_impl+0xa81
>> zfs`spa_load+0x14e
>> zfs`spa_tryimport+0xaa
>> zfs`zfs_ioc_pool_tryimport+0x51
>> zfs`zfsdev_ioctl+0x4a7
>> genunix`cdev_ioctl+0x39
>> specfs`spec_ioctl+0x60
>> genunix`fop_ioctl+0x55
>> genunix`ioctl+0x9b
>> unix`sys_syscall32+0xff
>>
>>
>> I'm out of my depth here, any pointer to investigate further would be
>> much appreciated !
>>
>> cheers,
>> alex
>>
>> _______________________________________________
>> OmniOS-discuss mailing list
>> OmniOS-discuss at lists.omniti.com
>> http://lists.omniti.com/mailman/listinfo/omnios-discuss
>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://omniosce.org/ml-archive/attachments/20140428/fa163582/attachment-0001.html>
More information about the OmniOS-discuss
mailing list