50 lines
1.7 KiB
Diff
50 lines
1.7 KiB
Diff
|
|
From eb4206ecd0342ff92b1a85b7dae3d4fd1b5be1c6 Mon Sep 17 00:00:00 2001
|
||
|
|
From: Kevin Bracey <kevin@bracey.fi>
|
||
|
|
Date: Thu, 6 Jan 2022 13:16:04 +0200
|
||
|
|
Subject: [PATCH] q_cake: allow changing to diffserv3
|
||
|
|
MIME-Version: 1.0
|
||
|
|
Content-Type: text/plain; charset=UTF-8
|
||
|
|
Content-Transfer-Encoding: 8bit
|
||
|
|
|
||
|
|
A diffserv3 option (enum value 0) was never sent to the kernel, so it
|
||
|
|
was not possible to use "tc qdisc change" to select it.
|
||
|
|
|
||
|
|
This also meant that were also relying on the kernel's default being
|
||
|
|
diffserv3 when adding. If the default were to change, we wouldn't have
|
||
|
|
been able to request diffserv3 explicitly.
|
||
|
|
|
||
|
|
Signed-off-by: Kevin Bracey <kevin@bracey.fi>
|
||
|
|
Acked-by: Toke Høiland-Jørgensen <toke@toke.dk>
|
||
|
|
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
|
||
|
|
Conflict: NA
|
||
|
|
Reference: https://git.kernel.org/pub/scm/network/iproute2/iproute2.git/commit?id=eb4206ecd03
|
||
|
|
---
|
||
|
|
tc/q_cake.c | 4 ++--
|
||
|
|
1 file changed, 2 insertions(+), 2 deletions(-)
|
||
|
|
|
||
|
|
diff --git a/tc/q_cake.c b/tc/q_cake.c
|
||
|
|
index 4cfc1c00..c438b765 100644
|
||
|
|
--- a/tc/q_cake.c
|
||
|
|
+++ b/tc/q_cake.c
|
||
|
|
@@ -95,7 +95,7 @@ static int cake_parse_opt(struct qdisc_util *qu, int argc, char **argv,
|
||
|
|
bool overhead_override = false;
|
||
|
|
bool overhead_set = false;
|
||
|
|
unsigned int interval = 0;
|
||
|
|
- unsigned int diffserv = 0;
|
||
|
|
+ int diffserv = -1;
|
||
|
|
unsigned int memlimit = 0;
|
||
|
|
unsigned int fwmark = 0;
|
||
|
|
unsigned int target = 0;
|
||
|
|
@@ -356,7 +356,7 @@ static int cake_parse_opt(struct qdisc_util *qu, int argc, char **argv,
|
||
|
|
if (bandwidth || unlimited)
|
||
|
|
addattr_l(n, 1024, TCA_CAKE_BASE_RATE64, &bandwidth,
|
||
|
|
sizeof(bandwidth));
|
||
|
|
- if (diffserv)
|
||
|
|
+ if (diffserv != -1)
|
||
|
|
addattr_l(n, 1024, TCA_CAKE_DIFFSERV_MODE, &diffserv,
|
||
|
|
sizeof(diffserv));
|
||
|
|
if (atm != -1)
|
||
|
|
--
|
||
|
|
2.23.0
|
||
|
|
|