]> granicus.if.org Git - strace/commitdiff
tests/futex.c: improve error diagnostics
authorEugene Syromyatnikov <evgsyr@gmail.com>
Wed, 24 Jan 2018 14:54:32 +0000 (09:54 -0500)
committerDmitry V. Levin <ldv@altlinux.org>
Thu, 25 Jan 2018 01:55:08 +0000 (01:55 +0000)
* tests/futex.c (futex_error): Add func and line arguments, print them.
(CHECK_FUTEX_GENERIC): Pass __func__ and __LINE__ to futex_error.

tests/futex.c

index e1dbcb749a85815d2fc21aa0dac76ad450380fba..41e9d1bf048e915b9eef7f40aa419ab64781ec27 100644 (file)
 # include "xlat/futexwakecmps.h"
 
 void futex_error(int *uaddr, int op, unsigned long val, unsigned long timeout,
-       int *uaddr2, unsigned long val3, int rc)
+       int *uaddr2, unsigned long val3, int rc, const char *func, int line)
 {
-       perror_msg_and_fail("futex(%p, %#x, %#x, %#lx, %p, %#x) = %d",
-               uaddr, op, (unsigned) val, timeout, uaddr, (unsigned) val3, rc);
+       perror_msg_and_fail("%s:%d: futex(%p, %#x, %#x, %#lx, %p, %#x) = %d",
+               func, line, uaddr, op, (unsigned) val, timeout, uaddr,
+               (unsigned) val3, rc);
 }
 
 # define CHECK_FUTEX_GENERIC(uaddr, op, val, timeout, uaddr2, val3, check, \
@@ -77,7 +78,7 @@ void futex_error(int *uaddr, int op, unsigned long val, unsigned long timeout,
                if (!(check)) \
                        futex_error((uaddr), (op), (val), \
                                (unsigned long) (timeout), (int *) (uaddr2), \
-                               (val3), rc); \
+                               (val3), rc, __func__, __LINE__); \
        } while (0)
 
 # define CHECK_FUTEX_ENOSYS(uaddr, op, val, timeout, uaddr2, val3, check) \