diff options
Diffstat (limited to 'fs/btrfs/inode.c')
-rw-r--r-- | fs/btrfs/inode.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/fs/btrfs/inode.c b/fs/btrfs/inode.c index 43eb4535319d..5c349667c761 100644 --- a/fs/btrfs/inode.c +++ b/fs/btrfs/inode.c | |||
@@ -3129,9 +3129,6 @@ out: | |||
3129 | /* once for the tree */ | 3129 | /* once for the tree */ |
3130 | btrfs_put_ordered_extent(ordered_extent); | 3130 | btrfs_put_ordered_extent(ordered_extent); |
3131 | 3131 | ||
3132 | /* Try to release some metadata so we don't get an OOM but don't wait */ | ||
3133 | btrfs_btree_balance_dirty_nodelay(fs_info); | ||
3134 | |||
3135 | return ret; | 3132 | return ret; |
3136 | } | 3133 | } |
3137 | 3134 | ||
@@ -3254,6 +3251,8 @@ void btrfs_add_delayed_iput(struct inode *inode) | |||
3254 | ASSERT(list_empty(&binode->delayed_iput)); | 3251 | ASSERT(list_empty(&binode->delayed_iput)); |
3255 | list_add_tail(&binode->delayed_iput, &fs_info->delayed_iputs); | 3252 | list_add_tail(&binode->delayed_iput, &fs_info->delayed_iputs); |
3256 | spin_unlock(&fs_info->delayed_iput_lock); | 3253 | spin_unlock(&fs_info->delayed_iput_lock); |
3254 | if (!test_bit(BTRFS_FS_CLEANER_RUNNING, &fs_info->flags)) | ||
3255 | wake_up_process(fs_info->cleaner_kthread); | ||
3257 | } | 3256 | } |
3258 | 3257 | ||
3259 | void btrfs_run_delayed_iputs(struct btrfs_fs_info *fs_info) | 3258 | void btrfs_run_delayed_iputs(struct btrfs_fs_info *fs_info) |