diff options
Diffstat (limited to 'fs')
-rw-r--r-- | fs/btrfs/disk-io.c | 3 | ||||
-rw-r--r-- | fs/btrfs/extent-tree.c | 7 |
2 files changed, 5 insertions, 5 deletions
diff --git a/fs/btrfs/disk-io.c b/fs/btrfs/disk-io.c index 2489ffa5fb38..e1b6e13a5ae8 100644 --- a/fs/btrfs/disk-io.c +++ b/fs/btrfs/disk-io.c | |||
@@ -94,9 +94,6 @@ struct buffer_head *btrfs_find_tree_block(struct btrfs_root *root, u64 blocknr) | |||
94 | } while (bh != head); | 94 | } while (bh != head); |
95 | out_unlock: | 95 | out_unlock: |
96 | unlock_page(page); | 96 | unlock_page(page); |
97 | if (ret) { | ||
98 | touch_buffer(ret); | ||
99 | } | ||
100 | page_cache_release(page); | 97 | page_cache_release(page); |
101 | return ret; | 98 | return ret; |
102 | } | 99 | } |
diff --git a/fs/btrfs/extent-tree.c b/fs/btrfs/extent-tree.c index 71e3b311fc42..aca5802a8a1e 100644 --- a/fs/btrfs/extent-tree.c +++ b/fs/btrfs/extent-tree.c | |||
@@ -311,7 +311,10 @@ int btrfs_finish_extent_commit(struct btrfs_trans_handle *trans, struct | |||
311 | clear_radix_bit(pinned_radix, gang[i]); | 311 | clear_radix_bit(pinned_radix, gang[i]); |
312 | } | 312 | } |
313 | } | 313 | } |
314 | root->fs_info->block_group_cache = NULL; | 314 | if (root->fs_info->block_group_cache) { |
315 | root->fs_info->block_group_cache->last_alloc = | ||
316 | root->fs_info->block_group_cache->first_free; | ||
317 | } | ||
315 | return 0; | 318 | return 0; |
316 | } | 319 | } |
317 | 320 | ||
@@ -578,7 +581,7 @@ check_failed: | |||
578 | if (last_block < search_start) | 581 | if (last_block < search_start) |
579 | last_block = search_start; | 582 | last_block = search_start; |
580 | hole_size = key.objectid - last_block; | 583 | hole_size = key.objectid - last_block; |
581 | if (hole_size > num_blocks) { | 584 | if (hole_size >= num_blocks) { |
582 | ins->objectid = last_block; | 585 | ins->objectid = last_block; |
583 | ins->offset = hole_size; | 586 | ins->offset = hole_size; |
584 | goto check_pending; | 587 | goto check_pending; |