[Bug 258208] [zfs] locks up when using rollback or destroy on both 13.0-RELEASE & sysutils/openzfs port
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Fri, 17 Sep 2021 13:21:52 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=258208
Mark Johnston <markj@FreeBSD.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|New |Open
--- Comment #6 from Mark Johnston <markj@FreeBSD.org> ---
(In reply to Dave Cottlehuber from comment #5)
So there is effectively an LOR here:
56 152682 zfs - mi_switch+0xc1
_vm_page_busy_sleep+0x100 vm_page_sleep_if_busy+0x28 vm_object_page_remove+0xdf
vn_pages_remove+0x4c zfs_rezget+0x35 zfs_resume_fs+0x258 zfs_ioc_rollback+0x158
zfsdev_ioctl_common+0x4e3 zfsdev_ioctl+0x143 devfs_ioctl+0xc7 vn_ioctl+0x1a4
devfs_ioctl_f+0x1e kern_ioctl+0x26d sys_ioctl+0xf6 amd64_syscall+0x10c
fast_syscall_common+0xf8
445 168579 ping - mi_switch+0xc1
_sleep+0x1cb rms_rlock_fallback+0x90 zfs_freebsd_getpages+0x52
vnode_pager_getpages+0x41 vm_pager_get_pages+0x22 vm_fault+0x49a
vm_fault_trap+0x6d trap_pfault+0x1f8 trap+0x3fd calltrap+0x8
The page array passed to zfs_getpages() is busied upon entry, and then we do
ZFS_ENTER(zfsvfs). But zfs_rezget() is called with this lock held and then
tries to busy vnode pages.
--
You are receiving this mail because:
You are the assignee for the bug.