45 lines
1.5 KiB
Diff
45 lines
1.5 KiB
Diff
|
|
From b6e7a4895f176d0910059ec3941357cf60af4fd3 Mon Sep 17 00:00:00 2001
|
||
|
|
From: =?UTF-8?q?=E5=88=98=E5=A9=A720201110?=
|
||
|
|
<liujing_yewu@cmss.chinamobile.com>
|
||
|
|
Date: Wed, 13 Nov 2024 20:29:29 +0800
|
||
|
|
Subject: [PATCH] linux-user: Show timespec on strace for futex()
|
||
|
|
|
||
|
|
Signed-off-by: Helge Deller <deller@gmx.de>
|
||
|
|
Reviewed-by: Laurent Vivier <laurent@vivier.eu>
|
||
|
|
Message-Id: <20220918194555.83535-11-deller@gmx.de>
|
||
|
|
Signed-off-by: Laurent Vivier <laurent@vivier.eu>
|
||
|
|
Signed-off-by: Liu Jing <liujing_yewu@cmss.chinamobile.com>
|
||
|
|
---
|
||
|
|
linux-user/strace.c | 11 ++++++++++-
|
||
|
|
1 file changed, 10 insertions(+), 1 deletion(-)
|
||
|
|
|
||
|
|
diff --git a/linux-user/strace.c b/linux-user/strace.c
|
||
|
|
index 37d66d0dff..7978d459f6 100644
|
||
|
|
--- a/linux-user/strace.c
|
||
|
|
+++ b/linux-user/strace.c
|
||
|
|
@@ -3623,11 +3623,20 @@ print_futex(void *cpu_env, const struct syscallname *name,
|
||
|
|
abi_long arg0, abi_long arg1, abi_long arg2,
|
||
|
|
abi_long arg3, abi_long arg4, abi_long arg5)
|
||
|
|
{
|
||
|
|
+ abi_long op = arg1 & FUTEX_CMD_MASK;
|
||
|
|
print_syscall_prologue(name);
|
||
|
|
print_pointer(arg0, 0);
|
||
|
|
print_futex_op(arg1, 0);
|
||
|
|
print_raw_param(",%d", arg2, 0);
|
||
|
|
- print_pointer(arg3, 0); /* struct timespec */
|
||
|
|
+ switch (op) {
|
||
|
|
+ case FUTEX_WAIT:
|
||
|
|
+ case FUTEX_WAIT_BITSET:
|
||
|
|
+ print_timespec(arg3, 0);
|
||
|
|
+ break;
|
||
|
|
+ default:
|
||
|
|
+ print_pointer(arg3, 0);
|
||
|
|
+ break;
|
||
|
|
+ }
|
||
|
|
print_pointer(arg4, 0);
|
||
|
|
print_raw_param("%d", arg4, 1);
|
||
|
|
print_syscall_epilogue(name);
|
||
|
|
--
|
||
|
|
2.41.0.windows.1
|
||
|
|
|