Fix strace or FUTEX_PRIVATE_FLAG
authorPaul Brook <paul@codesourcery.com>
Fri, 19 Feb 2010 16:04:51 +0000 (16:04 +0000)
committerPaul Brook <paul@codesourcery.com>
Fri, 19 Feb 2010 16:04:51 +0000 (16:04 +0000)
FUTEX_PRIVATE_FLAG is a bit orred with an existing futex op,
not a distinct value.

Signed-off-by: Paul Brook <paul@codesourcery.com>
linux-user/strace.c

index 6090dcc..d77053b 100644 (file)
@@ -1252,8 +1252,10 @@ if( cmd == val ) { \
 
     int cmd = (int)tswap32(tflag);
 #ifdef FUTEX_PRIVATE_FLAG
-    if (cmd == FUTEX_PRIVATE_FLAG)
+    if (cmd & FUTEX_PRIVATE_FLAG) {
         gemu_log("FUTEX_PRIVATE_FLAG|");
+        cmd &= ~FUTEX_PRIVATE_FLAG;
+    }
 #endif
     print_op(FUTEX_WAIT)
     print_op(FUTEX_WAKE)