This bug was fixed in the package zfs-linux - 0.8.1-1ubuntu14.4
---------------
zfs-linux (0.8.1-1ubuntu14.4) eoan; urgency=medium
* Fix deadlock in 'zfs rollback' (LP: #1847832)
- Upstream ZFS fix e7a2fa70c3b0 ("Fix deadlock in 'zfs rollback')
minor backport, wiggle and context adjustments.
-- Colin Ian King <[email protected]> Tue, 10 Mar 2020 17:45:23
+0000
** Changed in: zfs-linux (Ubuntu Eoan)
Status: Fix Committed => Fix Released
--
You received this bug notification because you are a member of Kernel
Packages, which is subscribed to zfs-linux in Ubuntu.
https://bugs.launchpad.net/bugs/1847832
Title:
Backport ZoL pull request 9203 into the official packages.
Status in zfs-linux package in Ubuntu:
In Progress
Status in zfs-linux source package in Eoan:
Fix Released
Bug description:
== SRU Justification, EOAN ==
ZFS can deadlock, this can be sometimes triggered with a zfs rollback
- "the zfs_resume_fs() code path may cause zfs to spawn new threads as
it reinstantiates the suspended fs's zil. When a new thread is
spawned, the kernel may attempt to free memory for that thread by
freeing some unreferenced inodes. If it happens to select inodes that
are a a part of the suspended fs a deadlock will occur because freeing
inodes requires holding the fs's z_teardown_inactive_lock which is
still held from the suspend."
== The Fix ==
Backport of ZFS upstream commit
e7a2fa70c3b0d8c8cee2b484038bb5623c7c1ea9 ("Fix deadlock in 'zfs
rollback'")
The backport is relatively simple context wiggle.
== Test Case ==
This is hard to trigger so testing is non-trivial. To check for
regressions we run the entire Ubuntu ZFS regression test suite.
Without the fix rollbacks can very occasionally trip this issue. With
the test, it's not possible.
== Regression Potential ==
The fix adds in an extra z_suspended flag to track suspended state and
adds an extra reference to stop the kernel from free'ing inodes on a
suspected file system. The changes are small and are well-used in
upstream ZFS so I believe if a regression was to have occurred it
would have been found by the regression testing.
--------------------- Original Bug Report Below -------------------
Hopefully this is the correct bug tracker to report this on.
Recently, I ran into a bug in ZFS as shipped in Ubuntu 19.10 that
caused the kernel to deadlock and the system to eventually hang.
I was advised by a ZFS on Linux project maintainer that this was a bug
that was fixed in 0.8.2.
The relevant pull request is here:
https://github.com/zfsonlinux/zfs/pull/9203
It would probably be a good idea to backport that pull request into
19.10's build of ZFS.
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/zfs-linux/+bug/1847832/+subscriptions
--
Mailing list: https://launchpad.net/~kernel-packages
Post to : [email protected]
Unsubscribe : https://launchpad.net/~kernel-packages
More help : https://help.launchpad.net/ListHelp