mirror of
https://git.proxmox.com/git/mirror_zfs.git
synced 2026-05-23 19:04:45 +03:00
Add zfs_iput_async() interface
Handle all iputs in zfs_purgedir() and zfs_inode_destroy() asynchronously to prevent deadlocks. When the iputs are allowed to run synchronously in the destroy call path deadlocks between xattr directory inodes and their parent file inodes are possible. Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov> Signed-off-by: Richard Yao <ryao@gentoo.org> Closes #457
This commit is contained in:
@@ -292,7 +292,7 @@ zfs_inode_destroy(struct inode *ip)
|
||||
}
|
||||
|
||||
if (zp->z_xattr_parent) {
|
||||
iput(ZTOI(zp->z_xattr_parent));
|
||||
zfs_iput_async(ZTOI(zp->z_xattr_parent));
|
||||
zp->z_xattr_parent = NULL;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user