Line
Link Here
|
0 |
-- driver/ntoskernel.h (revision 2701) |
0 |
++ driver/ntoskernel.h (working copy) |
Lines 875-881
Link Here
|
875 |
#define u64_low_32(x) ((u32)x) |
875 |
#define u64_low_32(x) ((u32)x) |
876 |
#define u64_high_32(x) ((u32)(x >> 32)) |
876 |
#define u64_high_32(x) ((u32)(x >> 32)) |
877 |
#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,31) |
877 |
//#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,31) |
878 |
static inline u64 cmpxchg8b(volatile u64 *ptr, u64 old, u64 new) |
878 |
static inline u64 cmpxchg8b(volatile u64 *ptr, u64 old, u64 new) |
879 |
{ |
879 |
{ |
880 |
u64 prev; |
880 |
u64 prev; |
Lines 887-893
Link Here
|
887 |
: "A" (old), "b" (u64_low_32(new)), "c" (u64_high_32(new))); |
887 |
: "A" (old), "b" (u64_low_32(new)), "c" (u64_high_32(new))); |
888 |
return prev; |
888 |
return prev; |
889 |
} |
889 |
} |
890 |
#endif |
890 |
//#endif |
891 |
/* slist routines below update slist atomically - no need for |
891 |
/* slist routines below update slist atomically - no need for |
892 |
* spinlocks */ |
892 |
* spinlocks */ |