I using zfs to store VMs backup , but when i run multiple Jobs at the same time sometimes this appear in dmesg

INFO: task z_iput:63527 blocked for more than 120 seconds.
"echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
z_iput          D ffff9c0add81a080     0 63527      2 0x00000080
Call Trace:
 [<ffffffffb5567c49>] schedule+0x29/0x70
[<ffffffffc09592d5>] cv_wait_common+0x125/0x150 [spl]
[<ffffffffb4ec2d00>] ? wake_up_atomic_t+0x30/0x30
[<ffffffffc0959315>] __cv_wait+0x15/0x20 [spl]
[<ffffffffc0acf493>] txg_wait_open+0xc3/0x110 [zfs]
[<ffffffffc0a70d1f>] dmu_free_long_range+0x27f/0x460 [zfs]
[<ffffffffc096c77a>]  ? avl_add+0x4a/0x80 [zavl]
[<ffffffffc0af7cf5>] zfs_rmnode+0x2a5/0x360 [zfs]
[<ffffffffc0b19a3f>] ? zfs_znode_hold_exit+0xff/0x130 [zfs]
[<ffffffffc0b1deda>] zfs_zinactive+0xda/0xf0 [zfs]
[<ffffffffc0b15757>] zfs_inactive+0x87/0x200 [zfs]
[<ffffffffb4fc72f9>] ? truncate_pagecache+0x59/0x60
[<ffffffffc0b30463>] zpl_evict_inode+0x43/0x60 [zfs]
[<ffffffffb505eaa4>] evict+0xb4/0x180
[<ffffffffb505f3ac>] iput+0xfc/0x190
[<ffffffffc0954d7c>] taskq_thread+0x2ac/0x4f0 [spl]
[<ffffffffb4ed67b0>] ? wake_up_state+0x20/0x20
[<ffffffffc0954ad0>] ? taskq_thread_spawn+0x60/0x60 [spl]
[<ffffffffb4ec1c31>] kthread+0xd1/0xe0
[<ffffffffb4ec1b60>] ? insert_kthread_work+0x40/0x40
[<ffffffffb5574c1d>] ret_from_fork_nospec_begin+0x7/0x21
[<ffffffffb4ec1b60>] ? insert_kthread_work+0x40/0x40

should i worry about this ? and how can i know what is causing it ?

1 Answer 1


So, the message is just telling you that some ZFS thread got blocked for a couple minutes, but does not say what was blocking it. A lot of these are caused by high load causing some kind of temporary "out of resource" condition.

Looking at the specific stack trace you posted, it looks like ZFS is trying to evict an inode (maybe after a file is deleted or something?), and to do that I guess it has to wait for a new transaction group to open. This probably means that an earlier txg took a long time to write out, which probably happened because there were a lot of IOs in that txg and it took a long time to write them all out.

As for whether to worry, I would say that all this matters only if it caused a noticeable performance issue. If you see them frequently and you don't see corresponding performance problems, it's probably safe to silence them using the suggestion in the message itself.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .