Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: GPL-2.0+ */
0002 
0003 #undef TRACE_SYSTEM
0004 #define TRACE_SYSTEM    vas
0005 
0006 #if !defined(_VAS_TRACE_H) || defined(TRACE_HEADER_MULTI_READ)
0007 
0008 #define _VAS_TRACE_H
0009 #include <linux/tracepoint.h>
0010 #include <linux/sched.h>
0011 #include <asm/vas.h>
0012 
0013 TRACE_EVENT(    vas_rx_win_open,
0014 
0015         TP_PROTO(struct task_struct *tsk,
0016              int vasid,
0017              int cop,
0018              struct vas_rx_win_attr *rxattr),
0019 
0020         TP_ARGS(tsk, vasid, cop, rxattr),
0021 
0022         TP_STRUCT__entry(
0023             __field(struct task_struct *, tsk)
0024             __field(int, pid)
0025             __field(int, cop)
0026             __field(int, vasid)
0027             __field(struct vas_rx_win_attr *, rxattr)
0028             __field(int, lnotify_lpid)
0029             __field(int, lnotify_pid)
0030             __field(int, lnotify_tid)
0031         ),
0032 
0033         TP_fast_assign(
0034             __entry->pid = tsk->pid;
0035             __entry->vasid = vasid;
0036             __entry->cop = cop;
0037             __entry->lnotify_lpid = rxattr->lnotify_lpid;
0038             __entry->lnotify_pid = rxattr->lnotify_pid;
0039             __entry->lnotify_tid = rxattr->lnotify_tid;
0040         ),
0041 
0042         TP_printk("pid=%d, vasid=%d, cop=%d, lpid=%d, pid=%d, tid=%d",
0043             __entry->pid, __entry->vasid, __entry->cop,
0044             __entry->lnotify_lpid, __entry->lnotify_pid,
0045             __entry->lnotify_tid)
0046 );
0047 
0048 TRACE_EVENT(    vas_tx_win_open,
0049 
0050         TP_PROTO(struct task_struct *tsk,
0051              int vasid,
0052              int cop,
0053              struct vas_tx_win_attr *txattr),
0054 
0055         TP_ARGS(tsk, vasid, cop, txattr),
0056 
0057         TP_STRUCT__entry(
0058             __field(struct task_struct *, tsk)
0059             __field(int, pid)
0060             __field(int, cop)
0061             __field(int, vasid)
0062             __field(struct vas_tx_win_attr *, txattr)
0063             __field(int, lpid)
0064             __field(int, pidr)
0065         ),
0066 
0067         TP_fast_assign(
0068             __entry->pid = tsk->pid;
0069             __entry->vasid = vasid;
0070             __entry->cop = cop;
0071             __entry->lpid = txattr->lpid;
0072             __entry->pidr = txattr->pidr;
0073         ),
0074 
0075         TP_printk("pid=%d, vasid=%d, cop=%d, lpid=%d, pidr=%d",
0076             __entry->pid, __entry->vasid, __entry->cop,
0077             __entry->lpid, __entry->pidr)
0078 );
0079 
0080 TRACE_EVENT(    vas_paste_crb,
0081 
0082         TP_PROTO(struct task_struct *tsk,
0083             struct pnv_vas_window *win),
0084 
0085         TP_ARGS(tsk, win),
0086 
0087         TP_STRUCT__entry(
0088             __field(struct task_struct *, tsk)
0089             __field(struct vas_window *, win)
0090             __field(int, pid)
0091             __field(int, vasid)
0092             __field(int, winid)
0093             __field(unsigned long, paste_kaddr)
0094         ),
0095 
0096         TP_fast_assign(
0097             __entry->pid = tsk->pid;
0098             __entry->vasid = win->vinst->vas_id;
0099             __entry->winid = win->vas_win.winid;
0100             __entry->paste_kaddr = (unsigned long)win->paste_kaddr
0101         ),
0102 
0103         TP_printk("pid=%d, vasid=%d, winid=%d, paste_kaddr=0x%016lx\n",
0104             __entry->pid, __entry->vasid, __entry->winid,
0105             __entry->paste_kaddr)
0106 );
0107 
0108 #endif /* _VAS_TRACE_H */
0109 
0110 #undef TRACE_INCLUDE_PATH
0111 #define TRACE_INCLUDE_PATH ../../arch/powerpc/platforms/powernv
0112 #define TRACE_INCLUDE_FILE vas-trace
0113 #include <trace/define_trace.h>