@@ -56,6 +56,41 @@ definitions:
- tundf
- tunoam
- tuncrit
+ -
+ name: dualpi2-drop-overload
+ name-prefix: tca-dualpi2-drop-overload-
+ type: enum
+ entries:
+ - overflow
+ - drop
+ -
+ name: dualpi2-drop-early
+ name-prefix: tca-dualpi2-drop-early-
+ type: enum
+ entries:
+ - drop-dequeue
+ - drop-enqueue
+ -
+ name: dualpi2-ecn-mask
+ name-prefix: tca-dualpi2-ecn-mask-
+ type: enum
+ entries:
+ -
+ name: l4s-ect
+ value: 1
+ -
+ name: cla-ect
+ value: 2
+ -
+ name: any-ect
+ value: 3
+ -
+ name: dualpi2-split-gso
+ name-prefix: tca-dualpi2-split-gso-
+ type: enum
+ entries:
+ - no-split-gso
+ - split-gso
-
name: tc-stats
type: struct
@@ -825,6 +860,58 @@ definitions:
-
name: drop-overmemory
type: u32
+ -
+ name: tc-dualpi2-xstats
+ type: struct
+ members:
+ -
+ name: prob
+ type: u32
+ doc: Current probability
+ -
+ name: delay-c
+ type: u32
+ doc: Current C-queue delay in microseconds
+ -
+ name: delay-l
+ type: u32
+ doc: Current L-queue delay in microseconds
+ -
+ name: pkts-in-c
+ type: u32
+ doc: Number of packets enqueued in the C-queue
+ -
+ name: pkts-in-l
+ type: u32
+ doc: Number of packets enqueued in the L-queue
+ -
+ name: maxq
+ type: u32
+ doc: Maximum number of packets seen by the DualPI2
+ -
+ name: ecn-mark
+ type: u32
+ doc: All packets marked with ecn
+ -
+ name: step-mark
+ type: u32
+ doc: Only packets marked with ecn due to L-queue step AQM
+ -
+ name: credit
+ type: s32
+ doc: Current credit value for WRR
+ -
+ name: memory-used
+ type: u32
+ doc: Memory used in bytes by the DualPI2
+ -
+ name: max-memory-used
+ type: u32
+ doc: Maximum memory used in bytes by the DualPI2
+ -
+ name: memory-limit
+ type: u32
+ doc: Memory limit in bytes
-
name: tc-fq-pie-xstats
type: struct
@@ -2284,6 +2371,79 @@ attribute-sets:
-
name: quantum
type: u32
+ -
+ name: tc-dualpi2-attrs
+ name-prefix: tca-dualpi2-
+ attributes:
+ -
+ name: limit
+ type: u32
+ doc: Limit of total number of packets in queue
+ -
+ name: memory-limit
+ type: u32
+ doc: Memory limit of total number of packets in queue
+ -
+ name: target
+ type: u32
+ doc: Classic target delay in microseconds
+ -
+ name: tupdate
+ type: u32
+ doc: Drop probability update interval time in microseconds
+ -
+ name: alpha
+ type: u32
+ doc: Integral gain factor in Hz for PI controller
+ -
+ name: beta
+ type: u32
+ doc: Proportional gain factor in Hz for PI controller
+ -
+ name: step-thresh
+ type: u32
+ doc: L4S step marking threshold (see also step-packets)
+ -
+ name: step-packets
+ type: flag
+ doc: L4S Step marking threshold unit in packets
+ (otherwise is in microseconds)
+ -
+ name: min-qlen-step
+ type: u32
+ doc: Packets enqueued to the L-queue can apply the step threshold
+ when the queue length of L-queue is larger than this value.
+ (0 is recommended)
+ -
+ name: coupling
+ type: u8
+ doc: Probability coupling factor between Classic and L4S
+ (2 is recommended)
+ -
+ name: drop-overload
+ type: u8
+ doc: Control the overload strategy (drop to preserve latency or
+ let the queue overflow)
+ enum: dualpi2-drop-overload
+ -
+ name: drop-early
+ type: u8
+ doc: Decide where the Classic packets are PI-based dropped or marked
+ enum: dualpi2-drop-early
+ -
+ name: c-protection
+ type: u8
+ doc: Classic WRR weight in percentage (from 0 to 100)
+ -
+ name: ecn-mask
+ type: u8
+ doc: Configure the L-queue ECN classifier
+ enum: dualpi2-ecn-mask
+ -
+ name: split-gso
+ type: u8
+ doc: Split aggregated skb or not
+ enum: dualpi2-split-gso
-
name: ematch-attrs
name-prefix: tca-ematch-
@@ -3708,6 +3868,9 @@ sub-messages:
-
value: drr
attribute-set: drr-attrs
+ -
+ value: dualpi2
+ attribute-set: tc-dualpi2-attrs
-
value: etf
attribute-set: etf-attrs
@@ -3875,6 +4038,9 @@ sub-messages:
-
value: codel
fixed-header: tc-codel-xstats
+ -
+ value: dualpi2
+ fixed-header: tc-dualpi2-xstats
-
value: fq
fixed-header: tc-fq-qd-stats