diff options
author | Eric Paris <eparis@redhat.com> | 2010-02-23 14:43:04 -0500 |
---|---|---|
committer | Chris Mason <chris.mason@oracle.com> | 2010-03-08 16:26:50 -0500 |
commit | 6bef4d317193d3badbbfa3f3c593758ace84a629 (patch) | |
tree | 8aa9fcf3297c69033b9a9a83a27ecccaab0f9d7d /fs/btrfs/free-space-cache.c | |
parent | 3f6fae9559225741c91f1320090b285da1413290 (diff) |
Btrfs: use RB_ROOT to intialize rb_trees instead of setting rb_node to NULL
btrfs inialize rb trees in quite a number of places by settin rb_node =
NULL; The problem with this is that 17d9ddc72fb8bba0d4f678 in the
linux-next tree adds a new field to that struct which needs to be NULL for
the new rbtree library code to work properly. This patch uses RB_ROOT as
the intializer so all of the relevant fields will be NULL'd. Without the
patch I get a panic.
Signed-off-by: Eric Paris <eparis@redhat.com>
Acked-by: Venkatesh Pallipadi <venkatesh.pallipadi@intel.com>
Signed-off-by: Chris Mason <chris.mason@oracle.com>
Diffstat (limited to 'fs/btrfs/free-space-cache.c')
-rw-r--r-- | fs/btrfs/free-space-cache.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/fs/btrfs/free-space-cache.c b/fs/btrfs/free-space-cache.c index cb2849f03251..dd831ed31eea 100644 --- a/fs/btrfs/free-space-cache.c +++ b/fs/btrfs/free-space-cache.c | |||
@@ -870,7 +870,7 @@ __btrfs_return_cluster_to_free_space( | |||
870 | tree_insert_offset(&block_group->free_space_offset, | 870 | tree_insert_offset(&block_group->free_space_offset, |
871 | entry->offset, &entry->offset_index, 0); | 871 | entry->offset, &entry->offset_index, 0); |
872 | } | 872 | } |
873 | cluster->root.rb_node = NULL; | 873 | cluster->root = RB_ROOT; |
874 | 874 | ||
875 | out: | 875 | out: |
876 | spin_unlock(&cluster->lock); | 876 | spin_unlock(&cluster->lock); |
@@ -1355,7 +1355,7 @@ void btrfs_init_free_cluster(struct btrfs_free_cluster *cluster) | |||
1355 | { | 1355 | { |
1356 | spin_lock_init(&cluster->lock); | 1356 | spin_lock_init(&cluster->lock); |
1357 | spin_lock_init(&cluster->refill_lock); | 1357 | spin_lock_init(&cluster->refill_lock); |
1358 | cluster->root.rb_node = NULL; | 1358 | cluster->root = RB_ROOT; |
1359 | cluster->max_size = 0; | 1359 | cluster->max_size = 0; |
1360 | cluster->points_to_bitmap = false; | 1360 | cluster->points_to_bitmap = false; |
1361 | INIT_LIST_HEAD(&cluster->block_group_list); | 1361 | INIT_LIST_HEAD(&cluster->block_group_list); |