Add support for O_ATOMIC
[fio.git] / cconv.c
diff --git a/cconv.c b/cconv.c
index b06f60f4ad784692e734a6920184f5858623f9cc..82383b2dedfc32a6bb7aed75c1390642123b5196 100644 (file)
--- a/cconv.c
+++ b/cconv.c
@@ -80,6 +80,8 @@ void convert_thread_options_to_cpu(struct thread_options *o,
                o->ratemin[i] = le32_to_cpu(top->ratemin[i]);
                o->rate_iops[i] = le32_to_cpu(top->rate_iops[i]);
                o->rate_iops_min[i] = le32_to_cpu(top->rate_iops_min[i]);
+
+               o->perc_rand[i] = le32_to_cpu(top->perc_rand[i]);
        }
 
        o->ratecycle = le32_to_cpu(top->ratecycle);
@@ -87,6 +89,7 @@ void convert_thread_options_to_cpu(struct thread_options *o,
        o->open_files = le32_to_cpu(top->open_files);
        o->file_lock_mode = le32_to_cpu(top->file_lock_mode);
        o->odirect = le32_to_cpu(top->odirect);
+       o->oatomic = le32_to_cpu(top->oatomic);
        o->invalidate_cache = le32_to_cpu(top->invalidate_cache);
        o->create_serialize = le32_to_cpu(top->create_serialize);
        o->create_fsync = le32_to_cpu(top->create_fsync);
@@ -121,11 +124,11 @@ void convert_thread_options_to_cpu(struct thread_options *o,
        o->softrandommap = le32_to_cpu(top->softrandommap);
        o->bs_unaligned = le32_to_cpu(top->bs_unaligned);
        o->fsync_on_close = le32_to_cpu(top->fsync_on_close);
+       o->bs_is_seq_rand = le32_to_cpu(top->bs_is_seq_rand);
        o->random_distribution = le32_to_cpu(top->random_distribution);
        o->zipf_theta.u.f = fio_uint64_to_double(le64_to_cpu(top->zipf_theta.u.i));
        o->pareto_h.u.f = fio_uint64_to_double(le64_to_cpu(top->pareto_h.u.i));
        o->random_generator = le32_to_cpu(top->random_generator);
-       o->perc_rand = le32_to_cpu(top->perc_rand);
        o->hugepage_size = le32_to_cpu(top->hugepage_size);
        o->rw_min_bs = le32_to_cpu(top->rw_min_bs);
        o->thinktime = le32_to_cpu(top->thinktime);
@@ -144,6 +147,7 @@ void convert_thread_options_to_cpu(struct thread_options *o,
        o->zone_skip = le64_to_cpu(top->zone_skip);
        o->lockmem = le64_to_cpu(top->lockmem);
        o->offset_increment = le64_to_cpu(top->offset_increment);
+       o->number_ios = le64_to_cpu(top->number_ios);
 
        o->overwrite = le32_to_cpu(top->overwrite);
        o->bw_avg_time = le32_to_cpu(top->bw_avg_time);
@@ -249,6 +253,7 @@ void convert_thread_options_to_net(struct thread_options_pack *top,
        top->open_files = cpu_to_le32(o->open_files);
        top->file_lock_mode = cpu_to_le32(o->file_lock_mode);
        top->odirect = cpu_to_le32(o->odirect);
+       top->oatomic = cpu_to_le32(o->oatomic);
        top->invalidate_cache = cpu_to_le32(o->invalidate_cache);
        top->create_serialize = cpu_to_le32(o->create_serialize);
        top->create_fsync = cpu_to_le32(o->create_fsync);
@@ -280,11 +285,11 @@ void convert_thread_options_to_net(struct thread_options_pack *top,
        top->softrandommap = cpu_to_le32(o->softrandommap);
        top->bs_unaligned = cpu_to_le32(o->bs_unaligned);
        top->fsync_on_close = cpu_to_le32(o->fsync_on_close);
+       top->bs_is_seq_rand = cpu_to_le32(o->bs_is_seq_rand);
        top->random_distribution = cpu_to_le32(o->random_distribution);
        top->zipf_theta.u.i = __cpu_to_le64(fio_double_to_uint64(o->zipf_theta.u.f));
        top->pareto_h.u.i = __cpu_to_le64(fio_double_to_uint64(o->pareto_h.u.f));
        top->random_generator = cpu_to_le32(o->random_generator);
-       top->perc_rand = cpu_to_le32(o->perc_rand);
        top->hugepage_size = cpu_to_le32(o->hugepage_size);
        top->rw_min_bs = cpu_to_le32(o->rw_min_bs);
        top->thinktime = cpu_to_le32(o->thinktime);
@@ -371,6 +376,8 @@ void convert_thread_options_to_net(struct thread_options_pack *top,
                top->ratemin[i] = cpu_to_le32(o->ratemin[i]);
                top->rate_iops[i] = cpu_to_le32(o->rate_iops[i]);
                top->rate_iops_min[i] = cpu_to_le32(o->rate_iops_min[i]);
+
+               top->perc_rand[i] = cpu_to_le32(o->perc_rand[i]);
        }
 
        memcpy(top->verify_pattern, o->verify_pattern, MAX_PATTERN_SIZE);
@@ -390,6 +397,7 @@ void convert_thread_options_to_net(struct thread_options_pack *top,
        top->start_offset = __cpu_to_le64(o->start_offset);
        top->trim_backlog = __cpu_to_le64(o->trim_backlog);
        top->offset_increment = __cpu_to_le64(o->offset_increment);
+       top->number_ios = __cpu_to_le64(o->number_ios);
 
        for (i = 0; i < FIO_IO_U_LIST_MAX_LEN; i++)
                top->percentile_list[i].u.i = __cpu_to_le64(fio_double_to_uint64(o->percentile_list[i].u.f));