]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - include/asm-x86_64/mutex.h
[PATCH] IPMI: per-channel command registration
[linux-2.6-omap-h63xx.git] / include / asm-x86_64 / mutex.h
index 11fbee2bd6c068486f850ad39fdc5590ec3c137a..16396b1de3e44e2068021f446d8b56f3b6f79448 100644 (file)
@@ -24,14 +24,10 @@ do {                                                                        \
        typecheck_fn(fastcall void (*)(atomic_t *), fail_fn);           \
                                                                        \
        __asm__ __volatile__(                                           \
-               LOCK    "   decl (%%rdi)        \n"                     \
-                       "   js 2f               \n"                     \
-                       "1:                     \n"                     \
-                                                                       \
-               LOCK_SECTION_START("")                                  \
-                       "2: call "#fail_fn"     \n"                     \
-                       "   jmp 1b              \n"                     \
-               LOCK_SECTION_END                                        \
+               LOCK_PREFIX "   decl (%%rdi)    \n"                     \
+                       "   jns 1f              \n"                     \
+                       "   call "#fail_fn"     \n"                     \
+                       "1:"                                            \
                                                                        \
                :"=D" (dummy)                                           \
                : "D" (v)                                               \
@@ -74,14 +70,10 @@ do {                                                                        \
        typecheck_fn(fastcall void (*)(atomic_t *), fail_fn);           \
                                                                        \
        __asm__ __volatile__(                                           \
-               LOCK    "   incl (%%rdi)        \n"                     \
-                       "   jle 2f              \n"                     \
-                       "1:                     \n"                     \
-                                                                       \
-               LOCK_SECTION_START("")                                  \
-                       "2: call "#fail_fn"     \n"                     \
-                       "   jmp 1b              \n"                     \
-               LOCK_SECTION_END                                        \
+               LOCK_PREFIX "   incl (%%rdi)    \n"                     \
+                       "   jg 1f               \n"                     \
+                       "   call "#fail_fn"     \n"                     \
+                       "1:                       "                     \
                                                                        \
                :"=D" (dummy)                                           \
                : "D" (v)                                               \