1#ifndef __LINUX_GEN_STATS_H
2#define __LINUX_GEN_STATS_H
3
4enum {
5	TCA_STATS_UNSPEC,
6	TCA_STATS_BASIC,
7	TCA_STATS_RATE_EST,
8	TCA_STATS_QUEUE,
9	TCA_STATS_APP,
10	__TCA_STATS_MAX,
11};
12#define TCA_STATS_MAX (__TCA_STATS_MAX - 1)
13
14/**
15 * @bytes: number of seen bytes
16 * @packets: number of seen packets
17 */
18struct gnet_stats_basic
19{
20	__u64	bytes;
21	__u32	packets;
22};
23
24/**
25 * @bps: current byte rate
26 * @pps: current packet rate
27 */
28struct gnet_stats_rate_est
29{
30	__u32	bps;
31	__u32	pps;
32};
33
34/**
35 * @qlen: queue length
36 * @backlog: backlog size of queue
37 * @drops: number of dropped packets
38 * @requeues: number of requeues
39 */
40struct gnet_stats_queue
41{
42	__u32	qlen;
43	__u32	backlog;
44	__u32	drops;
45	__u32	requeues;
46	__u32	overlimits;
47};
48
49/**
50 * @interval: sampling period
51 * @ewma_log: the log of measurement window weight
52 */
53struct gnet_estimator
54{
55	signed char	interval;
56	unsigned char	ewma_log;
57};
58
59
60#endif /* __LINUX_GEN_STATS_H */
61