Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 2267
b: refs/heads/master
c: 821d24a
h: refs/heads/master
i:
  2265: ca293ea
  2263: fd685f9
v: v3
  • Loading branch information
Thomas Graf authored and David S. Miller committed Jun 19, 2005
1 parent 37474e1 commit 3b12bfb
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 15 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 6fc8e84f4cf8d623f98aebfd6996dc3848bcf964
refs/heads/master: 821d24ae741f83ef0754a98b4b8aef7231856543
23 changes: 9 additions & 14 deletions trunk/net/sched/sch_generic.c
Original file line number Diff line number Diff line change
Expand Up @@ -318,27 +318,22 @@ pfifo_fast_enqueue(struct sk_buff *skb, struct Qdisc* qdisc)

list += prio2band[skb->priority&TC_PRIO_MAX];

if (list->qlen < qdisc->dev->tx_queue_len) {
__skb_queue_tail(list, skb);
if (skb_queue_len(list) < qdisc->dev->tx_queue_len) {
qdisc->q.qlen++;
qdisc->bstats.bytes += skb->len;
qdisc->bstats.packets++;
return 0;
return __qdisc_enqueue_tail(skb, qdisc, list);
}
qdisc->qstats.drops++;
kfree_skb(skb);
return NET_XMIT_DROP;

return qdisc_drop(skb, qdisc);
}

static struct sk_buff *
pfifo_fast_dequeue(struct Qdisc* qdisc)
{
int prio;
struct sk_buff_head *list = qdisc_priv(qdisc);
struct sk_buff *skb;

for (prio = 0; prio < 3; prio++, list++) {
skb = __skb_dequeue(list);
struct sk_buff *skb = __qdisc_dequeue_head(qdisc, list);
if (skb) {
qdisc->q.qlen--;
return skb;
Expand All @@ -354,10 +349,8 @@ pfifo_fast_requeue(struct sk_buff *skb, struct Qdisc* qdisc)

list += prio2band[skb->priority&TC_PRIO_MAX];

__skb_queue_head(list, skb);
qdisc->q.qlen++;
qdisc->qstats.requeues++;
return 0;
return __qdisc_requeue(skb, qdisc, list);
}

static void
Expand All @@ -367,7 +360,9 @@ pfifo_fast_reset(struct Qdisc* qdisc)
struct sk_buff_head *list = qdisc_priv(qdisc);

for (prio=0; prio < 3; prio++)
skb_queue_purge(list+prio);
__qdisc_reset_queue(qdisc, list + prio);

qdisc->qstats.backlog = 0;
qdisc->q.qlen = 0;
}

Expand Down

0 comments on commit 3b12bfb

Please sign in to comment.