cachepc-qemu

Fork of AMDESE/qemu with changes for cachepc side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-qemu
Log | Files | Refs | Submodules | LICENSE | sfeed.txt

syscall-trace.h (1312B)


      1/*
      2 * Common System Call Tracing Wrappers for *-user
      3 *
      4 * Copyright (c) 2019 Linaro
      5 * Written by Alex Bennée <alex.bennee@linaro.org>
      6 *
      7 * SPDX-License-Identifier: GPL-2.0-or-later
      8 */
      9
     10#ifndef SYSCALL_TRACE_H
     11#define SYSCALL_TRACE_H
     12
     13#include "trace/trace-root.h"
     14
     15/*
     16 * These helpers just provide a common place for the various
     17 * subsystems that want to track syscalls to put their hooks in. We
     18 * could potentially unify the -strace code here as well.
     19 */
     20
     21static inline void record_syscall_start(void *cpu, int num,
     22                                        abi_long arg1, abi_long arg2,
     23                                        abi_long arg3, abi_long arg4,
     24                                        abi_long arg5, abi_long arg6,
     25                                        abi_long arg7, abi_long arg8)
     26{
     27    trace_guest_user_syscall(cpu, num,
     28                             arg1, arg2, arg3, arg4,
     29                             arg5, arg6, arg7, arg8);
     30    qemu_plugin_vcpu_syscall(cpu, num,
     31                             arg1, arg2, arg3, arg4,
     32                             arg5, arg6, arg7, arg8);
     33}
     34
     35static inline void record_syscall_return(void *cpu, int num, abi_long ret)
     36{
     37    trace_guest_user_syscall_ret(cpu, num, ret);
     38    qemu_plugin_vcpu_syscall_ret(cpu, num, ret);
     39}
     40
     41
     42#endif /* _SYSCALL_TRACE_H_ */