131ef83dcSChristoph Hellwig /* 231ef83dcSChristoph Hellwig * Copyright (c) 2014 Christoph Hellwig. 331ef83dcSChristoph Hellwig */ 431ef83dcSChristoph Hellwig #undef TRACE_SYSTEM 531ef83dcSChristoph Hellwig #define TRACE_SYSTEM nfsd 631ef83dcSChristoph Hellwig 731ef83dcSChristoph Hellwig #if !defined(_NFSD_TRACE_H) || defined(TRACE_HEADER_MULTI_READ) 831ef83dcSChristoph Hellwig #define _NFSD_TRACE_H 931ef83dcSChristoph Hellwig 1031ef83dcSChristoph Hellwig #include <linux/tracepoint.h> 1131ef83dcSChristoph Hellwig 1231ef83dcSChristoph Hellwig DECLARE_EVENT_CLASS(nfsd_stateid_class, 1331ef83dcSChristoph Hellwig TP_PROTO(stateid_t *stp), 1431ef83dcSChristoph Hellwig TP_ARGS(stp), 1531ef83dcSChristoph Hellwig TP_STRUCT__entry( 1631ef83dcSChristoph Hellwig __field(u32, cl_boot) 1731ef83dcSChristoph Hellwig __field(u32, cl_id) 1831ef83dcSChristoph Hellwig __field(u32, si_id) 1931ef83dcSChristoph Hellwig __field(u32, si_generation) 2031ef83dcSChristoph Hellwig ), 2131ef83dcSChristoph Hellwig TP_fast_assign( 2231ef83dcSChristoph Hellwig __entry->cl_boot = stp->si_opaque.so_clid.cl_boot; 2331ef83dcSChristoph Hellwig __entry->cl_id = stp->si_opaque.so_clid.cl_id; 2431ef83dcSChristoph Hellwig __entry->si_id = stp->si_opaque.so_id; 2531ef83dcSChristoph Hellwig __entry->si_generation = stp->si_generation; 2631ef83dcSChristoph Hellwig ), 2731ef83dcSChristoph Hellwig TP_printk("client %08x:%08x stateid %08x:%08x", 2831ef83dcSChristoph Hellwig __entry->cl_boot, 2931ef83dcSChristoph Hellwig __entry->cl_id, 3031ef83dcSChristoph Hellwig __entry->si_id, 3131ef83dcSChristoph Hellwig __entry->si_generation) 3231ef83dcSChristoph Hellwig ) 3331ef83dcSChristoph Hellwig 3431ef83dcSChristoph Hellwig #define DEFINE_STATEID_EVENT(name) \ 3531ef83dcSChristoph Hellwig DEFINE_EVENT(nfsd_stateid_class, name, \ 3631ef83dcSChristoph Hellwig TP_PROTO(stateid_t *stp), \ 3731ef83dcSChristoph Hellwig TP_ARGS(stp)) 3831ef83dcSChristoph Hellwig DEFINE_STATEID_EVENT(layoutstate_alloc); 3931ef83dcSChristoph Hellwig DEFINE_STATEID_EVENT(layoutstate_unhash); 4031ef83dcSChristoph Hellwig DEFINE_STATEID_EVENT(layoutstate_free); 4131ef83dcSChristoph Hellwig DEFINE_STATEID_EVENT(layout_get_lookup_fail); 4231ef83dcSChristoph Hellwig DEFINE_STATEID_EVENT(layout_commit_lookup_fail); 4331ef83dcSChristoph Hellwig DEFINE_STATEID_EVENT(layout_return_lookup_fail); 4431ef83dcSChristoph Hellwig DEFINE_STATEID_EVENT(layout_recall); 4531ef83dcSChristoph Hellwig DEFINE_STATEID_EVENT(layout_recall_done); 4631ef83dcSChristoph Hellwig DEFINE_STATEID_EVENT(layout_recall_fail); 4731ef83dcSChristoph Hellwig DEFINE_STATEID_EVENT(layout_recall_release); 4831ef83dcSChristoph Hellwig 4931ef83dcSChristoph Hellwig #endif /* _NFSD_TRACE_H */ 5031ef83dcSChristoph Hellwig 5131ef83dcSChristoph Hellwig #undef TRACE_INCLUDE_PATH 5231ef83dcSChristoph Hellwig #define TRACE_INCLUDE_PATH . 5331ef83dcSChristoph Hellwig #define TRACE_INCLUDE_FILE trace 5431ef83dcSChristoph Hellwig #include <trace/define_trace.h> 55