Drain iput taskq inside z_teardown_lock #3282
Closed
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
We need to hold the z_teardown_lock as a writer whilst draining the iput
taskq so the taskq isn't being filled up again behind us.
These changes revert commit @fd23720 and address the deadlock raised in
issue #1988 by removing ZFS_ENTER from zfs_putpage and zpl_writepages.
Also remove a redundant zil_commit from zpl_writepages.
Signed-off-by: Chris Dunlop chris@onthe.net.au
Closes #3281