Skip to content

Commit

Permalink
Btrfs: remove last_log_alloc allocator optimization
Browse files Browse the repository at this point in the history
The tree logging code was trying to separate tree log allocations
from normal metadata allocations to improve writeback patterns during
an fsync.

But, the code was not effective and ended up just mixing tree log
blocks with regular metadata.  That seems to be working fairly well,
so the last_log_alloc code can be removed.

Signed-off-by: Chris Mason <chris.mason@oracle.com>
  • Loading branch information
Chris Mason committed Oct 3, 2008
1 parent cb843a6 commit 30c43e2
Showing 3 changed files with 0 additions and 9 deletions.
1 change: 0 additions & 1 deletion fs/btrfs/ctree.h
Original file line number Diff line number Diff line change
@@ -672,7 +672,6 @@ struct btrfs_fs_info {
u64 delalloc_bytes;
u64 last_alloc;
u64 last_data_alloc;
u64 last_log_alloc;

spinlock_t ref_cache_lock;
u64 total_ref_cache_size;
7 changes: 0 additions & 7 deletions fs/btrfs/extent-tree.c
Original file line number Diff line number Diff line change
@@ -2228,13 +2228,6 @@ static int noinline find_free_extent(struct btrfs_trans_handle *trans,
if ((data & BTRFS_BLOCK_GROUP_DATA) && btrfs_test_opt(root, SSD))
last_ptr = &root->fs_info->last_data_alloc;

if (root->root_key.objectid == BTRFS_TREE_LOG_OBJECTID) {
last_ptr = &root->fs_info->last_log_alloc;
if (!last_ptr == 0 && root->fs_info->last_alloc) {
*last_ptr = root->fs_info->last_alloc + empty_cluster;
}
}

if (last_ptr) {
if (*last_ptr)
hint_byte = *last_ptr;
1 change: 0 additions & 1 deletion fs/btrfs/transaction.c
Original file line number Diff line number Diff line change
@@ -61,7 +61,6 @@ static noinline int join_transaction(struct btrfs_root *root)
root->fs_info->generation++;
root->fs_info->last_alloc = 0;
root->fs_info->last_data_alloc = 0;
root->fs_info->last_log_alloc = 0;
cur_trans->num_writers = 1;
cur_trans->num_joined = 0;
cur_trans->transid = root->fs_info->generation;

0 comments on commit 30c43e2

Please sign in to comment.