~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/include/trace/events/qdisc.h

Version: ~ [ linux-6.11.5 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.58 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.114 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.169 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.228 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.284 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.322 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.9 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 #undef TRACE_SYSTEM
  2 #define TRACE_SYSTEM qdisc
  3 
  4 #if !defined(_TRACE_QDISC_H) || defined(TRACE_HEADER_MULTI_READ)
  5 #define _TRACE_QDISC_H
  6 
  7 #include <linux/skbuff.h>
  8 #include <linux/netdevice.h>
  9 #include <linux/tracepoint.h>
 10 #include <linux/ftrace.h>
 11 #include <linux/pkt_sched.h>
 12 #include <net/sch_generic.h>
 13 
 14 TRACE_EVENT(qdisc_dequeue,
 15 
 16         TP_PROTO(struct Qdisc *qdisc, const struct netdev_queue *txq,
 17                  int packets, struct sk_buff *skb),
 18 
 19         TP_ARGS(qdisc, txq, packets, skb),
 20 
 21         TP_STRUCT__entry(
 22                 __field(        struct Qdisc *,         qdisc   )
 23                 __field(const   struct netdev_queue *,  txq     )
 24                 __field(        int,                    packets )
 25                 __field(        void *,                 skbaddr )
 26                 __field(        int,                    ifindex )
 27                 __field(        u32,                    handle  )
 28                 __field(        u32,                    parent  )
 29                 __field(        unsigned long,          txq_state)
 30         ),
 31 
 32         /* skb==NULL indicate packets dequeued was 0, even when packets==1 */
 33         TP_fast_assign(
 34                 __entry->qdisc          = qdisc;
 35                 __entry->txq            = txq;
 36                 __entry->packets        = skb ? packets : 0;
 37                 __entry->skbaddr        = skb;
 38                 __entry->ifindex        = txq->dev ? txq->dev->ifindex : 0;
 39                 __entry->handle         = qdisc->handle;
 40                 __entry->parent         = qdisc->parent;
 41                 __entry->txq_state      = txq->state;
 42         ),
 43 
 44         TP_printk("dequeue ifindex=%d qdisc handle=0x%X parent=0x%X txq_state=0x%lX packets=%d skbaddr=%p",
 45                   __entry->ifindex, __entry->handle, __entry->parent,
 46                   __entry->txq_state, __entry->packets, __entry->skbaddr )
 47 );
 48 
 49 TRACE_EVENT(qdisc_enqueue,
 50 
 51         TP_PROTO(struct Qdisc *qdisc, const struct netdev_queue *txq, struct sk_buff *skb),
 52 
 53         TP_ARGS(qdisc, txq, skb),
 54 
 55         TP_STRUCT__entry(
 56                 __field(struct Qdisc *, qdisc)
 57                 __field(const struct netdev_queue *, txq)
 58                 __field(void *, skbaddr)
 59                 __field(int, ifindex)
 60                 __field(u32, handle)
 61                 __field(u32, parent)
 62         ),
 63 
 64         TP_fast_assign(
 65                 __entry->qdisc = qdisc;
 66                 __entry->txq     = txq;
 67                 __entry->skbaddr = skb;
 68                 __entry->ifindex = txq->dev ? txq->dev->ifindex : 0;
 69                 __entry->handle  = qdisc->handle;
 70                 __entry->parent  = qdisc->parent;
 71         ),
 72 
 73         TP_printk("enqueue ifindex=%d qdisc handle=0x%X parent=0x%X skbaddr=%p",
 74                   __entry->ifindex, __entry->handle, __entry->parent, __entry->skbaddr)
 75 );
 76 
 77 TRACE_EVENT(qdisc_reset,
 78 
 79         TP_PROTO(struct Qdisc *q),
 80 
 81         TP_ARGS(q),
 82 
 83         TP_STRUCT__entry(
 84                 __string(       dev,            qdisc_dev(q) ? qdisc_dev(q)->name : "(null)"    )
 85                 __string(       kind,           q->ops->id              )
 86                 __field(        u32,            parent                  )
 87                 __field(        u32,            handle                  )
 88         ),
 89 
 90         TP_fast_assign(
 91                 __assign_str(dev);
 92                 __assign_str(kind);
 93                 __entry->parent = q->parent;
 94                 __entry->handle = q->handle;
 95         ),
 96 
 97         TP_printk("dev=%s kind=%s parent=%x:%x handle=%x:%x", __get_str(dev),
 98                   __get_str(kind), TC_H_MAJ(__entry->parent) >> 16, TC_H_MIN(__entry->parent),
 99                   TC_H_MAJ(__entry->handle) >> 16, TC_H_MIN(__entry->handle))
100 );
101 
102 TRACE_EVENT(qdisc_destroy,
103 
104         TP_PROTO(struct Qdisc *q),
105 
106         TP_ARGS(q),
107 
108         TP_STRUCT__entry(
109                 __string(       dev,            qdisc_dev(q)->name      )
110                 __string(       kind,           q->ops->id              )
111                 __field(        u32,            parent                  )
112                 __field(        u32,            handle                  )
113         ),
114 
115         TP_fast_assign(
116                 __assign_str(dev);
117                 __assign_str(kind);
118                 __entry->parent = q->parent;
119                 __entry->handle = q->handle;
120         ),
121 
122         TP_printk("dev=%s kind=%s parent=%x:%x handle=%x:%x", __get_str(dev),
123                   __get_str(kind), TC_H_MAJ(__entry->parent) >> 16, TC_H_MIN(__entry->parent),
124                   TC_H_MAJ(__entry->handle) >> 16, TC_H_MIN(__entry->handle))
125 );
126 
127 TRACE_EVENT(qdisc_create,
128 
129         TP_PROTO(const struct Qdisc_ops *ops, struct net_device *dev, u32 parent),
130 
131         TP_ARGS(ops, dev, parent),
132 
133         TP_STRUCT__entry(
134                 __string(       dev,            dev->name       )
135                 __string(       kind,           ops->id         )
136                 __field(        u32,            parent          )
137         ),
138 
139         TP_fast_assign(
140                 __assign_str(dev);
141                 __assign_str(kind);
142                 __entry->parent = parent;
143         ),
144 
145         TP_printk("dev=%s kind=%s parent=%x:%x",
146                   __get_str(dev), __get_str(kind),
147                   TC_H_MAJ(__entry->parent) >> 16, TC_H_MIN(__entry->parent))
148 );
149 
150 #endif /* _TRACE_QDISC_H */
151 
152 /* This part must be outside protection */
153 #include <trace/define_trace.h>
154 

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php