From 4b25a50674de41e72f6b3003e3c8c74ca95503d3 Mon Sep 17 00:00:00 2001 From: Josh Kunz Date: Mon, 3 Feb 2020 18:54:14 -0800 Subject: linux-user: Use `qemu_log' for strace This change switches linux-user strace logging to use the newer `qemu_log` logging subsystem rather than the older `gemu_log` (notice the "g") logger. `qemu_log` has several advantages, namely that it allows logging to a file, and provides a more unified interface for configuration of logging (via the QEMU_LOG environment variable or options). This change introduces a new log mask: `LOG_STRACE` which is used for logging of user-mode strace messages. Reviewed-by: Laurent Vivier Signed-off-by: Josh Kunz Message-Id: <20200204025416.111409-3-jkz@google.com> Signed-off-by: Laurent Vivier --- linux-user/syscall.c | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) (limited to 'linux-user/syscall.c') diff --git a/linux-user/syscall.c b/linux-user/syscall.c index 16d98c1ff5..274e10e0ee 100644 --- a/linux-user/syscall.c +++ b/linux-user/syscall.c @@ -12171,14 +12171,15 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1, record_syscall_start(cpu, num, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8); - if (unlikely(do_strace)) { + if (unlikely(qemu_loglevel_mask(LOG_STRACE))) { print_syscall(num, arg1, arg2, arg3, arg4, arg5, arg6); - ret = do_syscall1(cpu_env, num, arg1, arg2, arg3, arg4, - arg5, arg6, arg7, arg8); + } + + ret = do_syscall1(cpu_env, num, arg1, arg2, arg3, arg4, + arg5, arg6, arg7, arg8); + + if (unlikely(qemu_loglevel_mask(LOG_STRACE))) { print_syscall_ret(num, ret); - } else { - ret = do_syscall1(cpu_env, num, arg1, arg2, arg3, arg4, - arg5, arg6, arg7, arg8); } record_syscall_return(cpu, num, ret); -- cgit 1.4.1