]> asedeno.scripts.mit.edu Git - linux.git/blobdiff - net/sched/sch_prio.c
Merge tag 'asoc-v5.6-3' of https://git.kernel.org/pub/scm/linux/kernel/git/broonie...
[linux.git] / net / sched / sch_prio.c
index 18b884cfdfe8de12223dfa3f8058b8c31726a885..647941702f9fcaa47242382c8489a8ee179064f4 100644 (file)
@@ -292,8 +292,14 @@ static int prio_graft(struct Qdisc *sch, unsigned long arg, struct Qdisc *new,
        struct tc_prio_qopt_offload graft_offload;
        unsigned long band = arg - 1;
 
-       if (new == NULL)
-               new = &noop_qdisc;
+       if (!new) {
+               new = qdisc_create_dflt(sch->dev_queue, &pfifo_qdisc_ops,
+                                       TC_H_MAKE(sch->handle, arg), extack);
+               if (!new)
+                       new = &noop_qdisc;
+               else
+                       qdisc_hash_add(new, true);
+       }
 
        *old = qdisc_replace(sch, new, &q->queues[band]);