|
@@ -1121,8 +1121,7 @@ static int htb_graft(struct Qdisc *sch, unsigned long arg, struct Qdisc *new,
|
|
|
if (cl->level)
|
|
|
return -EINVAL;
|
|
|
if (new == NULL &&
|
|
|
- (new = qdisc_create_dflt(qdisc_dev(sch), sch->dev_queue,
|
|
|
- &pfifo_qdisc_ops,
|
|
|
+ (new = qdisc_create_dflt(sch->dev_queue, &pfifo_qdisc_ops,
|
|
|
cl->common.classid)) == NULL)
|
|
|
return -ENOBUFS;
|
|
|
|
|
@@ -1247,8 +1246,7 @@ static int htb_delete(struct Qdisc *sch, unsigned long arg)
|
|
|
return -EBUSY;
|
|
|
|
|
|
if (!cl->level && htb_parent_last_child(cl)) {
|
|
|
- new_q = qdisc_create_dflt(qdisc_dev(sch), sch->dev_queue,
|
|
|
- &pfifo_qdisc_ops,
|
|
|
+ new_q = qdisc_create_dflt(sch->dev_queue, &pfifo_qdisc_ops,
|
|
|
cl->parent->common.classid);
|
|
|
last_child = 1;
|
|
|
}
|
|
@@ -1377,7 +1375,7 @@ static int htb_change_class(struct Qdisc *sch, u32 classid,
|
|
|
/* create leaf qdisc early because it uses kmalloc(GFP_KERNEL)
|
|
|
so that can't be used inside of sch_tree_lock
|
|
|
-- thanks to Karlis Peisenieks */
|
|
|
- new_q = qdisc_create_dflt(qdisc_dev(sch), sch->dev_queue,
|
|
|
+ new_q = qdisc_create_dflt(sch->dev_queue,
|
|
|
&pfifo_qdisc_ops, classid);
|
|
|
sch_tree_lock(sch);
|
|
|
if (parent && !parent->level) {
|