stride_pg_count(pgoff_t st_off, unsigned long st_len, unsigned long st_pgs,
unsigned long off, unsigned long length)
{
- unsigned long start = off > st_off ? off - st_off : 0;
- unsigned long end = off + length > st_off ? off + length - st_off : 0;
+ __u64 start = off > st_off ? off - st_off : 0;
+ __u64 end = off + length > st_off ? off + length - st_off : 0;
unsigned long start_left = 0;
unsigned long end_left = 0;
unsigned long pg_count;
if (end_left > st_pgs)
end_left = st_pgs;
- CDEBUG(D_READA, "start %lu, end %lu start_left %lu end_left %lu \n",
+ CDEBUG(D_READA, "start "LPU64", end "LPU64" start_left %lu end_left %lu \n",
start, end, start_left, end_left);
if (start == end)
cfs_atomic_read(&imp->imp_inval_count));
lprocfs_stats_collect(obd->obd_svc_stats, PTLRPC_REQWAIT_CNTR, &ret);
- if (ret.lc_count != 0)
- do_div(ret.lc_sum, ret.lc_count);
- else
+ if (ret.lc_count != 0) {
+ /* first argument to do_div MUST be __u64 */
+ __u64 sum = ret.lc_sum;
+ do_div(sum, ret.lc_count);
+ ret.lc_sum = sum;
+ } else
ret.lc_sum = 0;
i += snprintf(page + i, count - i,
" rpcs:\n"
PTLRPC_LAST_CNTR + BRW_READ_BYTES + rw,
&ret);
if (ret.lc_sum > 0 && ret.lc_count > 0) {
- do_div(ret.lc_sum, ret.lc_count);
+ /* first argument to do_div MUST be __u64 */
+ __u64 sum = ret.lc_sum;
+ do_div(sum, ret.lc_count);
+ ret.lc_sum = sum;
i += snprintf(page + i, count - i,
" %s_data_averages:\n"
" bytes_per_rpc: "LPU64"\n",
j = opcode_offset(OST_READ + rw) + EXTRA_MAX_OPCODES;
lprocfs_stats_collect(obd->obd_svc_stats, j, &ret);
if (ret.lc_sum > 0 && ret.lc_count != 0) {
- do_div(ret.lc_sum, ret.lc_count);
+ /* first argument to do_div MUST be __u64 */
+ __u64 sum = ret.lc_sum;
+ do_div(sum, ret.lc_count);
+ ret.lc_sum = sum;
i += snprintf(page + i, count - i,
" %s_per_rpc: "LPU64"\n",
ret.lc_units, ret.lc_sum);