Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 155210
b: refs/heads/master
c: 69237f9
h: refs/heads/master
v: v3
  • Loading branch information
Eric Dumazet authored and Ingo Molnar committed Jul 3, 2009
1 parent 971bdf0 commit b9b5cab
Show file tree
Hide file tree
Showing 2 changed files with 8 additions and 13 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: aacf682fd8c66b57383c407eecd9d4a28264ee91
refs/heads/master: 69237f94e65d3d7f539f1adb98ef68685c595004
19 changes: 7 additions & 12 deletions trunk/arch/x86/lib/atomic64_32.c
Original file line number Diff line number Diff line change
Expand Up @@ -6,19 +6,14 @@

static inline u64 cmpxchg8b(u64 *ptr, u64 old, u64 new)
{
asm volatile(

LOCK_PREFIX "cmpxchg8b (%[ptr])\n"

: "=A" (old)

: [ptr] "D" (ptr),
"A" (old),
"b" (ll_low(new)),
"c" (ll_high(new))

: "memory");
u32 low = new;
u32 high = new >> 32;

asm volatile(
LOCK_PREFIX "cmpxchg8b %1\n"
: "+A" (old), "+m" (*ptr)
: "b" (low), "c" (high)
);
return old;
}

Expand Down

0 comments on commit b9b5cab

Please sign in to comment.