Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: BSD-3-Clause OR GPL-2.0 */
0002 /* Copyright (c) 2018 Mellanox Technologies. All rights reserved */
0003 
0004 #undef TRACE_SYSTEM
0005 #define TRACE_SYSTEM objagg
0006 
0007 #if !defined(__TRACE_OBJAGG_H) || defined(TRACE_HEADER_MULTI_READ)
0008 #define __TRACE_OBJAGG_H
0009 
0010 #include <linux/tracepoint.h>
0011 
0012 struct objagg;
0013 struct objagg_obj;
0014 
0015 TRACE_EVENT(objagg_create,
0016     TP_PROTO(const struct objagg *objagg),
0017 
0018     TP_ARGS(objagg),
0019 
0020     TP_STRUCT__entry(
0021         __field(const void *, objagg)
0022     ),
0023 
0024     TP_fast_assign(
0025         __entry->objagg = objagg;
0026     ),
0027 
0028     TP_printk("objagg %p", __entry->objagg)
0029 );
0030 
0031 TRACE_EVENT(objagg_destroy,
0032     TP_PROTO(const struct objagg *objagg),
0033 
0034     TP_ARGS(objagg),
0035 
0036     TP_STRUCT__entry(
0037         __field(const void *, objagg)
0038     ),
0039 
0040     TP_fast_assign(
0041         __entry->objagg = objagg;
0042     ),
0043 
0044     TP_printk("objagg %p", __entry->objagg)
0045 );
0046 
0047 TRACE_EVENT(objagg_obj_create,
0048     TP_PROTO(const struct objagg *objagg,
0049          const struct objagg_obj *obj),
0050 
0051     TP_ARGS(objagg, obj),
0052 
0053     TP_STRUCT__entry(
0054         __field(const void *, objagg)
0055         __field(const void *, obj)
0056     ),
0057 
0058     TP_fast_assign(
0059         __entry->objagg = objagg;
0060         __entry->obj = obj;
0061     ),
0062 
0063     TP_printk("objagg %p, obj %p", __entry->objagg, __entry->obj)
0064 );
0065 
0066 TRACE_EVENT(objagg_obj_destroy,
0067     TP_PROTO(const struct objagg *objagg,
0068          const struct objagg_obj *obj),
0069 
0070     TP_ARGS(objagg, obj),
0071 
0072     TP_STRUCT__entry(
0073         __field(const void *, objagg)
0074         __field(const void *, obj)
0075     ),
0076 
0077     TP_fast_assign(
0078         __entry->objagg = objagg;
0079         __entry->obj = obj;
0080     ),
0081 
0082     TP_printk("objagg %p, obj %p", __entry->objagg, __entry->obj)
0083 );
0084 
0085 TRACE_EVENT(objagg_obj_get,
0086     TP_PROTO(const struct objagg *objagg,
0087          const struct objagg_obj *obj,
0088          unsigned int refcount),
0089 
0090     TP_ARGS(objagg, obj, refcount),
0091 
0092     TP_STRUCT__entry(
0093         __field(const void *, objagg)
0094         __field(const void *, obj)
0095         __field(unsigned int, refcount)
0096     ),
0097 
0098     TP_fast_assign(
0099         __entry->objagg = objagg;
0100         __entry->obj = obj;
0101         __entry->refcount = refcount;
0102     ),
0103 
0104     TP_printk("objagg %p, obj %p, refcount %u",
0105           __entry->objagg, __entry->obj, __entry->refcount)
0106 );
0107 
0108 TRACE_EVENT(objagg_obj_put,
0109     TP_PROTO(const struct objagg *objagg,
0110          const struct objagg_obj *obj,
0111          unsigned int refcount),
0112 
0113     TP_ARGS(objagg, obj, refcount),
0114 
0115     TP_STRUCT__entry(
0116         __field(const void *, objagg)
0117         __field(const void *, obj)
0118         __field(unsigned int, refcount)
0119     ),
0120 
0121     TP_fast_assign(
0122         __entry->objagg = objagg;
0123         __entry->obj = obj;
0124         __entry->refcount = refcount;
0125     ),
0126 
0127     TP_printk("objagg %p, obj %p, refcount %u",
0128           __entry->objagg, __entry->obj, __entry->refcount)
0129 );
0130 
0131 TRACE_EVENT(objagg_obj_parent_assign,
0132     TP_PROTO(const struct objagg *objagg,
0133          const struct objagg_obj *obj,
0134          const struct objagg_obj *parent,
0135          unsigned int parent_refcount),
0136 
0137     TP_ARGS(objagg, obj, parent, parent_refcount),
0138 
0139     TP_STRUCT__entry(
0140         __field(const void *, objagg)
0141         __field(const void *, obj)
0142         __field(const void *, parent)
0143         __field(unsigned int, parent_refcount)
0144     ),
0145 
0146     TP_fast_assign(
0147         __entry->objagg = objagg;
0148         __entry->obj = obj;
0149         __entry->parent = parent;
0150         __entry->parent_refcount = parent_refcount;
0151     ),
0152 
0153     TP_printk("objagg %p, obj %p, parent %p, parent_refcount %u",
0154           __entry->objagg, __entry->obj,
0155           __entry->parent, __entry->parent_refcount)
0156 );
0157 
0158 TRACE_EVENT(objagg_obj_parent_unassign,
0159     TP_PROTO(const struct objagg *objagg,
0160          const struct objagg_obj *obj,
0161          const struct objagg_obj *parent,
0162          unsigned int parent_refcount),
0163 
0164     TP_ARGS(objagg, obj, parent, parent_refcount),
0165 
0166     TP_STRUCT__entry(
0167         __field(const void *, objagg)
0168         __field(const void *, obj)
0169         __field(const void *, parent)
0170         __field(unsigned int, parent_refcount)
0171     ),
0172 
0173     TP_fast_assign(
0174         __entry->objagg = objagg;
0175         __entry->obj = obj;
0176         __entry->parent = parent;
0177         __entry->parent_refcount = parent_refcount;
0178     ),
0179 
0180     TP_printk("objagg %p, obj %p, parent %p, parent_refcount %u",
0181           __entry->objagg, __entry->obj,
0182           __entry->parent, __entry->parent_refcount)
0183 );
0184 
0185 TRACE_EVENT(objagg_obj_root_create,
0186     TP_PROTO(const struct objagg *objagg,
0187          const struct objagg_obj *obj),
0188 
0189     TP_ARGS(objagg, obj),
0190 
0191     TP_STRUCT__entry(
0192         __field(const void *, objagg)
0193         __field(const void *, obj)
0194     ),
0195 
0196     TP_fast_assign(
0197         __entry->objagg = objagg;
0198         __entry->obj = obj;
0199     ),
0200 
0201     TP_printk("objagg %p, obj %p",
0202           __entry->objagg, __entry->obj)
0203 );
0204 
0205 TRACE_EVENT(objagg_obj_root_destroy,
0206     TP_PROTO(const struct objagg *objagg,
0207          const struct objagg_obj *obj),
0208 
0209     TP_ARGS(objagg, obj),
0210 
0211     TP_STRUCT__entry(
0212         __field(const void *, objagg)
0213         __field(const void *, obj)
0214     ),
0215 
0216     TP_fast_assign(
0217         __entry->objagg = objagg;
0218         __entry->obj = obj;
0219     ),
0220 
0221     TP_printk("objagg %p, obj %p",
0222           __entry->objagg, __entry->obj)
0223 );
0224 
0225 #endif /* __TRACE_OBJAGG_H */
0226 
0227 /* This part must be outside protection */
0228 #include <trace/define_trace.h>