63 lines · c
1/* SPDX-License-Identifier: GPL-2.0+ */2#undef TRACE_SYSTEM3#define TRACE_SYSTEM rseq4 5#if !defined(_TRACE_RSEQ_H) || defined(TRACE_HEADER_MULTI_READ)6#define _TRACE_RSEQ_H7 8#include <linux/tracepoint.h>9#include <linux/types.h>10 11TRACE_EVENT(rseq_update,12 13 TP_PROTO(struct task_struct *t),14 15 TP_ARGS(t),16 17 TP_STRUCT__entry(18 __field(s32, cpu_id)19 __field(s32, node_id)20 __field(s32, mm_cid)21 ),22 23 TP_fast_assign(24 __entry->cpu_id = raw_smp_processor_id();25 __entry->node_id = cpu_to_node(__entry->cpu_id);26 __entry->mm_cid = task_mm_cid(t);27 ),28 29 TP_printk("cpu_id=%d node_id=%d mm_cid=%d", __entry->cpu_id,30 __entry->node_id, __entry->mm_cid)31);32 33TRACE_EVENT(rseq_ip_fixup,34 35 TP_PROTO(unsigned long regs_ip, unsigned long start_ip,36 unsigned long post_commit_offset, unsigned long abort_ip),37 38 TP_ARGS(regs_ip, start_ip, post_commit_offset, abort_ip),39 40 TP_STRUCT__entry(41 __field(unsigned long, regs_ip)42 __field(unsigned long, start_ip)43 __field(unsigned long, post_commit_offset)44 __field(unsigned long, abort_ip)45 ),46 47 TP_fast_assign(48 __entry->regs_ip = regs_ip;49 __entry->start_ip = start_ip;50 __entry->post_commit_offset = post_commit_offset;51 __entry->abort_ip = abort_ip;52 ),53 54 TP_printk("regs_ip=0x%lx start_ip=0x%lx post_commit_offset=%lu abort_ip=0x%lx",55 __entry->regs_ip, __entry->start_ip,56 __entry->post_commit_offset, __entry->abort_ip)57);58 59#endif /* _TRACE_SOCK_H */60 61/* This part must be outside protection */62#include <trace/define_trace.h>63