Index: arch/ia32/include/atomic.h
===================================================================
--- arch/ia32/include/atomic.h	(revision 36e7ee98b33f87f4fd7451460ffe749f290f85b7)
+++ arch/ia32/include/atomic.h	(revision 07bd114e358b12ea7dd76453301cc9cee94beb2d)
@@ -32,12 +32,12 @@
 #include <arch/types.h>
 
-typedef struct { volatile __u64 count; } atomic_t;
+typedef struct { volatile __u32 count; } atomic_t;
 
-static inline void atomic_set(atomic_t *val, __u64 i)
+static inline void atomic_set(atomic_t *val, __u32 i)
 {
 	val->count = i;
 }
 
-static inline __u64 atomic_get(atomic_t *val)
+static inline __u32 atomic_get(atomic_t *val)
 {
 	return val->count;
@@ -89,6 +89,6 @@
 #define atomic_dec_post(val) (atomic_dec_pre(val)-1)
 
-static inline int test_and_set(atomic_t *val) {
-	int v;
+static inline __u32 test_and_set(atomic_t *val) {
+	__u32 v;
 	
 	__asm__ volatile (
