mirror of
https://github.com/szehl/ath9k-hmac.git
synced 2025-03-23 12:35:43 +00:00
107 lines
2.5 KiB
C
Executable File
107 lines
2.5 KiB
C
Executable File
#ifndef __BACKPORT_LINUX_PKT_SCHED_H
|
|
#define __BACKPORT_LINUX_PKT_SCHED_H
|
|
#include_next <linux/pkt_sched.h>
|
|
#include <linux/version.h>
|
|
|
|
/*
|
|
* This backports:
|
|
*
|
|
* From 76e3cc126bb223013a6b9a0e2a51238d1ef2e409 Mon Sep 17 00:00:00 2001
|
|
* From: Eric Dumazet <edumazet@google.com>
|
|
* Date: Thu, 10 May 2012 07:51:25 +0000
|
|
* Subject: [PATCH] codel: Controlled Delay AQM
|
|
*/
|
|
#ifndef TCA_CODEL_MAX
|
|
/* CODEL */
|
|
|
|
#define COMPAT_CODEL_BACKPORT
|
|
|
|
enum {
|
|
TCA_CODEL_UNSPEC,
|
|
TCA_CODEL_TARGET,
|
|
TCA_CODEL_LIMIT,
|
|
TCA_CODEL_INTERVAL,
|
|
TCA_CODEL_ECN,
|
|
__TCA_CODEL_MAX
|
|
};
|
|
|
|
#define TCA_CODEL_MAX (__TCA_CODEL_MAX - 1)
|
|
|
|
struct tc_codel_xstats {
|
|
__u32 maxpacket; /* largest packet we've seen so far */
|
|
__u32 count; /* how many drops we've done since the last time we
|
|
* entered dropping state
|
|
*/
|
|
__u32 lastcount; /* count at entry to dropping state */
|
|
__u32 ldelay; /* in-queue delay seen by most recently dequeued packet */
|
|
__s32 drop_next; /* time to drop next packet */
|
|
__u32 drop_overlimit; /* number of time max qdisc packet limit was hit */
|
|
__u32 ecn_mark; /* number of packets we ECN marked instead of dropped */
|
|
__u32 dropping; /* are we in dropping state ? */
|
|
};
|
|
|
|
/* This backports:
|
|
*
|
|
* commit 4b549a2ef4bef9965d97cbd992ba67930cd3e0fe
|
|
* Author: Eric Dumazet <edumazet@google.com>
|
|
* Date: Fri May 11 09:30:50 2012 +0000
|
|
* fq_codel: Fair Queue Codel AQM
|
|
*/
|
|
|
|
/* FQ_CODEL */
|
|
|
|
enum {
|
|
TCA_FQ_CODEL_UNSPEC,
|
|
TCA_FQ_CODEL_TARGET,
|
|
TCA_FQ_CODEL_LIMIT,
|
|
TCA_FQ_CODEL_INTERVAL,
|
|
TCA_FQ_CODEL_ECN,
|
|
TCA_FQ_CODEL_FLOWS,
|
|
TCA_FQ_CODEL_QUANTUM,
|
|
__TCA_FQ_CODEL_MAX
|
|
};
|
|
|
|
#define TCA_FQ_CODEL_MAX (__TCA_FQ_CODEL_MAX - 1)
|
|
|
|
enum {
|
|
TCA_FQ_CODEL_XSTATS_QDISC,
|
|
TCA_FQ_CODEL_XSTATS_CLASS,
|
|
};
|
|
|
|
struct tc_fq_codel_qd_stats {
|
|
__u32 maxpacket; /* largest packet we've seen so far */
|
|
__u32 drop_overlimit; /* number of time max qdisc
|
|
* packet limit was hit
|
|
*/
|
|
__u32 ecn_mark; /* number of packets we ECN marked
|
|
* instead of being dropped
|
|
*/
|
|
__u32 new_flow_count; /* number of time packets
|
|
* created a 'new flow'
|
|
*/
|
|
__u32 new_flows_len; /* count of flows in new list */
|
|
__u32 old_flows_len; /* count of flows in old list */
|
|
};
|
|
|
|
struct tc_fq_codel_cl_stats {
|
|
__s32 deficit;
|
|
__u32 ldelay; /* in-queue delay seen by most recently
|
|
* dequeued packet
|
|
*/
|
|
__u32 count;
|
|
__u32 lastcount;
|
|
__u32 dropping;
|
|
__s32 drop_next;
|
|
};
|
|
|
|
struct tc_fq_codel_xstats {
|
|
__u32 type;
|
|
union {
|
|
struct tc_fq_codel_qd_stats qdisc_stats;
|
|
struct tc_fq_codel_cl_stats class_stats;
|
|
};
|
|
};
|
|
#endif /* TCA_CODEL_MAX */
|
|
|
|
#endif /* __BACKPORT_LINUX_PKT_SCHED_H */
|