From: MORITA Kazutaka <morita.kazutaka at lab.ntt.co.jp> Atomic operations against 64 bit integers are not allowed on 32 bit architectures. Using unsigned long instead of uint64_t fixes the problem and doesn't hurt x86_64. Signed-off-by: MORITA Kazutaka <morita.kazutaka at lab.ntt.co.jp> --- collie/farm/farm.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/collie/farm/farm.c b/collie/farm/farm.c index 2a4e307..4b43f3d 100644 --- a/collie/farm/farm.c +++ b/collie/farm/farm.c @@ -255,7 +255,7 @@ static void save_object_done(struct work *work) { struct snapshot_work *sw = container_of(work, struct snapshot_work, work); - static uint64_t saved; + static unsigned long saved; if (uatomic_is_true(&work_error)) goto out; @@ -329,7 +329,7 @@ static void do_load_object(struct work *work) void *buffer = NULL; size_t size; struct snapshot_work *sw; - static uint64_t loaded; + static unsigned long loaded; if (uatomic_is_true(&work_error)) return; -- 1.7.9.5 |