diff options
Diffstat (limited to 'fs/btrfs/ordered-data.c')
| -rw-r--r-- | fs/btrfs/ordered-data.c | 17 | 
1 files changed, 8 insertions, 9 deletions
diff --git a/fs/btrfs/ordered-data.c b/fs/btrfs/ordered-data.c index 7b40e2e7292a..a3aca495e33e 100644 --- a/fs/btrfs/ordered-data.c +++ b/fs/btrfs/ordered-data.c @@ -663,7 +663,7 @@ static void btrfs_run_ordered_extent_work(struct btrfs_work *work)   * wait for all the ordered extents in a root.  This is done when balancing   * space between drives.   */ -int btrfs_wait_ordered_extents(struct btrfs_root *root, int nr, +u64 btrfs_wait_ordered_extents(struct btrfs_root *root, u64 nr,  			       const u64 range_start, const u64 range_len)  {  	struct btrfs_fs_info *fs_info = root->fs_info; @@ -671,7 +671,7 @@ int btrfs_wait_ordered_extents(struct btrfs_root *root, int nr,  	LIST_HEAD(skipped);  	LIST_HEAD(works);  	struct btrfs_ordered_extent *ordered, *next; -	int count = 0; +	u64 count = 0;  	const u64 range_end = range_start + range_len;  	mutex_lock(&root->ordered_extent_mutex); @@ -701,7 +701,7 @@ int btrfs_wait_ordered_extents(struct btrfs_root *root, int nr,  		cond_resched();  		spin_lock(&root->ordered_extent_lock); -		if (nr != -1) +		if (nr != U64_MAX)  			nr--;  		count++;  	} @@ -720,13 +720,13 @@ int btrfs_wait_ordered_extents(struct btrfs_root *root, int nr,  	return count;  } -int btrfs_wait_ordered_roots(struct btrfs_fs_info *fs_info, int nr, -			      const u64 range_start, const u64 range_len) +u64 btrfs_wait_ordered_roots(struct btrfs_fs_info *fs_info, u64 nr, +			     const u64 range_start, const u64 range_len)  {  	struct btrfs_root *root;  	struct list_head splice; -	int done; -	int total_done = 0; +	u64 total_done = 0; +	u64 done;  	INIT_LIST_HEAD(&splice); @@ -748,9 +748,8 @@ int btrfs_wait_ordered_roots(struct btrfs_fs_info *fs_info, int nr,  		total_done += done;  		spin_lock(&fs_info->ordered_root_lock); -		if (nr != -1) { +		if (nr != U64_MAX) {  			nr -= done; -			WARN_ON(nr < 0);  		}  	}  	list_splice_tail(&splice, &fs_info->ordered_roots);  | 
