summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHans van Kranenburg <hans.van.kranenburg@mendix.com>2019-01-23 20:03:49 +0100
committerBen Hutchings <ben@decadent.org.uk>2019-11-22 15:57:32 +0000
commit4eeed526d58a3d35e91289e2397a6c9d4800afde (patch)
treeef668bc46b2ac0d4fddfee31115f7b5e1eceb6d3
parent31e2808f4dd3759d4cfe8369295624aa063ee3eb (diff)
btrfs: partially apply b8b93addde
Extracted from commit b8b93addde "btrfs: cleanup 64bit/32bit divs, provably bounded values", to allow commits 793ff2c88c6 "btrfs: volumes: Cleanup stripe size calculation" and baf92114c7 "btrfs: alloc_chunk: fix more DUP stripe size handling" to apply cleanly. [bwh: Add patch description] Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
-rw-r--r--fs/btrfs/volumes.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/fs/btrfs/volumes.c b/fs/btrfs/volumes.c
index 4aa1a20fc5d7..b4b98a75ca8b 100644
--- a/fs/btrfs/volumes.c
+++ b/fs/btrfs/volumes.c
@@ -4274,8 +4274,8 @@ static int __btrfs_alloc_chunk(struct btrfs_trans_handle *trans,
*/
if (stripe_size * data_stripes > max_chunk_size) {
u64 mask = (1ULL << 24) - 1;
- stripe_size = max_chunk_size;
- do_div(stripe_size, data_stripes);
+
+ stripe_size = div_u64(max_chunk_size, data_stripes);
/* bump the answer up to a 16MB boundary */
stripe_size = (stripe_size + mask) & ~mask;