*-user: plugin syscalls

To avoid too much duplication add a wrapper that the existing trace
and the new plugin calls can live in. We could move the -strace code
here as well but that is left for a future series as the code is
subtly different between the bsd and linux.

Signed-off-by: Emilio G. Cota <cota@braap.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
[AJB: wrap in syscall-trace.h, expand commit msg]
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
This commit is contained in:
Emilio G. Cota 2018-10-21 13:27:44 -04:00 committed by Alex Bennée
parent 8634d77bdb
commit c36f7a642c
3 changed files with 59 additions and 9 deletions

View file

@ -112,6 +112,7 @@
#include "qemu.h"
#include "qemu/guest-random.h"
#include "user/syscall-trace.h"
#include "qapi/error.h"
#include "fd-trans.h"
@ -11984,8 +11985,8 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1,
}
#endif
trace_guest_user_syscall(cpu, num, arg1, arg2, arg3, arg4,
arg5, arg6, arg7, arg8);
record_syscall_start(cpu, num, arg1,
arg2, arg3, arg4, arg5, arg6, arg7, arg8);
if (unlikely(do_strace)) {
print_syscall(num, arg1, arg2, arg3, arg4, arg5, arg6);
@ -11997,6 +11998,6 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1,
arg5, arg6, arg7, arg8);
}
trace_guest_user_syscall_ret(cpu, num, ret);
record_syscall_return(cpu, num, ret);
return ret;
}