| /* 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> |