[sheepdog] [PATCH v2 3/3] collie: don't use uint64_t for atomic operations
MORITA Kazutaka
morita.kazutaka at gmail.com
Thu Aug 8 10:39:37 CEST 2013
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
More information about the sheepdog
mailing list