summaryrefslogtreecommitdiff
path: root/net/sched/sch_dsmark.c
diff options
context:
space:
mode:
authorThomas Graf <tgraf@suug.ch>2005-06-01 02:16:52 +0400
committerDavid S. Miller <davem@davemloft.net>2005-06-01 02:16:52 +0400
commit486b53e59ca8cd07d91ad88375c1c884b15cc9bd (patch)
tree4130617e9bdef8fbaef12392584496223587bb50 /net/sched/sch_dsmark.c
parent0451eb074eef30240c6c06dacf2911bee26831e1 (diff)
downloadlinux-486b53e59ca8cd07d91ad88375c1c884b15cc9bd.tar.xz
[PKT_SCHED]: make dsmark try using pfifo instead of noop while grafting
Signed-off-by: Thomas Graf <tgraf@suug.ch> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/sched/sch_dsmark.c')
-rw-r--r--net/sched/sch_dsmark.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/net/sched/sch_dsmark.c b/net/sched/sch_dsmark.c
index acbe9d2b3e15..a8c948f62978 100644
--- a/net/sched/sch_dsmark.c
+++ b/net/sched/sch_dsmark.c
@@ -73,8 +73,13 @@ static int dsmark_graft(struct Qdisc *sch,unsigned long arg,
DPRINTK("dsmark_graft(sch %p,[qdisc %p],new %p,old %p)\n",sch,p,new,
old);
- if (!new)
- new = &noop_qdisc;
+
+ if (new == NULL) {
+ new = qdisc_create_dflt(sch->dev, &pfifo_qdisc_ops);
+ if (new == NULL)
+ new = &noop_qdisc;
+ }
+
sch_tree_lock(sch);
*old = xchg(&p->q,new);
if (*old)