On Thu, Sep 28, 2017 at 04:48:19PM +0300, Nikolay Borisov wrote: > Signed-off-by: Nikolay Borisov <nborisov@xxxxxxxx> > --- > fs/btrfs/extent-tree.c | 5 ++--- > 1 file changed, 2 insertions(+), 3 deletions(-) > > diff --git a/fs/btrfs/extent-tree.c b/fs/btrfs/extent-tree.c > index e2d7e86b51d1..9e67616892cd 100644 > --- a/fs/btrfs/extent-tree.c > +++ b/fs/btrfs/extent-tree.c > @@ -2896,9 +2896,8 @@ u64 btrfs_csum_bytes_to_leaves(struct btrfs_fs_info *fs_info, u64 csum_bytes) > num_csums_per_leaf = div64_u64(csum_size, > (u64)btrfs_super_csum_size(fs_info->super_copy)); > num_csums = div64_u64(csum_bytes, fs_info->sectorsize); > - num_csums += num_csums_per_leaf - 1; > - num_csums = div64_u64(num_csums, num_csums_per_leaf); > - return num_csums; > + > + return DIV_ROUND_UP(num_csums, num_csums_per_leaf); DIV_ROUND_UP ends up as plain division (/) so this will not work on 32bit. We need to keep it opencoded, or convert all the relevant variabless to 32bit first. #define DIV_ROUND_UP __KERNEL_DIV_ROUND_UP #define __KERNEL_DIV_ROUND_UP(n, d) (((n) + (d) - 1) / (d)) -- To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html
