Bug 231211 - [zfs] possible deadlock triggered by zfs test suite
Summary: [zfs] possible deadlock triggered by zfs test suite
Status: New
Alias: None
Product: Base System
Classification: Unclassified
Component: kern (show other bugs)
Version: CURRENT
Hardware: Any Any
: --- Affects Only Me
Assignee: freebsd-fs mailing list
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2018-09-07 04:08 UTC by Li-Wen Hsu
Modified: 2019-06-15 10:52 UTC (History)
4 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Li-Wen Hsu freebsd_committer 2018-09-07 04:08:22 UTC
When running zfs test suite in bhyve, it usually panics with following message:

panic: deadlres_td_sleep_q: possible deadlock detected for 0xfffff8006b642000, blocked for 180024 ticks

VM image and core files (vmcore.1 is used in this bug report, vmcore.0 is previous run, also panicked in the same point):

https://people.freebsd.org/~lwhsu/zfs-deadlock/

Some ddb outputs:

https://gist.github.com/lwhsu/88bce6ffaa2ccc5e8da4fe186dbeb54f

Also note that there might be another issue:

chain 96:                                                                     
 thread 100230 (pid 0, zio_null_intr) blocked on lockmgr (null)EXCL                     
thread -559038242 (pid 268435455, pppppppppppppppppppppppppppppppppppppppppppppsecondarycache) ??? (0xdeadc0de)
Comment 1 Mark Johnston freebsd_committer 2018-09-14 18:01:58 UTC
Is this still reproducible? The job seems to be running to completion: https://ci.freebsd.org/job/FreeBSD-head-amd64-test_zfs/
Comment 2 Stefan Rink 2019-06-15 10:52:29 UTC
I hit this bug on a bhyve with UFS filesystem on 13-current!

 thread 100377 (pid 36752, sh) blocked on lockmgr ufsEXCL
 thread 100078 (pid 22, syncer) blocked on lockmgr bufwaitEXCL

It's still in KDB but I can only access the console via VNC so can't copy/paste text, dump it or make screenshots.

Trace of the sh process that started this;
sched_switch()
mi_switch()
sleepq_switch()
sleepq_wait()
sleeplk()
lockmgr_slock_hard()
__lockmgr_args()
ffs_lock()
VOP_LOCK1_APV()
_vn_lock()
vget()
cache_lookup()
vfs_cache_lookup()
VOP_LOOKUP_APV()
lookup()
namei()
vn_open_cred()
kern_openat()
amd64_syscall() - 




Need any more info?