-
Notifications
You must be signed in to change notification settings - Fork 1.8k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Fix deadlocks resulting from the post-kmem rework merge
Since many more allocations are allowed to sleep following the post-kmem rework merge, there are many more opportunities for deadlocks related to the pre-superblock z_hold_mtx array. This patch puts all threads locking z_hold_mtx under PF_STRANS to disallow re-entry into the zfs code. ... WIP patch, still ... Previous comments which no longer apply: Put the following functions under PF_FSTRANS to prevent deadlocks due to re-entering the filesystem during reclaim: dbuf_hold() dmu_prefetch() sa_buf_hold() Testing this one now: dmu_zfetch_fetch() - z_hold_mtx[] via zget and zf_rwlock via dmu_zfetch
- Loading branch information
Showing
5 changed files
with
36 additions
and
11 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters