From 2c2bcc0735f4ab052559b539f3fcab4087187232 Mon Sep 17 00:00:00 2001 From: Jie Liu Date: Tue, 13 Aug 2013 13:32:00 +0800 Subject: xfs: call roundup_64() to calculate the min_logblks Replace roundup() with roundup_64() as we calculate min_logblks with 64-bit divisions. Hence, call roundup() will cause the following error while compiling a 32-bit kernel: fs/built-in.o: In function `xfs_log_calc_minimum_size': fs/xfs/xfs_log_rlimit.c:140: undefined reference to `__udivdi3' Reported-by: Fengguang Wu Cc: Dave Chinner Signed-off-by: Jie Liu Reviewed-by: Dave Chinner Signed-off-by: Ben Myers --- fs/xfs/xfs_log_rlimit.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'fs/xfs/xfs_log_rlimit.c') diff --git a/fs/xfs/xfs_log_rlimit.c b/fs/xfs/xfs_log_rlimit.c index 6b17ef4a061b..bbcec0bbc12d 100644 --- a/fs/xfs/xfs_log_rlimit.c +++ b/fs/xfs/xfs_log_rlimit.c @@ -136,10 +136,12 @@ xfs_log_calc_minimum_size( * Also, the log size should be a multiple of the log stripe unit, round * it up to lsunit boundary if lsunit is specified. */ - if (lsunit) - min_logblks = roundup(BTOBB(max_logres), lsunit) + 2 * lsunit; - else + if (lsunit) { + min_logblks = roundup_64(BTOBB(max_logres), lsunit) + + 2 * lsunit; + } else min_logblks = BTOBB(max_logres) + 2 * BBSIZE; min_logblks *= XFS_MIN_LOG_FACTOR; + return XFS_BB_TO_FSB(mp, min_logblks); } -- cgit v1.2.3