net.h 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. #undef TRACE_SYSTEM
  2. #define TRACE_SYSTEM net
  3. #if !defined(_TRACE_NET_H) || defined(TRACE_HEADER_MULTI_READ)
  4. #define _TRACE_NET_H
  5. #include <linux/skbuff.h>
  6. #include <linux/netdevice.h>
  7. #include <linux/ip.h>
  8. #include <linux/tracepoint.h>
  9. TRACE_EVENT(net_dev_xmit,
  10. TP_PROTO(struct sk_buff *skb,
  11. int rc),
  12. TP_ARGS(skb, rc),
  13. TP_STRUCT__entry(
  14. __field( void *, skbaddr )
  15. __field( unsigned int, len )
  16. __field( int, rc )
  17. __string( name, skb->dev->name )
  18. ),
  19. TP_fast_assign(
  20. __entry->skbaddr = skb;
  21. __entry->len = skb->len;
  22. __entry->rc = rc;
  23. __assign_str(name, skb->dev->name);
  24. ),
  25. TP_printk("dev=%s skbaddr=%p len=%u rc=%d",
  26. __get_str(name), __entry->skbaddr, __entry->len, __entry->rc)
  27. );
  28. DECLARE_EVENT_CLASS(net_dev_template,
  29. TP_PROTO(struct sk_buff *skb),
  30. TP_ARGS(skb),
  31. TP_STRUCT__entry(
  32. __field( void *, skbaddr )
  33. __field( unsigned int, len )
  34. __string( name, skb->dev->name )
  35. ),
  36. TP_fast_assign(
  37. __entry->skbaddr = skb;
  38. __entry->len = skb->len;
  39. __assign_str(name, skb->dev->name);
  40. ),
  41. TP_printk("dev=%s skbaddr=%p len=%u",
  42. __get_str(name), __entry->skbaddr, __entry->len)
  43. )
  44. DEFINE_EVENT(net_dev_template, net_dev_queue,
  45. TP_PROTO(struct sk_buff *skb),
  46. TP_ARGS(skb)
  47. );
  48. DEFINE_EVENT(net_dev_template, netif_receive_skb,
  49. TP_PROTO(struct sk_buff *skb),
  50. TP_ARGS(skb)
  51. );
  52. DEFINE_EVENT(net_dev_template, netif_rx,
  53. TP_PROTO(struct sk_buff *skb),
  54. TP_ARGS(skb)
  55. );
  56. #endif /* _TRACE_NET_H */
  57. /* This part must be outside protection */
  58. #include <trace/define_trace.h>