diff options
| -rw-r--r-- | fs/btrfs/inode.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/fs/btrfs/inode.c b/fs/btrfs/inode.c index abed81d93687..931036c6eb90 100644 --- a/fs/btrfs/inode.c +++ b/fs/btrfs/inode.c | |||
| @@ -8216,6 +8216,10 @@ static int __start_delalloc_inodes(struct btrfs_root *root, int delay_iput) | |||
| 8216 | 8216 | ||
| 8217 | work = btrfs_alloc_delalloc_work(inode, 0, delay_iput); | 8217 | work = btrfs_alloc_delalloc_work(inode, 0, delay_iput); |
| 8218 | if (unlikely(!work)) { | 8218 | if (unlikely(!work)) { |
| 8219 | if (delay_iput) | ||
| 8220 | btrfs_add_delayed_iput(inode); | ||
| 8221 | else | ||
| 8222 | iput(inode); | ||
| 8219 | ret = -ENOMEM; | 8223 | ret = -ENOMEM; |
| 8220 | goto out; | 8224 | goto out; |
| 8221 | } | 8225 | } |
