Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 82852
b: refs/heads/master
c: 2532ec6
h: refs/heads/master
v: v3
  • Loading branch information
H. Peter Anvin authored and Ingo Molnar committed Feb 4, 2008
1 parent 0860e42 commit 3e80e52
Show file tree
Hide file tree
Showing 2 changed files with 7 additions and 18 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: f832ff18e886ada0ff30a1edeab082ce218d107e
refs/heads/master: 2532ec6d178abc55681d049097d3dc577eaa266c
23 changes: 6 additions & 17 deletions trunk/include/asm-x86/futex.h
Original file line number Diff line number Diff line change
Expand Up @@ -17,11 +17,8 @@
"2: .section .fixup,\"ax\"\n \
3: mov %3, %1\n \
jmp 2b\n \
.previous\n \
.section __ex_table,\"a\"\n \
.align 8\n" \
_ASM_PTR "1b,3b\n \
.previous" \
.previous\n" \
_ASM_EXTABLE(1b,3b) \
: "=r" (oldval), "=r" (ret), "+m" (*uaddr) \
: "i" (-EFAULT), "0" (oparg), "1" (0))

Expand All @@ -35,11 +32,9 @@
3: .section .fixup,\"ax\"\n \
4: mov %5, %1\n \
jmp 3b\n \
.previous\n \
.section __ex_table,\"a\"\n \
.align 8\n" \
_ASM_PTR "1b,4b,2b,4b\n \
.previous" \
.previous\n" \
_ASM_EXTABLE(1b,4b) \
_ASM_EXTABLE(2b,4b) \
: "=&a" (oldval), "=&r" (ret), "+m" (*uaddr), \
"=&r" (tem) \
: "r" (oparg), "i" (-EFAULT), "1" (0))
Expand Down Expand Up @@ -111,18 +106,12 @@ futex_atomic_cmpxchg_inatomic(int __user *uaddr, int oldval, int newval)
return -EFAULT;

__asm__ __volatile__(

"1: lock; cmpxchgl %3, %1 \n"
"2: .section .fixup, \"ax\" \n"
"3: mov %2, %0 \n"
" jmp 2b \n"
" .previous \n"

" .section __ex_table, \"a\" \n"
" .align 8 \n"
_ASM_PTR " 1b,3b \n"
" .previous \n"

_ASM_EXTABLE(1b,3b)
: "=a" (oldval), "+m" (*uaddr)
: "i" (-EFAULT), "r" (newval), "0" (oldval)
: "memory"
Expand Down

0 comments on commit 3e80e52

Please sign in to comment.