diff options
| author | Andi Kleen <andi@firstfloor.org> | 2010-10-29 15:14:31 -0400 | 
|---|---|---|
| committer | Chris Mason <chris.mason@oracle.com> | 2010-10-29 15:14:31 -0400 | 
| commit | 411fc6bcef54f828a5458f4730c68abdf13c6bf0 (patch) | |
| tree | 89b91cd7e0d7633e9d6e386e388bd0493165f66c /fs/btrfs/relocation.c | |
| parent | d0b678cb0a26783ab7238784f1e7e608e5caafa3 (diff) | |
| download | olio-linux-3.10-411fc6bcef54f828a5458f4730c68abdf13c6bf0.tar.xz olio-linux-3.10-411fc6bcef54f828a5458f4730c68abdf13c6bf0.zip  | |
Btrfs: Fix variables set but not read (bugs found by gcc 4.6)
These are all the cases where a variable is set, but not
read which are really bugs.
- Couple of incorrect error handling fixed.
- One incorrect use of a allocation policy
- Some other things
Still needs more review.
Found by gcc 4.6's new warnings.
[akpm@linux-foundation.org: fix build.  Might have been bitrot]
Signed-off-by: Andi Kleen <ak@linux.intel.com>
Cc: Chris Mason <chris.mason@oracle.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Chris Mason <chris.mason@oracle.com>
Diffstat (limited to 'fs/btrfs/relocation.c')
| -rw-r--r-- | fs/btrfs/relocation.c | 4 | 
1 files changed, 3 insertions, 1 deletions
diff --git a/fs/btrfs/relocation.c b/fs/btrfs/relocation.c index fd0714475db..045c9c2b2d7 100644 --- a/fs/btrfs/relocation.c +++ b/fs/btrfs/relocation.c @@ -3094,6 +3094,8 @@ static int add_tree_block(struct reloc_control *rc,  		BUG_ON(item_size != sizeof(struct btrfs_extent_item_v0));  		ret = get_ref_objectid_v0(rc, path, extent_key,  					  &ref_owner, NULL); +		if (ret < 0) +			return ret;  		BUG_ON(ref_owner >= BTRFS_MAX_LEVEL);  		level = (int)ref_owner;  		/* FIXME: get real generation */ @@ -4218,7 +4220,7 @@ int btrfs_reloc_clone_csums(struct inode *inode, u64 file_pos, u64 len)  		btrfs_add_ordered_sum(inode, ordered, sums);  	}  	btrfs_put_ordered_extent(ordered); -	return 0; +	return ret;  }  void btrfs_reloc_cow_block(struct btrfs_trans_handle *trans,  |