diff options
author | Jie Liu <jeff.liu@oracle.com> | 2013-08-13 13:32:00 +0800 |
---|---|---|
committer | Ben Myers <bpm@sgi.com> | 2013-08-13 14:19:11 -0500 |
commit | 2c2bcc0735f4ab052559b539f3fcab4087187232 (patch) | |
tree | ecc3f2774b2a1f4239e2f7d24490bc906ce61898 /fs/xfs/xfs_log_rlimit.c | |
parent | 3e7b91cf8c19d89e55df5f05e3010446dbdaba77 (diff) | |
download | blackbird-op-linux-2c2bcc0735f4ab052559b539f3fcab4087187232.tar.gz blackbird-op-linux-2c2bcc0735f4ab052559b539f3fcab4087187232.zip |
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 <fengguang.wu@intel.com>
Cc: Dave Chinner <dchinner@redhat.com>
Signed-off-by: Jie Liu <jeff.liu@oracle.com>
Reviewed-by: Dave Chinner <dchinner@redhat.com>
Signed-off-by: Ben Myers <bpm@sgi.com>
Diffstat (limited to 'fs/xfs/xfs_log_rlimit.c')
-rw-r--r-- | fs/xfs/xfs_log_rlimit.c | 8 |
1 files changed, 5 insertions, 3 deletions
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); } |