Add alignment to thread_options_pack for proper fp alignment
Signed-off-by: Jens Axboe <axboe@fb.com>
diff --git a/libfio.c b/libfio.c
index 7eff63b..523cc36 100644
--- a/libfio.c
+++ b/libfio.c
@@ -302,8 +302,12 @@
* can run into problems on archs that fault on unaligned fp
* access (ARM).
*/
- compiletime_assert((offsetof(struct thread_stat, percentile_list) % 8) == 0, "fp align");
- compiletime_assert((offsetof(struct thread_stat, latency_percentile) % 8) == 0, "fp align");
+ compiletime_assert((offsetof(struct thread_stat, percentile_list) % 8) == 0, "stat percentile_list");
+ compiletime_assert((offsetof(struct thread_stat, latency_percentile) % 8) == 0, "stat latency_percentile");
+ compiletime_assert((offsetof(struct thread_options_pack, zipf_theta) % 8) == 0, "zipf_theta");
+ compiletime_assert((offsetof(struct thread_options_pack, pareto_h) % 8) == 0, "pareto_h");
+ compiletime_assert((offsetof(struct thread_options_pack, percentile_list) % 8) == 0, "percentile_list");
+ compiletime_assert((offsetof(struct thread_options_pack, percentile_list) % 8) == 0, "latency_percentile");
if (endian_check()) {
log_err("fio: endianness settings appear wrong.\n");
diff --git a/server.h b/server.h
index 67ba38d..46d05a6 100644
--- a/server.h
+++ b/server.h
@@ -38,7 +38,7 @@
};
enum {
- FIO_SERVER_VER = 37,
+ FIO_SERVER_VER = 38,
FIO_SERVER_MAX_FRAGMENT_PDU = 1024,
FIO_SERVER_MAX_CMD_MB = 2048,
diff --git a/thread_options.h b/thread_options.h
index a45d7b7..5c9910a 100644
--- a/thread_options.h
+++ b/thread_options.h
@@ -349,6 +349,7 @@
uint32_t bs_is_seq_rand;
uint32_t random_distribution;
+ uint32_t pad;
fio_fp64_t zipf_theta;
fio_fp64_t pareto_h;