Blame view

include/uapi/linux/gen_stats.h 1.48 KB
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
1
2
3
4
5
6
7
8
9
10
11
  #ifndef __LINUX_GEN_STATS_H
  #define __LINUX_GEN_STATS_H
  
  #include <linux/types.h>
  
  enum {
  	TCA_STATS_UNSPEC,
  	TCA_STATS_BASIC,
  	TCA_STATS_RATE_EST,
  	TCA_STATS_QUEUE,
  	TCA_STATS_APP,
45203a3b3   Eric Dumazet   net_sched: add 64...
12
  	TCA_STATS_RATE_EST64,
9854518ea   Nicolas Dichtel   sched: align nlat...
13
  	TCA_STATS_PAD,
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
14
15
16
17
18
19
20
21
22
  	__TCA_STATS_MAX,
  };
  #define TCA_STATS_MAX (__TCA_STATS_MAX - 1)
  
  /**
   * struct gnet_stats_basic - byte/packet throughput statistics
   * @bytes: number of seen bytes
   * @packets: number of seen packets
   */
d94d9fee9   Eric Dumazet   net: cleanup incl...
23
  struct gnet_stats_basic {
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
24
25
  	__u64	bytes;
  	__u32	packets;
c1a8f1f1c   Eric Dumazet   net: restore gnet...
26
  };
d94d9fee9   Eric Dumazet   net: cleanup incl...
27
  struct gnet_stats_basic_packed {
c1a8f1f1c   Eric Dumazet   net: restore gnet...
28
29
  	__u64	bytes;
  	__u32	packets;
5e140dfc1   Eric Dumazet   net: reorder stru...
30
  } __attribute__ ((packed));
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
31
32
33
34
35
36
  
  /**
   * struct gnet_stats_rate_est - rate estimator
   * @bps: current byte rate
   * @pps: current packet rate
   */
d94d9fee9   Eric Dumazet   net: cleanup incl...
37
  struct gnet_stats_rate_est {
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
38
39
40
41
42
  	__u32	bps;
  	__u32	pps;
  };
  
  /**
45203a3b3   Eric Dumazet   net_sched: add 64...
43
44
45
46
47
48
49
50
51
52
   * struct gnet_stats_rate_est64 - rate estimator
   * @bps: current byte rate
   * @pps: current packet rate
   */
  struct gnet_stats_rate_est64 {
  	__u64	bps;
  	__u64	pps;
  };
  
  /**
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
53
54
55
56
57
58
59
   * struct gnet_stats_queue - queuing statistics
   * @qlen: queue length
   * @backlog: backlog size of queue
   * @drops: number of dropped packets
   * @requeues: number of requeues
   * @overlimits: number of enqueues over the limit
   */
d94d9fee9   Eric Dumazet   net: cleanup incl...
60
  struct gnet_stats_queue {
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
61
62
63
64
65
66
67
68
69
70
71
72
  	__u32	qlen;
  	__u32	backlog;
  	__u32	drops;
  	__u32	requeues;
  	__u32	overlimits;
  };
  
  /**
   * struct gnet_estimator - rate estimator configuration
   * @interval: sampling period
   * @ewma_log: the log of measurement window weight
   */
d94d9fee9   Eric Dumazet   net: cleanup incl...
73
  struct gnet_estimator {
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
74
75
76
77
78
79
  	signed char	interval;
  	unsigned char	ewma_log;
  };
  
  
  #endif /* __LINUX_GEN_STATS_H */