|
@@ -383,6 +383,9 @@ static int tbf_change(struct Qdisc *sch, struct nlattr *opt,
|
|
|
err = PTR_ERR(child);
|
|
|
goto done;
|
|
|
}
|
|
|
+
|
|
|
+ /* child is fifo, no need to check for noop_qdisc */
|
|
|
+ qdisc_hash_add(child, true);
|
|
|
}
|
|
|
|
|
|
sch_tree_lock(sch);
|
|
@@ -391,8 +394,6 @@ static int tbf_change(struct Qdisc *sch, struct nlattr *opt,
|
|
|
q->qdisc->qstats.backlog);
|
|
|
qdisc_destroy(q->qdisc);
|
|
|
q->qdisc = child;
|
|
|
- if (child != &noop_qdisc)
|
|
|
- qdisc_hash_add(child, true);
|
|
|
}
|
|
|
q->limit = qopt->limit;
|
|
|
if (tb[TCA_TBF_PBURST])
|