1 /* SPDX-License-Identifier: LGPL-2.1-or-later
2  * Copyright © 2019 VMware, Inc. */
3 #pragma once
4 
5 #include "conf-parser.h"
6 #include "qdisc.h"
7 #include "time-util.h"
8 
9 typedef struct FairQueueingControlledDelay {
10         QDisc meta;
11 
12         uint32_t packet_limit;
13         uint32_t flows;
14         uint32_t quantum;
15         uint32_t memory_limit;
16         usec_t target_usec;
17         usec_t interval_usec;
18         usec_t ce_threshold_usec;
19         int ecn;
20 } FairQueueingControlledDelay;
21 
22 DEFINE_QDISC_CAST(FQ_CODEL, FairQueueingControlledDelay);
23 extern const QDiscVTable fq_codel_vtable;
24 
25 CONFIG_PARSER_PROTOTYPE(config_parse_fair_queueing_controlled_delay_u32);
26 CONFIG_PARSER_PROTOTYPE(config_parse_fair_queueing_controlled_delay_usec);
27 CONFIG_PARSER_PROTOTYPE(config_parse_fair_queueing_controlled_delay_bool);
28 CONFIG_PARSER_PROTOTYPE(config_parse_fair_queueing_controlled_delay_size);
29