cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

vas-trace.h (2660B)


      1/* SPDX-License-Identifier: GPL-2.0+ */
      2
      3#undef TRACE_SYSTEM
      4#define TRACE_SYSTEM	vas
      5
      6#if !defined(_VAS_TRACE_H) || defined(TRACE_HEADER_MULTI_READ)
      7
      8#define _VAS_TRACE_H
      9#include <linux/tracepoint.h>
     10#include <linux/sched.h>
     11#include <asm/vas.h>
     12
     13TRACE_EVENT(	vas_rx_win_open,
     14
     15		TP_PROTO(struct task_struct *tsk,
     16			 int vasid,
     17			 int cop,
     18			 struct vas_rx_win_attr *rxattr),
     19
     20		TP_ARGS(tsk, vasid, cop, rxattr),
     21
     22		TP_STRUCT__entry(
     23			__field(struct task_struct *, tsk)
     24			__field(int, pid)
     25			__field(int, cop)
     26			__field(int, vasid)
     27			__field(struct vas_rx_win_attr *, rxattr)
     28			__field(int, lnotify_lpid)
     29			__field(int, lnotify_pid)
     30			__field(int, lnotify_tid)
     31		),
     32
     33		TP_fast_assign(
     34			__entry->pid = tsk->pid;
     35			__entry->vasid = vasid;
     36			__entry->cop = cop;
     37			__entry->lnotify_lpid = rxattr->lnotify_lpid;
     38			__entry->lnotify_pid = rxattr->lnotify_pid;
     39			__entry->lnotify_tid = rxattr->lnotify_tid;
     40		),
     41
     42		TP_printk("pid=%d, vasid=%d, cop=%d, lpid=%d, pid=%d, tid=%d",
     43			__entry->pid, __entry->vasid, __entry->cop,
     44			__entry->lnotify_lpid, __entry->lnotify_pid,
     45			__entry->lnotify_tid)
     46);
     47
     48TRACE_EVENT(	vas_tx_win_open,
     49
     50		TP_PROTO(struct task_struct *tsk,
     51			 int vasid,
     52			 int cop,
     53			 struct vas_tx_win_attr *txattr),
     54
     55		TP_ARGS(tsk, vasid, cop, txattr),
     56
     57		TP_STRUCT__entry(
     58			__field(struct task_struct *, tsk)
     59			__field(int, pid)
     60			__field(int, cop)
     61			__field(int, vasid)
     62			__field(struct vas_tx_win_attr *, txattr)
     63			__field(int, lpid)
     64			__field(int, pidr)
     65		),
     66
     67		TP_fast_assign(
     68			__entry->pid = tsk->pid;
     69			__entry->vasid = vasid;
     70			__entry->cop = cop;
     71			__entry->lpid = txattr->lpid;
     72			__entry->pidr = txattr->pidr;
     73		),
     74
     75		TP_printk("pid=%d, vasid=%d, cop=%d, lpid=%d, pidr=%d",
     76			__entry->pid, __entry->vasid, __entry->cop,
     77			__entry->lpid, __entry->pidr)
     78);
     79
     80TRACE_EVENT(	vas_paste_crb,
     81
     82		TP_PROTO(struct task_struct *tsk,
     83			struct pnv_vas_window *win),
     84
     85		TP_ARGS(tsk, win),
     86
     87		TP_STRUCT__entry(
     88			__field(struct task_struct *, tsk)
     89			__field(struct vas_window *, win)
     90			__field(int, pid)
     91			__field(int, vasid)
     92			__field(int, winid)
     93			__field(unsigned long, paste_kaddr)
     94		),
     95
     96		TP_fast_assign(
     97			__entry->pid = tsk->pid;
     98			__entry->vasid = win->vinst->vas_id;
     99			__entry->winid = win->vas_win.winid;
    100			__entry->paste_kaddr = (unsigned long)win->paste_kaddr
    101		),
    102
    103		TP_printk("pid=%d, vasid=%d, winid=%d, paste_kaddr=0x%016lx\n",
    104			__entry->pid, __entry->vasid, __entry->winid,
    105			__entry->paste_kaddr)
    106);
    107
    108#endif /* _VAS_TRACE_H */
    109
    110#undef TRACE_INCLUDE_PATH
    111#define TRACE_INCLUDE_PATH ../../arch/powerpc/platforms/powernv
    112#define TRACE_INCLUDE_FILE vas-trace
    113#include <trace/define_trace.h>