Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 17 Sep 2021 13:21:52 +0000
From:      bugzilla-noreply@freebsd.org
To:        fs@FreeBSD.org
Subject:   [Bug 258208] [zfs] locks up when using rollback or destroy on both 13.0-RELEASE & sysutils/openzfs port
Message-ID:  <bug-258208-3630-6gTQSEw5hJ@https.bugs.freebsd.org/bugzilla/>
In-Reply-To: <bug-258208-3630@https.bugs.freebsd.org/bugzilla/>
References:  <bug-258208-3630@https.bugs.freebsd.org/bugzilla/>

next in thread | previous in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D258208

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+0=
x158
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=20

  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.

--=20
You are receiving this mail because:
You are the assignee for the bug.=



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-258208-3630-6gTQSEw5hJ>