diff options
Diffstat (limited to 'fs/btrfs/delayed-inode.c')
| -rw-r--r-- | fs/btrfs/delayed-inode.c | 27 | 
1 files changed, 6 insertions, 21 deletions
| diff --git a/fs/btrfs/delayed-inode.c b/fs/btrfs/delayed-inode.c index 3f1551d8a5c6..c49bf8f2889d 100644 --- a/fs/btrfs/delayed-inode.c +++ b/fs/btrfs/delayed-inode.c @@ -454,40 +454,25 @@ static void btrfs_release_delayed_item(struct btrfs_delayed_item *item)  static struct btrfs_delayed_item *__btrfs_first_delayed_insertion_item(  					struct btrfs_delayed_node *delayed_node)  { -	struct rb_node *p; -	struct btrfs_delayed_item *item = NULL; +	struct rb_node *p = rb_first_cached(&delayed_node->ins_root); -	p = rb_first_cached(&delayed_node->ins_root); -	if (p) -		item = rb_entry(p, struct btrfs_delayed_item, rb_node); - -	return item; +	return rb_entry_safe(p, struct btrfs_delayed_item, rb_node);  }  static struct btrfs_delayed_item *__btrfs_first_delayed_deletion_item(  					struct btrfs_delayed_node *delayed_node)  { -	struct rb_node *p; -	struct btrfs_delayed_item *item = NULL; - -	p = rb_first_cached(&delayed_node->del_root); -	if (p) -		item = rb_entry(p, struct btrfs_delayed_item, rb_node); +	struct rb_node *p = rb_first_cached(&delayed_node->del_root); -	return item; +	return rb_entry_safe(p, struct btrfs_delayed_item, rb_node);  }  static struct btrfs_delayed_item *__btrfs_next_delayed_item(  						struct btrfs_delayed_item *item)  { -	struct rb_node *p; -	struct btrfs_delayed_item *next = NULL; - -	p = rb_next(&item->rb_node); -	if (p) -		next = rb_entry(p, struct btrfs_delayed_item, rb_node); +	struct rb_node *p = rb_next(&item->rb_node); -	return next; +	return rb_entry_safe(p, struct btrfs_delayed_item, rb_node);  }  static int btrfs_delayed_item_reserve_metadata(struct btrfs_trans_handle *trans, | 
