static void mark_random_map(struct thread_data *td, struct io_u *io_u)
{
- unsigned long block = io_u->offset / td->min_bs;
+ unsigned long long block = io_u->offset / (unsigned long long) td->min_bs;
unsigned int blocks = 0;
while (blocks < (io_u->buflen / td->min_bs)) {
int ddir)
{
char *ddir_str[] = { "read ", "write" };
- unsigned long min, max, bw;
+ unsigned long min, max;
+ unsigned long long bw;
double mean, dev;
if (!td->runtime[ddir])
return;
bw = td->io_bytes[ddir] / td->runtime[ddir];
- printf(" %s: io=%6lluMiB, bw=%6luKiB/s, runt=%6lumsec\n", ddir_str[ddir], td->io_bytes[ddir] >> 20, bw, td->runtime[ddir]);
+ printf(" %s: io=%6lluMiB, bw=%6lluKiB/s, runt=%6lumsec\n", ddir_str[ddir], td->io_bytes[ddir] >> 20, bw, td->runtime[ddir]);
if (calc_lat(&td->slat_stat[ddir], &min, &max, &mean, &dev))
printf(" slat (msec): min=%5lu, max=%5lu, avg=%5.02f, dev=%5.02f\n", min, max, mean, dev);
}
for (i = 0; i < thread_number; i++) {
- unsigned long rbw, wbw;
+ unsigned long long rbw, wbw;
td = &threads[i];
rbw = wbw = 0;
if (td->runtime[0])
- rbw = td->io_bytes[0] / td->runtime[0];
+ rbw = td->io_bytes[0] / (unsigned long long) td->runtime[0];
if (td->runtime[1])
- wbw = td->io_bytes[1] / td->runtime[1];
+ wbw = td->io_bytes[1] / (unsigned long long) td->runtime[1];
if (rbw < rs->min_bw[0])
rs->min_bw[0] = rbw;