summaryrefslogtreecommitdiff
path: root/src/network/tc/qdisc.c
diff options
context:
space:
mode:
authorYu Watanabe <watanabe.yu+github@gmail.com>2019-12-12 17:25:29 +0900
committerYu Watanabe <watanabe.yu+github@gmail.com>2019-12-12 23:36:48 +0900
commitac810b75c10392ead791e99f210f3113206a626c (patch)
treef26dd9d0efd4278108b2334bb4998f0a776b9a06 /src/network/tc/qdisc.c
parent3d85f19cedf1f7dcfc06df4b88b626e3305c0808 (diff)
downloadsystemd-ac810b75c10392ead791e99f210f3113206a626c.tar.gz
network: tc: support more attributes for FQ-CoDel
Diffstat (limited to 'src/network/tc/qdisc.c')
-rw-r--r--src/network/tc/qdisc.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/network/tc/qdisc.c b/src/network/tc/qdisc.c
index 118754a91c..55b8fc6381 100644
--- a/src/network/tc/qdisc.c
+++ b/src/network/tc/qdisc.c
@@ -23,6 +23,7 @@ const QDiscVTable * const qdisc_vtable[_QDISC_KIND_MAX] = {
static int qdisc_new(QDiscKind kind, QDisc **ret) {
QDisc *qdisc;
+ int r;
if (kind == _QDISC_KIND_INVALID) {
qdisc = new(QDisc, 1);
@@ -42,6 +43,12 @@ static int qdisc_new(QDiscKind kind, QDisc **ret) {
qdisc->family = AF_UNSPEC;
qdisc->parent = TC_H_ROOT;
qdisc->kind = kind;
+
+ if (QDISC_VTABLE(qdisc)->init) {
+ r = QDISC_VTABLE(qdisc)->init(qdisc);
+ if (r < 0)
+ return r;
+ }
}
*ret = TAKE_PTR(qdisc);