1 #ifndef __LINUX_GEN_STATS_H 2 #define __LINUX_GEN_STATS_H 3 4 enum { 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 */ 18 struct gnet_stats_basic 19 { 20 __u64 bytes; 21 __u32 packets; 22 }; 23 24 /** 25 * @bps: current byte rate 26 * @pps: current packet rate 27 */ 28 struct 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 */ 40 struct 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 */ 53 struct gnet_estimator 54 { 55 signed char interval; 56 unsigned char ewma_log; 57 }; 58 59 60 #endif /* __LINUX_GEN_STATS_H */ 61