114 lines
2.6 KiB
C
114 lines
2.6 KiB
C
|
/* SPDX-License-Identifier: GPL-2.0+ */
|
||
|
|
||
|
#undef TRACE_SYSTEM
|
||
|
#define TRACE_SYSTEM vas
|
||
|
|
||
|
#if !defined(_VAS_TRACE_H) || defined(TRACE_HEADER_MULTI_READ)
|
||
|
|
||
|
#define _VAS_TRACE_H
|
||
|
#include <linux/tracepoint.h>
|
||
|
#include <linux/sched.h>
|
||
|
#include <asm/vas.h>
|
||
|
|
||
|
TRACE_EVENT( vas_rx_win_open,
|
||
|
|
||
|
TP_PROTO(struct task_struct *tsk,
|
||
|
int vasid,
|
||
|
int cop,
|
||
|
struct vas_rx_win_attr *rxattr),
|
||
|
|
||
|
TP_ARGS(tsk, vasid, cop, rxattr),
|
||
|
|
||
|
TP_STRUCT__entry(
|
||
|
__field(struct task_struct *, tsk)
|
||
|
__field(int, pid)
|
||
|
__field(int, cop)
|
||
|
__field(int, vasid)
|
||
|
__field(struct vas_rx_win_attr *, rxattr)
|
||
|
__field(int, lnotify_lpid)
|
||
|
__field(int, lnotify_pid)
|
||
|
__field(int, lnotify_tid)
|
||
|
),
|
||
|
|
||
|
TP_fast_assign(
|
||
|
__entry->pid = tsk->pid;
|
||
|
__entry->vasid = vasid;
|
||
|
__entry->cop = cop;
|
||
|
__entry->lnotify_lpid = rxattr->lnotify_lpid;
|
||
|
__entry->lnotify_pid = rxattr->lnotify_pid;
|
||
|
__entry->lnotify_tid = rxattr->lnotify_tid;
|
||
|
),
|
||
|
|
||
|
TP_printk("pid=%d, vasid=%d, cop=%d, lpid=%d, pid=%d, tid=%d",
|
||
|
__entry->pid, __entry->vasid, __entry->cop,
|
||
|
__entry->lnotify_lpid, __entry->lnotify_pid,
|
||
|
__entry->lnotify_tid)
|
||
|
);
|
||
|
|
||
|
TRACE_EVENT( vas_tx_win_open,
|
||
|
|
||
|
TP_PROTO(struct task_struct *tsk,
|
||
|
int vasid,
|
||
|
int cop,
|
||
|
struct vas_tx_win_attr *txattr),
|
||
|
|
||
|
TP_ARGS(tsk, vasid, cop, txattr),
|
||
|
|
||
|
TP_STRUCT__entry(
|
||
|
__field(struct task_struct *, tsk)
|
||
|
__field(int, pid)
|
||
|
__field(int, cop)
|
||
|
__field(int, vasid)
|
||
|
__field(struct vas_tx_win_attr *, txattr)
|
||
|
__field(int, lpid)
|
||
|
__field(int, pidr)
|
||
|
),
|
||
|
|
||
|
TP_fast_assign(
|
||
|
__entry->pid = tsk->pid;
|
||
|
__entry->vasid = vasid;
|
||
|
__entry->cop = cop;
|
||
|
__entry->lpid = txattr->lpid;
|
||
|
__entry->pidr = txattr->pidr;
|
||
|
),
|
||
|
|
||
|
TP_printk("pid=%d, vasid=%d, cop=%d, lpid=%d, pidr=%d",
|
||
|
__entry->pid, __entry->vasid, __entry->cop,
|
||
|
__entry->lpid, __entry->pidr)
|
||
|
);
|
||
|
|
||
|
TRACE_EVENT( vas_paste_crb,
|
||
|
|
||
|
TP_PROTO(struct task_struct *tsk,
|
||
|
struct pnv_vas_window *win),
|
||
|
|
||
|
TP_ARGS(tsk, win),
|
||
|
|
||
|
TP_STRUCT__entry(
|
||
|
__field(struct task_struct *, tsk)
|
||
|
__field(struct vas_window *, win)
|
||
|
__field(int, pid)
|
||
|
__field(int, vasid)
|
||
|
__field(int, winid)
|
||
|
__field(unsigned long, paste_kaddr)
|
||
|
),
|
||
|
|
||
|
TP_fast_assign(
|
||
|
__entry->pid = tsk->pid;
|
||
|
__entry->vasid = win->vinst->vas_id;
|
||
|
__entry->winid = win->vas_win.winid;
|
||
|
__entry->paste_kaddr = (unsigned long)win->paste_kaddr
|
||
|
),
|
||
|
|
||
|
TP_printk("pid=%d, vasid=%d, winid=%d, paste_kaddr=0x%016lx\n",
|
||
|
__entry->pid, __entry->vasid, __entry->winid,
|
||
|
__entry->paste_kaddr)
|
||
|
);
|
||
|
|
||
|
#endif /* _VAS_TRACE_H */
|
||
|
|
||
|
#undef TRACE_INCLUDE_PATH
|
||
|
#define TRACE_INCLUDE_PATH ../../arch/powerpc/platforms/powernv
|
||
|
#define TRACE_INCLUDE_FILE vas-trace
|
||
|
#include <trace/define_trace.h>
|